[Freedreno] [PATCH v1 2/3] drm/msm/dpu: retrieve DSI DSC struct at atomic_check()
Kuogee Hsieh
quic_khsieh at quicinc.com
Fri Jun 2 17:00:28 UTC 2023
>> There is one option which is keep current
>>
>> 1) keep struct drm_dsc_config *msm_dsi_get_dsc_config(struct msm_dsi
>> *msm_dsi) at dsi.c
>>
>> 2) use struct msm_display_info *disp_info saved at dpu_enc to locate
>> struct msm_dsi from priv->dsi[] list (see item #3)
>>
>> 3) info.dsc = msm_dsi_get_dsc_config(priv->dsi[info.h_tile_instance[0]]);
>>
>> 4) ballistically, keep original code but move info.dsc =
>> msm_dsi_get_dsc_config(priv->dsi[i]); to other place sush as
>> atomic_check() and atomic_enable().
>>
> 5) leave drm_dsc_config handling as is, update the dsc config from the
> DP driver as suitable. If DSC is not supported, set
> dsc->dsc_version_major = 0 and dsc->dsc_version_minor = 0 on the DP
> side. In DPU driver verify that dsc->dsc_version_major/_minor != 0.
I am confusing with item 5)
Currently, msm_dsi_get_dsc_config() of dsi side return dsc pointer if
dsc enabled and NULL if dsc not enabled.
Should checking dsc == NULL is good enough to differentiate between dsc
is supported and not supported?
Why need to set both dsc->dsc_version_major = 0 and
dsc->dsc_version_minor = 0 for dsc is not supported?
More information about the Freedreno
mailing list