Re: [PATCH v5] drm/display: split DSC helpers from DP helpers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Am 23.06.24 um 00:44 schrieb Dmitry Baryshkov:
Currently the DRM DSC functions are selected by the
DRM_DISPLAY_DP_HELPER Kconfig symbol. This is not optimal, since the DSI
code (both panel and host drivers) end up selecting the seemingly
irrelevant DP helpers. Split the DSC code to be guarded by the separate
DRM_DISPLAY_DSC_HELPER Kconfig symbol.

Reviewed-by: Jessica Zhang <quic_jesszhan@xxxxxxxxxxx>
Reviewed-by: Marijn Suijten <marijn.suijten@xxxxxxxxxxxxxx>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
---
To: Alex Deucher <alexander.deucher@xxxxxxx>
To: Christian König <christian.koenig@xxxxxxx>
To: Pan, Xinhui <Xinhui.Pan@xxxxxxx>
To: David Airlie <airlied@xxxxxxxxx>
To: Daniel Vetter <daniel@xxxxxxxx>
To: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
To: Maxime Ripard <mripard@xxxxxxxxxx>
To: Thomas Zimmermann <tzimmermann@xxxxxxx>
To: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
To: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
To: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
To: Tvrtko Ursulin <tursulin@xxxxxxxxxxx>
To: Rob Clark <robdclark@xxxxxxxxx>
To: Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx>
To: Sean Paul <sean@xxxxxxxxxx>
To: Marijn Suijten <marijn.suijten@xxxxxxxxxxxxxx>
To: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
To: Jessica Zhang <quic_jesszhan@xxxxxxxxxxx>
Cc: amd-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: linux-arm-msm@xxxxxxxxxxxxxxx
Cc: freedreno@xxxxxxxxxxxxxxxxxxxxx
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>

Changes in v5:
- Drop applied patches
- Link to v4: https://lore.kernel.org/r/20240528-panel-sw43408-fix-v4-0-330b42445bcc@xxxxxxxxxx

Changes in v4:
- Reoder patches so that fixes come first, to be able to land them to
   drm-misc-fixes
- Link to v3: https://lore.kernel.org/r/20240522-panel-sw43408-fix-v3-0-6902285adcc0@xxxxxxxxxx

Changes in v3:
- Split DRM_DISPLAY_DSC_HELPER from DRM_DISPLAY_DP_HELPER
- Added missing Fixes tags
- Link to v2: https://lore.kernel.org/r/20240510-panel-sw43408-fix-v2-0-d1ef91ee1b7d@xxxxxxxxxx

Changes in v2:
- use SELECT instead of DEPEND to follow the reverted Kconfig changes
- Link to v1: https://lore.kernel.org/r/20240420-panel-sw43408-fix-v1-0-b282ff725242@xxxxxxxxxx
---
  drivers/gpu/drm/amd/amdgpu/Kconfig | 1 +
  drivers/gpu/drm/display/Kconfig    | 6 ++++++
  drivers/gpu/drm/display/Makefile   | 3 ++-
  drivers/gpu/drm/i915/Kconfig       | 1 +
  drivers/gpu/drm/msm/Kconfig        | 1 +
  drivers/gpu/drm/panel/Kconfig      | 6 +++---
  6 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/Kconfig b/drivers/gpu/drm/amd/amdgpu/Kconfig
index 4232ab27f990..5933ca8c6b96 100644
--- a/drivers/gpu/drm/amd/amdgpu/Kconfig
+++ b/drivers/gpu/drm/amd/amdgpu/Kconfig
@@ -6,6 +6,7 @@ config DRM_AMDGPU
  	depends on !UML
  	select FW_LOADER
  	select DRM_DISPLAY_DP_HELPER
+	select DRM_DISPLAY_DSC_HELPER
  	select DRM_DISPLAY_HDMI_HELPER
  	select DRM_DISPLAY_HDCP_HELPER
  	select DRM_DISPLAY_HELPER
