Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm: Move client code to clients/ subdirectory

Just move some files around to keep source code well organized. Plus
fix a type in the help text of CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM. No
functional changes.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241108154600.126162-2-tzimmermann@suse.de

+80 -79
+1 -71
drivers/gpu/drm/Kconfig
··· 217 217 option. Drivers that support the default clients should 218 218 select DRM_CLIENT_SELECTION instead. 219 219 220 - config DRM_CLIENT_LIB 221 - tristate 222 - depends on DRM 223 - select DRM_KMS_HELPER if DRM_FBDEV_EMULATION 224 - select FB_CORE if DRM_FBDEV_EMULATION 225 - help 226 - This option enables the DRM client library and selects all 227 - modules and components according to the enabled clients. 228 - 229 - config DRM_CLIENT_SELECTION 230 - tristate 231 - depends on DRM 232 - select DRM_CLIENT_LIB if DRM_FBDEV_EMULATION 233 - help 234 - Drivers that support in-kernel DRM clients have to select this 235 - option. 236 - 237 - config DRM_CLIENT_SETUP 238 - bool 239 - depends on DRM_CLIENT_SELECTION 240 - help 241 - Enables the DRM client selection. DRM drivers that support the 242 - default clients should select DRM_CLIENT_SELECTION instead. 243 - 244 - menu "Supported DRM clients" 245 - depends on DRM_CLIENT_SELECTION 246 - 247 - config DRM_FBDEV_EMULATION 248 - bool "Enable legacy fbdev support for your modesetting driver" 249 - depends on DRM_CLIENT_SELECTION 250 - select DRM_CLIENT 251 - select DRM_CLIENT_SETUP 252 - select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 253 - default FB 254 - help 255 - Choose this option if you have a need for the legacy fbdev 256 - support. Note that this support also provides the linux console 257 - support on top of your modesetting driver. 258 - 259 - If in doubt, say "Y". 260 - 261 - config DRM_FBDEV_OVERALLOC 262 - int "Overallocation of the fbdev buffer" 263 - depends on DRM_FBDEV_EMULATION 264 - default 100 265 - help 266 - Defines the fbdev buffer overallocation in percent. Default 267 - is 100. Typical values for double buffering will be 200, 268 - triple buffering 300. 269 - 270 - config DRM_FBDEV_LEAK_PHYS_SMEM 271 - bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)" 272 - depends on DRM_FBDEV_EMULATION && EXPERT 273 - default n 274 - help 275 - In order to keep user-space compatibility, we want in certain 276 - use-cases to keep leaking the fbdev physical address to the 277 - user-space program handling the fbdev buffer. 278 - This affects, not only, Amlogic, Allwinner or Rockchip devices 279 - with ARM Mali GPUs using an userspace Blob. 280 - This option is not supported by upstream developers and should be 281 - removed as soon as possible and be considered as a broken and 282 - legacy behaviour from a modern fbdev device driver. 283 - 284 - Please send any bug reports when using this to your proprietary 285 - software vendor that requires this. 286 - 287 - If in doubt, say "N" or spread the word to your closed source 288 - library vendor. 289 - 290 - endmenu 220 + source "drivers/gpu/drm/clients/Kconfig" 291 221 292 222 config DRM_LOAD_EDID_FIRMWARE 293 223 bool "Allow to specify an EDID data set instead of probing for it"
+1 -8
drivers/gpu/drm/Makefile
··· 149 149 obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o 150 150 151 151 # 152 - # DRM clients 153 - # 154 - 155 - drm_client_lib-y := drm_client_setup.o 156 - drm_client_lib-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_client.o 157 - obj-$(CONFIG_DRM_CLIENT_LIB) += drm_client_lib.o 158 - 159 - # 160 152 # Drivers and the rest 161 153 # 162 154 ··· 157 165 obj-$(CONFIG_DRM_MIPI_DBI) += drm_mipi_dbi.o 158 166 obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o 159 167 obj-y += arm/ 168 + obj-y += clients/ 160 169 obj-y += display/ 161 170 obj-$(CONFIG_DRM_TTM) += ttm/ 162 171 obj-$(CONFIG_DRM_SCHED) += scheduler/
+73
drivers/gpu/drm/clients/Kconfig
··· 1 + # SPDX-License-Identifier: GPL-2.0-only 2 + 3 + config DRM_CLIENT_LIB 4 + tristate 5 + depends on DRM 6 + select DRM_KMS_HELPER if DRM_FBDEV_EMULATION 7 + select FB_CORE if DRM_FBDEV_EMULATION 8 + help 9 + This option enables the DRM client library and selects all 10 + modules and components according to the enabled clients. 11 + 12 + config DRM_CLIENT_SELECTION 13 + tristate 14 + depends on DRM 15 + select DRM_CLIENT_LIB if DRM_FBDEV_EMULATION 16 + help 17 + Drivers that support in-kernel DRM clients have to select this 18 + option. 19 + 20 + config DRM_CLIENT_SETUP 21 + bool 22 + depends on DRM_CLIENT_SELECTION 23 + help 24 + Enables the DRM client selection. DRM drivers that support the 25 + default clients should select DRM_CLIENT_SELECTION instead. 26 + 27 + menu "Supported DRM clients" 28 + depends on DRM_CLIENT_SELECTION 29 + 30 + config DRM_FBDEV_EMULATION 31 + bool "Enable legacy fbdev support for your modesetting driver" 32 + depends on DRM_CLIENT_SELECTION 33 + select DRM_CLIENT 34 + select DRM_CLIENT_SETUP 35 + select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 36 + default FB 37 + help 38 + Choose this option if you have a need for the legacy fbdev 39 + support. Note that this support also provides the linux console 40 + support on top of your modesetting driver. 41 + 42 + If in doubt, say "Y". 43 + 44 + config DRM_FBDEV_OVERALLOC 45 + int "Overallocation of the fbdev buffer" 46 + depends on DRM_FBDEV_EMULATION 47 + default 100 48 + help 49 + Defines the fbdev buffer overallocation in percent. Default 50 + is 100. Typical values for double buffering will be 200, 51 + triple buffering 300. 52 + 53 + config DRM_FBDEV_LEAK_PHYS_SMEM 54 + bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)" 55 + depends on DRM_FBDEV_EMULATION && EXPERT 56 + default n 57 + help 58 + In order to keep user-space compatibility, we want in certain 59 + use-cases to keep leaking the fbdev physical address to the 60 + user-space program handling the fbdev buffer. 61 + This affects, not only, Amlogic, Allwinner or Rockchip devices 62 + with ARM Mali GPUs using a userspace Blob. 63 + This option is not supported by upstream developers and should be 64 + removed as soon as possible and be considered as a broken and 65 + legacy behaviour from a modern fbdev device driver. 66 + 67 + Please send any bug reports when using this to your proprietary 68 + software vendor that requires this. 69 + 70 + If in doubt, say "N" or spread the word to your closed source 71 + library vendor. 72 + 73 + endmenu
+5
drivers/gpu/drm/clients/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + drm_client_lib-y := drm_client_setup.o 4 + drm_client_lib-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_client.o 5 + obj-$(CONFIG_DRM_CLIENT_LIB) += drm_client_lib.o
drivers/gpu/drm/drm_client_setup.c drivers/gpu/drm/clients/drm_client_setup.c
drivers/gpu/drm/drm_fbdev_client.c drivers/gpu/drm/clients/drm_fbdev_client.c