Re: [PATCH v5 4/4] drm: bridge: ti-sn65dsi83: Add error recovery mechanism

Herve Codina
2025-02-10T13:41:06Z

Hi Alexander,

On Mon, 10 Feb 2025 11:42:09 +0100
Alexander Stein <alexander.stein@ew.tq-group.com> wrote:

> Hi Herve,
>
> Am Freitag, 7. Februar 2025, 19:08:16 CET schrieb Herve Codina:
> > Hi Alexander,
> >
> > On Thu, 06 Feb 2025 16:39:09 +0100
> > Alexander Stein <alexander.stein@ew.tq-group.com> wrote:
> >
> > > Hi Herve,
> > >
> > > Am Donnerstag, 6. Februar 2025, 16:20:48 CET schrieb Herve Codina:
> > > > Hi Alexander,
> > > >
> > > > On Thu, 06 Feb 2025 15:38:42 +0100
> > > > Alexander Stein <alexander.stein@ew.tq-group.com> wrote:
> > > >
> > > > ...
> > > > > With interrupt configured I got the following stack trace upon
> > > > > reboot/poweroff:
> > > > >
> > > > > [ 91.317264] sn65dsi83 2-002d: reset the pipe
> > > > > [ 91.344093] Unable to handle ke
> > > > > ** replaying previous printk message **
> > > > > [ 91.344093] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000
> > > > ...
> > > >
> > > > Ouch :(
> > > >
> > > > One question to help me investigating:
> > > > Do you have the issue at init/probe or when you start to display graphics?
> > >
> > > This is during shutdown/poweroff. I assume that regmap_reg() in
> > > sn65dsi83_handle_errors() fails and because of that reset_work is scheduled.
> > >
> >
> > Found the issue.
> >
> > Can you give me following information so that I can validate what I
> > understood:
> > - Is your interrupt line connected directly to the SoC?
>
> No, unfortunately not. It's connected to a GPIO expander, which in turn
> delivers an IRQ to the SoC. In between the bridge and the expander is a
> buffer for voltage switch (1V8 -> 3V3).
>
> > - Is there any pullup/pulldown on your interrupt line?
>
> As far a I can tell, there is no pullup/pulldown on the IRQ line to
> the buffer.
>
> > - In your devicetree what is the configuration used for this interrupt in
> > terms of level or edge.
>
> As this line is connected to an expander (pca9555) only edge triggered
> interrupts are supported.
>
> > Anyway, I will send a fix in the next iteration.
>

Thanks for all those details.

I've just sent a new iteration:
https://lore.kernel.org/all/20250210132620.42263-1-herve.codina@bootlin.com/

Can you test it on your side?

Best regards,
Hervé