Hi Biju, Thank you for the patch. On Sun, Aug 13, 2023 at 07:05:07PM +0100, Biju Das wrote: > The ADV7533 supports a maximum pixel clock of 80MHz whereas it is 148.5MHz > for ADV7535. Add max_mode_clock variable to struct adv7511_chip_info to > handle this difference. > > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> > --- > drivers/gpu/drm/bridge/adv7511/adv7511.h | 1 + > drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 6 ++++-- > drivers/gpu/drm/bridge/adv7511/adv7533.c | 2 +- > 3 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511.h b/drivers/gpu/drm/bridge/adv7511/adv7511.h > index 59e8ef10d72e..f8190442ffca 100644 > --- a/drivers/gpu/drm/bridge/adv7511/adv7511.h > +++ b/drivers/gpu/drm/bridge/adv7511/adv7511.h > @@ -335,6 +335,7 @@ enum adv7511_type { > > struct adv7511_chip_info { > enum adv7511_type type; > + unsigned long max_mode_clock; unsigned int is enough as the clock is expressed in kHz. To make it extra clear, you could also name the field max_mode_clock_khz. Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx> > }; > > struct adv7511 { > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > index 013d8d640ef4..193b2d5bc7e6 100644 > --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > @@ -1371,11 +1371,13 @@ static const struct adv7511_chip_info adv7511_chip_info = { > }; > > static const struct adv7511_chip_info adv7533_chip_info = { > - .type = ADV7533 > + .type = ADV7533, > + .max_mode_clock = 80000 > }; > > static const struct adv7511_chip_info adv7535_chip_info = { > - .type = ADV7535 > + .type = ADV7535, > + .max_mode_clock = 148500 > }; > > static const struct i2c_device_id adv7511_i2c_ids[] = { > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7533.c b/drivers/gpu/drm/bridge/adv7511/adv7533.c > index c452c4dc1c3f..e92b27e0afd1 100644 > --- a/drivers/gpu/drm/bridge/adv7511/adv7533.c > +++ b/drivers/gpu/drm/bridge/adv7511/adv7533.c > @@ -108,7 +108,7 @@ enum drm_mode_status adv7533_mode_valid(struct adv7511 *adv, > u8 bpp = mipi_dsi_pixel_format_to_bpp(dsi->format); > > /* Check max clock for either 7533 or 7535 */ > - if (mode->clock > (adv->info->type == ADV7533 ? 80000 : 148500)) > + if (mode->clock > adv->info->max_mode_clock) > return MODE_CLOCK_HIGH; > > /* Check max clock for each lane */ -- Regards, Laurent Pinchart