Commit a49e7e81 authored by Thomas Zimmermann's avatar Thomas Zimmermann
Browse files

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: default avatarThomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: default avatarJocelyn Falempe <jfalempe@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241108154600.126162-2-tzimmermann@suse.de
parent ae4a812a
Loading
Loading
Loading
Loading
+1 −71
Original line number Diff line number Diff line
@@ -217,77 +217,7 @@ config DRM_CLIENT
	  option. Drivers that support the default clients should
	  select DRM_CLIENT_SELECTION instead.

config DRM_CLIENT_LIB
	tristate
	depends on DRM
	select DRM_KMS_HELPER if DRM_FBDEV_EMULATION
	select FB_CORE if DRM_FBDEV_EMULATION
	help
	  This option enables the DRM client library and selects all
	  modules and components according to the enabled clients.

config DRM_CLIENT_SELECTION
	tristate
	depends on DRM
	select DRM_CLIENT_LIB if DRM_FBDEV_EMULATION
	help
	  Drivers that support in-kernel DRM clients have to select this
	  option.

config DRM_CLIENT_SETUP
	bool
	depends on DRM_CLIENT_SELECTION
	help
	  Enables the DRM client selection. DRM drivers that support the
	  default clients should select DRM_CLIENT_SELECTION instead.

menu "Supported DRM clients"
	depends on DRM_CLIENT_SELECTION

config DRM_FBDEV_EMULATION
	bool "Enable legacy fbdev support for your modesetting driver"
	depends on DRM_CLIENT_SELECTION
	select DRM_CLIENT
	select DRM_CLIENT_SETUP
	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
	default FB
	help
	  Choose this option if you have a need for the legacy fbdev
	  support. Note that this support also provides the linux console
	  support on top of your modesetting driver.

	  If in doubt, say "Y".

config DRM_FBDEV_OVERALLOC
	int "Overallocation of the fbdev buffer"
	depends on DRM_FBDEV_EMULATION
	default 100
	help
	  Defines the fbdev buffer overallocation in percent. Default
	  is 100. Typical values for double buffering will be 200,
	  triple buffering 300.

config DRM_FBDEV_LEAK_PHYS_SMEM
	bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)"
	depends on DRM_FBDEV_EMULATION && EXPERT
	default n
	help
	  In order to keep user-space compatibility, we want in certain
	  use-cases to keep leaking the fbdev physical address to the
	  user-space program handling the fbdev buffer.
	  This affects, not only, Amlogic, Allwinner or Rockchip devices
	  with ARM Mali GPUs using an userspace Blob.
	  This option is not supported by upstream developers and should be
	  removed as soon as possible and be considered as a broken and
	  legacy behaviour from a modern fbdev device driver.

	  Please send any bug reports when using this to your proprietary
	  software vendor that requires this.

	  If in doubt, say "N" or spread the word to your closed source
	  library vendor.

endmenu
source "drivers/gpu/drm/clients/Kconfig"

config DRM_LOAD_EDID_FIRMWARE
	bool "Allow to specify an EDID data set instead of probing for it"
+1 −8
Original line number Diff line number Diff line
@@ -148,14 +148,6 @@ drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o
drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o

#
# DRM clients
#

drm_client_lib-y := drm_client_setup.o
drm_client_lib-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_client.o
obj-$(CONFIG_DRM_CLIENT_LIB) += drm_client_lib.o

#
# Drivers and the rest
#
@@ -165,6 +157,7 @@ obj-y += tests/
obj-$(CONFIG_DRM_MIPI_DBI) += drm_mipi_dbi.o
obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
obj-y			+= arm/
obj-y			+= clients/
obj-y			+= display/
obj-$(CONFIG_DRM_TTM)	+= ttm/
obj-$(CONFIG_DRM_SCHED)	+= scheduler/
+73 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only

config DRM_CLIENT_LIB
	tristate
	depends on DRM
	select DRM_KMS_HELPER if DRM_FBDEV_EMULATION
	select FB_CORE if DRM_FBDEV_EMULATION
	help
	  This option enables the DRM client library and selects all
	  modules and components according to the enabled clients.

config DRM_CLIENT_SELECTION
	tristate
	depends on DRM
	select DRM_CLIENT_LIB if DRM_FBDEV_EMULATION
	help
	  Drivers that support in-kernel DRM clients have to select this
	  option.

config DRM_CLIENT_SETUP
	bool
	depends on DRM_CLIENT_SELECTION
	help
	  Enables the DRM client selection. DRM drivers that support the
	  default clients should select DRM_CLIENT_SELECTION instead.

menu "Supported DRM clients"
	depends on DRM_CLIENT_SELECTION

config DRM_FBDEV_EMULATION
	bool "Enable legacy fbdev support for your modesetting driver"
	depends on DRM_CLIENT_SELECTION
	select DRM_CLIENT
	select DRM_CLIENT_SETUP
	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
	default FB
	help
	  Choose this option if you have a need for the legacy fbdev
	  support. Note that this support also provides the linux console
	  support on top of your modesetting driver.

	  If in doubt, say "Y".

config DRM_FBDEV_OVERALLOC
	int "Overallocation of the fbdev buffer"
	depends on DRM_FBDEV_EMULATION
	default 100
	help
	  Defines the fbdev buffer overallocation in percent. Default
	  is 100. Typical values for double buffering will be 200,
	  triple buffering 300.

config DRM_FBDEV_LEAK_PHYS_SMEM
	bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)"
	depends on DRM_FBDEV_EMULATION && EXPERT
	default n
	help
	  In order to keep user-space compatibility, we want in certain
	  use-cases to keep leaking the fbdev physical address to the
	  user-space program handling the fbdev buffer.
	  This affects, not only, Amlogic, Allwinner or Rockchip devices
	  with ARM Mali GPUs using a userspace Blob.
	  This option is not supported by upstream developers and should be
	  removed as soon as possible and be considered as a broken and
	  legacy behaviour from a modern fbdev device driver.

	  Please send any bug reports when using this to your proprietary
	  software vendor that requires this.

	  If in doubt, say "N" or spread the word to your closed source
	  library vendor.

endmenu
+5 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0

drm_client_lib-y := drm_client_setup.o
drm_client_lib-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_client.o
obj-$(CONFIG_DRM_CLIENT_LIB) += drm_client_lib.o
Loading