On Sun, Jun 23, 2024 at 01:44:19AM +0300, Dmitry Baryshkov wrote:
> 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_jessz...@quicinc.com>
> Reviewed-by: Marijn Suijten <marijn.suij...@somainline.org>
> Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
> ---
> To: Alex Deucher <alexander.deuc...@amd.com>
> To: Christian König <christian.koe...@amd.com>
> To: Pan, Xinhui <xinhui....@amd.com>
> To: David Airlie <airl...@gmail.com>
> To: Daniel Vetter <dan...@ffwll.ch>
> To: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
> To: Maxime Ripard <mrip...@kernel.org>
> To: Thomas Zimmermann <tzimmerm...@suse.de>
> To: Jani Nikula <jani.nik...@linux.intel.com>
> To: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
> To: Rodrigo Vivi <rodrigo.v...@intel.com>
> To: Tvrtko Ursulin <tursu...@ursulin.net>
> To: Rob Clark <robdcl...@gmail.com>
> To: Abhinav Kumar <quic_abhin...@quicinc.com>
> To: Sean Paul <s...@poorly.run>
> To: Marijn Suijten <marijn.suij...@somainline.org>
> To: Neil Armstrong <neil.armstr...@linaro.org>
> To: Jessica Zhang <quic_jessz...@quicinc.com>
> Cc: amd-gfx@lists.freedesktop.org
> Cc: dri-de...@lists.freedesktop.org
> Cc: linux-ker...@vger.kernel.org
> Cc: intel-...@lists.freedesktop.org
> Cc: linux-arm-...@vger.kernel.org
> Cc: freedr...@lists.freedesktop.org
> Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
> 
> Changes in v5:
> - Drop applied patches
> - Link to v4: 
> https://lore.kernel.org/r/20240528-panel-sw43408-fix-v4-0-330b42445...@linaro.org
> 
> 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-6902285ad...@linaro.org
> 
> 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-d1ef91ee1...@linaro.org
> 
> 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-b282ff725...@linaro.org
> ---
>  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) += \
>       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

Acked-by: Rodrigo Vivi <rodrigo.v...@intel.com> #i915

>       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,
> -- 
> Dmitry Baryshkov <dmitry.barysh...@linaro.org>
> 

Reply via email to