Hi Stefan Ekenberg <stefan.ekenberg@xxxxxxxx>, > -----Original Message----- > From: dri-devel <dri-devel-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Stefan Ekenberg > Sent: 15 November 2024 09:02 > Subject: Re: [PATCH] drm/bridge: adv7533: Reset DSI receiver logic > > On 11/15/24 09:10, Dmitry Baryshkov wrote: > > On Wed, Nov 13, 2024 at 08:40:15AM +0100, Stefan Ekenberg wrote: > >> Reset DSI receiver logic during power on. The need for this change > >> was discovered when investigating issue with ADV7535. The symptom of > >> the problem was that ADV7535 continuously outputs a black image. This > >> happened for about 10% of the times that ADV7535 was powered on. The > >> rest of the times the image was as expected. > >> > >> The solution in this patch (placement of reset and sleep time of > >> 200ms) is implemented as outlined by the Analog Devices support team. > > > > Is this reset sequence specific only to adv7535? Is it applicable to > > adv7533? adv7511? > > I know that it is not applicable for ADV7511 (that chip doesn't have any MIPI DSI receiver). It might > be applicable for ADV7533 but unfortunately I don't know. I have only used AD7535 and therefore never > tested anything on ADV7533. > > > > >> > >> Signed-off-by: Stefan Ekenberg <stefan.ekenberg@xxxxxxxx> With and without the patch, display works on Renesas RZ/V2L SMARC board which is connected to ADV7535 device. Tested-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> Cheers, Biju > >> --- > >> drivers/gpu/drm/bridge/adv7511/adv7533.c | 9 +++++++++ > >> 1 file changed, 9 insertions(+) > >> > >> diff --git a/drivers/gpu/drm/bridge/adv7511/adv7533.c b/drivers/gpu/drm/bridge/adv7511/adv7533.c > >> index 4481489aaf5ebf164313c86cbf3447d2d7914ab9..93085c2b872ed98f4ee394236dc66c568c0e5ccf 100644 > >> --- a/drivers/gpu/drm/bridge/adv7511/adv7533.c > >> +++ b/drivers/gpu/drm/bridge/adv7511/adv7533.c > >> @@ -67,6 +67,15 @@ void adv7533_dsi_power_on(struct adv7511 *adv) > >> { > >> struct mipi_dsi_device *dsi = adv->dsi; > >> > >> + /* > >> + * Reset DSI receiver block logic to avoid ADV7535 startup problem. > >> + * Without this reset it sometimes continuously fails to receive > >> + * incoming DSI packets and outputs black image. > >> + */ > >> + regmap_write(adv->regmap_cec, 0x26, 0x18); > >> + msleep(200); > >> + regmap_write(adv->regmap_cec, 0x26, 0x38); > >> + > >> if (adv->use_timing_gen) > >> adv7511_dsi_config_timing_gen(adv); > >> > >> > >> --- > >> base-commit: 59b723cd2adbac2a34fc8e12c74ae26ae45bf230 > >> change-id: 20241108-adv7533-dsi-reset-488c6fbb5e42 > >> > >> Best regards, > >> -- > >> Stefan Ekenberg <stefan.ekenberg@xxxxxxxx> > >> > >