On 14.12.2022 00:22, Marijn Suijten wrote: > According to downstream /and the comment copied from it/ this comparison > should be the other way around. In other words, when the panel driver > requests to use more slices per packet than what could be sent over this > interface, it is bumped down to only use a single slice per packet (and > strangely not the number of slices that could fit on the interface). > > Fixes: 08802f515c3c ("drm/msm/dsi: Add support for DSC configuration") > --- Missing s-o-b > drivers/gpu/drm/msm/dsi/dsi_host.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c > index 0686c35a6fd4..9bdfa0864cdf 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_host.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c > @@ -855,11 +855,11 @@ static void dsi_update_dsc_timing(struct msm_dsi_host *msm_host, bool is_cmd_mod > */ > slice_per_intf = DIV_ROUND_UP(hdisplay, dsc->slice_width); > > - /* If slice_per_pkt is greater than slice_per_intf > + /* If slice_count is greater than slice_per_intf > * then default to 1. This can happen during partial > * update. > */ > - if (slice_per_intf > dsc->slice_count) > + if (dsc->slice_count > slice_per_intf) > dsc->slice_count = 1; > > total_bytes_per_intf = dsc->slice_chunk_size * slice_per_intf;