Commit 1e0f6642 authored by Thomas Zimmermann's avatar Thomas Zimmermann
Browse files

drm/display: Introduce a DRM display-helper module



Replace the DP-helper module with a display-helper module. The
support for DisplayPort becomes an internal option that drivers
have to select. Update all related Kconfig and Makefile rules.

Besides the existing code for DisplayPort, the new module will
contain helpers for other video-output standards, such as HDMI.
Drivers will have to select their required video-output helpers.

Linking all display-related code into a single module avoids the
proliferation of small kernel modules.

The module parameters drm_dp_cec_unregister_delay, dp_aux_i2c_speed_khz,
and dp_aux_i2c_transfer_size are moving from the drm_dp_helper namespace
to drm_display_helper.

v2:
	* mention module parameters in commit message (Javier)
	* distiguish between display module and DP support in Kconfig
	* update Makefile rules for DP helpers
	* move Kconfig rules into separate file under display/

Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: default avatarLyude Paul <lyude@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220421073108.19226-4-tzimmermann@suse.de
parent da68386d
Loading
Loading
Loading
Loading
+7 −32
Original line number Diff line number Diff line
@@ -36,19 +36,6 @@ config DRM_MIPI_DSI
	bool
	depends on DRM

config DRM_DP_AUX_BUS
	tristate
	depends on DRM
	depends on OF

config DRM_DP_AUX_CHARDEV
	bool "DRM DP AUX Interface"
	depends on DRM
	help
	  Choose this option to enable a /dev/drm_dp_auxN node that allows to
	  read and write values to arbitrary DPCD registers on the DP aux
	  channel.

config DRM_DEBUG_MM
	bool "Insert extra checks and debug info into the DRM range managers"
	default n
@@ -68,7 +55,8 @@ config DRM_DEBUG_SELFTEST
	depends on DRM
	depends on DEBUG_KERNEL
	select PRIME_NUMBERS
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_LIB_RANDOM
	select DRM_KMS_HELPER
	select DRM_BUDDY
@@ -82,12 +70,6 @@ config DRM_DEBUG_SELFTEST

	  If in doubt, say "N".

config DRM_DP_HELPER
	tristate
	depends on DRM
	help
	  DRM helpers for DisplayPort.

config DRM_KMS_HELPER
	tristate
	depends on DRM
@@ -187,16 +169,7 @@ config DRM_LOAD_EDID_FIRMWARE
	  default case is N. Details and instructions how to build your own
	  EDID data are given in Documentation/admin-guide/edid.rst.

config DRM_DP_CEC
	bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
	depends on DRM
	select CEC_CORE
	help
	  Choose this option if you want to enable HDMI CEC support for
	  DisplayPort/USB-C to HDMI adapters.

	  Note: not all adapters support this feature, and even for those
	  that do support this they often do not hook up the CEC pin.
source "drivers/gpu/drm/display/Kconfig"

config DRM_TTM
	tristate
@@ -250,7 +223,8 @@ config DRM_RADEON
	depends on DRM && PCI && MMU
	depends on AGP || !AGP
	select FW_LOADER
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_TTM
	select DRM_TTM_HELPER
@@ -271,7 +245,8 @@ config DRM_AMDGPU
	tristate "AMD GPU"
	depends on DRM && PCI && MMU
	select FW_LOADER
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select DRM_SCHED
	select DRM_TTM
+10 −5
Original line number Diff line number Diff line
@@ -78,8 +78,9 @@ config DRM_DISPLAY_CONNECTOR
config DRM_ITE_IT6505
        tristate "ITE IT6505 DisplayPort bridge"
        depends on OF
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
        select DRM_DP_AUX_BUS
	select DRM_DP_HELPER
        select DRM_KMS_HELPER
        select EXTCON
        help
@@ -206,8 +207,9 @@ config DRM_PARADE_PS8622
config DRM_PARADE_PS8640
	tristate "Parade PS8640 MIPI DSI to eDP Converter"
	depends on OF
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_DP_AUX_BUS
	select DRM_DP_HELPER
	select DRM_KMS_HELPER
	select DRM_MIPI_DSI
	select DRM_PANEL
@@ -278,7 +280,8 @@ config DRM_TOSHIBA_TC358764
config DRM_TOSHIBA_TC358767
	tristate "Toshiba TC358767 eDP bridge"
	depends on OF
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select REGMAP_I2C
	select DRM_MIPI_DSI
@@ -299,7 +302,8 @@ config DRM_TOSHIBA_TC358768
config DRM_TOSHIBA_TC358775
	tristate "Toshiba TC358775 DSI/LVDS bridge"
	depends on OF
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select REGMAP_I2C
	select DRM_PANEL
@@ -327,7 +331,8 @@ config DRM_TI_SN65DSI83
config DRM_TI_SN65DSI86
	tristate "TI SN65DSI86 DSI to eDP bridge"
	depends on OF
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select REGMAP_I2C
	select DRM_PANEL
+6 −3
Original line number Diff line number Diff line
@@ -3,7 +3,8 @@ config DRM_ANALOGIX_ANX6345
	tristate "Analogix ANX6345 bridge"
	depends on OF
	select DRM_ANALOGIX_DP
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select REGMAP_I2C
	help
@@ -15,7 +16,8 @@ config DRM_ANALOGIX_ANX6345
config DRM_ANALOGIX_ANX78XX
	tristate "Analogix ANX78XX bridge"
	select DRM_ANALOGIX_DP
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select REGMAP_I2C
	help
@@ -32,8 +34,9 @@ config DRM_ANALOGIX_ANX7625
	tristate "Analogix Anx7625 MIPI to DP interface support"
	depends on DRM
	depends on OF
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_DP_AUX_BUS
	select DRM_DP_HELPER
	select DRM_MIPI_DSI
	help
	  ANX7625 is an ultra-low power 4K mobile HD transmitter
+2 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
config DRM_CDNS_MHDP8546
	tristate "Cadence DPI/DP bridge"
	select DRM_DP_HELPER
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_KMS_HELPER
	select DRM_PANEL_BRIDGE
	depends on OF
+37 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: MIT

config DRM_DP_AUX_BUS
	tristate
	depends on DRM
	depends on OF

config DRM_DISPLAY_HELPER
	tristate
	depends on DRM
	help
	  DRM helpers for display adapters.

config DRM_DISPLAY_DP_HELPER
	bool
	depends on DRM_DISPLAY_HELPER
	help
	  DRM display helpers for DisplayPort.

config DRM_DP_AUX_CHARDEV
	bool "DRM DP AUX Interface"
	depends on DRM
	help
	  Choose this option to enable a /dev/drm_dp_auxN node that allows to
	  read and write values to arbitrary DPCD registers on the DP aux
	  channel.

config DRM_DP_CEC
	bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
	depends on DRM
	select CEC_CORE
	help
	  Choose this option if you want to enable HDMI CEC support for
	  DisplayPort/USB-C to HDMI adapters.

	  Note: not all adapters support this feature, and even for those
	  that do support this they often do not hook up the CEC pin.
Loading