To properly support DSC the sink driver (panel) has to pass DSC pps data to the source (DSI host). The commit 0f40ba48de3b ("drm/msm/dsi: Pass DSC params to drm_panel") added a pointer to the DSC data to the struct drm_panel. However this is not the ideal solution. First, this leaves DSC-supporting DSI sink bridges (like ANX7625 which support DSC decoding on the MIPI DSI inputs). Second, this does not play well with the panel_bridge. Drivers depending solely on the bridge chains will still have to lookup panel and fetch data from it. Last, but not least, the DSC data is not relevant for the wide variety of panels including DPI and LVDS panels. To solve all these problems, move struct drm_dsc_config pointer from struct drm_panel to struct mipi_host_device. This way MIPI DSI host driver receives DSC data during attach callback without additional lookups. Dependencies: this depends on the MSM DRM DSC patchset [1] being pulled in through the MSM DRM tree. [1] https://patchwork.freedesktop.org/series/102262/ Dmitry Baryshkov (3): drm/mipi-dsi: pass DSC data through the struct mipi_dsi_device drm/msm/dsi: fetch DSC pps payload from struct mipi_dsi_device drm/panel: drop DSC pps pointer drivers/gpu/drm/msm/dsi/dsi_host.c | 25 +++++++++++-------------- include/drm/drm_mipi_dsi.h | 2 ++ include/drm/drm_panel.h | 7 ------- 3 files changed, 13 insertions(+), 21 deletions(-) -- 2.35.1