On Tue, Aug 10, 2021 at 10:43:31AM +0800, Sandor.yu@xxxxxxx wrote: > From: Sandor Yu <Sandor.yu@xxxxxxx> > > In function malidp_crtc_mode_valid, mode->crtc_mode = 0 when run > in drm_helper_probe_single_connector_modes. > Invalid video modes are not culled > and all modes move to the connector's modes list. > It is not expected by mode_valid. > > Replace mode->crtc_clock with mode->clock to fix the issue. > > Signed-off-by: Sandor Yu <Sandor.yu@xxxxxxx> It looks like at least drm/bridge/cdns-dsi.c does the same thing of using mode->clock when validating, so looks like a legit bug. Acked-by: Liviu Dudau <liviu.dudau@xxxxxxx> Many thanks, Liviu > --- > drivers/gpu/drm/arm/malidp_crtc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/arm/malidp_crtc.c b/drivers/gpu/drm/arm/malidp_crtc.c > index 494075ddbef6..55890334385d 100644 > --- a/drivers/gpu/drm/arm/malidp_crtc.c > +++ b/drivers/gpu/drm/arm/malidp_crtc.c > @@ -31,7 +31,7 @@ static enum drm_mode_status malidp_crtc_mode_valid(struct drm_crtc *crtc, > * check that the hardware can drive the required clock rate, > * but skip the check if the clock is meant to be disabled (req_rate = 0) > */ > - long rate, req_rate = mode->crtc_clock * 1000; > + long rate, req_rate = mode->clock * 1000; > > if (req_rate) { > rate = clk_round_rate(hwdev->pxlclk, req_rate); > -- > 2.17.1 > -- ==================== | I would like to | | fix the world, | | but they're not | | giving me the | \ source code! / --------------- ¯\_(ツ)_/¯