diff --git a/drivers/gpu/drm/display/Kconfig b/drivers/gpu/drm/display/Kconfig
index 479e62690d75..a2e42014ffe0 100644
--- a/drivers/gpu/drm/display/Kconfig
+++ b/drivers/gpu/drm/display/Kconfig
@@ -59,6 +59,12 @@ config DRM_DISPLAY_DP_TUNNEL_STATE_DEBUG
If in doubt, say "N". +config DRM_DISPLAY_DSC_HELPER
+	bool
+	depends on DRM_DISPLAY_HELPER
+	help
+	  DRM display helpers for VESA DSC (used by DSI and DisplayPort).
+
  config DRM_DISPLAY_HDCP_HELPER
  	bool
  	depends on DRM_DISPLAY_HELPER
diff --git a/drivers/gpu/drm/display/Makefile b/drivers/gpu/drm/display/Makefile
index 629df2f4d322..df8f22c7e916 100644
--- a/drivers/gpu/drm/display/Makefile
+++ b/drivers/gpu/drm/display/Makefile
@@ -6,7 +6,8 @@ drm_display_helper-y := drm_display_helper_mod.o
  drm_display_helper-$(CONFIG_DRM_DISPLAY_DP_HELPER) += \
  	drm_dp_dual_mode_helper.o \
  	drm_dp_helper.o \
-	drm_dp_mst_topology.o \
+	drm_dp_mst_topology.o
+drm_display_helper-$(CONFIG_DRM_DISPLAY_DSC_HELPER) += \
  	drm_dsc_helper.o
  drm_display_helper-$(CONFIG_DRM_DISPLAY_DP_TUNNEL) += \

nit: DSC_HELPER should go after DP_TUNNEL to keep it sorted alphabetically.

Best regards
Thomas

  	drm_dp_tunnel.o
diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
index faa253b27664..db400aad88fa 100644
--- a/drivers/gpu/drm/i915/Kconfig
+++ b/drivers/gpu/drm/i915/Kconfig
@@ -11,6 +11,7 @@ config DRM_I915
  	select SHMEM
  	select TMPFS
  	select DRM_DISPLAY_DP_HELPER
+	select DRM_DISPLAY_DSC_HELPER
  	select DRM_DISPLAY_HDCP_HELPER
  	select DRM_DISPLAY_HDMI_HELPER
  	select DRM_DISPLAY_HELPER
diff --git a/drivers/gpu/drm/msm/Kconfig b/drivers/gpu/drm/msm/Kconfig
index 1931ecf73e32..6dcd26180611 100644
--- a/drivers/gpu/drm/msm/Kconfig
+++ b/drivers/gpu/drm/msm/Kconfig
@@ -111,6 +111,7 @@ config DRM_MSM_DSI
  	depends on DRM_MSM
  	select DRM_PANEL
  	select DRM_MIPI_DSI
+	select DRM_DISPLAY_DSC_HELPER
  	default y
  	help
  	  Choose this option if you have a need for MIPI DSI connector
diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index bf4eadfe21cb..afae8b130e9a 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -349,7 +349,7 @@ config DRM_PANEL_LG_SW43408
  	depends on OF
  	depends on DRM_MIPI_DSI
  	depends on BACKLIGHT_CLASS_DEVICE
-	select DRM_DISPLAY_DP_HELPER
+	select DRM_DISPLAY_DSC_HELPER
  	select DRM_DISPLAY_HELPER
  	help
  	  Say Y here if you want to enable support for LG sw43408 panel.
@@ -558,7 +558,7 @@ config DRM_PANEL_RAYDIUM_RM692E5
  	depends on OF
  	depends on DRM_MIPI_DSI
  	depends on BACKLIGHT_CLASS_DEVICE
-	select DRM_DISPLAY_DP_HELPER
+	select DRM_DISPLAY_DSC_HELPER
  	select DRM_DISPLAY_HELPER
  	help
  	  Say Y here if you want to enable support for Raydium RM692E5-based
@@ -916,7 +916,7 @@ config DRM_PANEL_VISIONOX_R66451
  	depends on OF
  	depends on DRM_MIPI_DSI
  	depends on BACKLIGHT_CLASS_DEVICE
-	select DRM_DISPLAY_DP_HELPER
+	select DRM_DISPLAY_DSC_HELPER
  	select DRM_DISPLAY_HELPER
  	help
  	  Say Y here if you want to enable support for Visionox

---
base-commit: 2102cb0d050d34d50b9642a3a50861787527e922
change-id: 20240420-panel-sw43408-fix-ff6549c121be

Best regards,

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux