Re: imx8mm board crash in drivers/usb/chipidea/ci_hdrc_imx.c

From: Frieder Schrempf
Date: Tue Sep 21 2021 - 02:42:42 EST


Hi Fabio,

On 20.09.21 22:50, Fabio Estevam wrote:
> Hi Frieder,
>
> On Mon, Sep 20, 2021 at 11:26 AM Frieder Schrempf
> <frieder.schrempf@xxxxxxxxxx> wrote:
>
>> Commit ed5a419bb019 ("usb: chipidea: imx: "fsl,usbphy" phandle is not
>> mandatory now") explains, that the core driver already covers reading
>> the "phys" property (see ci_hdrc_probe()):
>>
>> Since the chipidea common code support get the USB PHY phandle from
>> "phys", the glue layer is not mandatory to get the "fsl,usbphy"
>> phandle any more.
>>
>> This seems to be the reason why ci_hdrc_imx_probe() doesn't return any
>> error in case "fsl,usbphy" is not set. It expects that the core will
>> handle data->phy = NULL and already checks for a "phys" property.
>
> chipidea core populates ci->usb_phy when phys is used.
>
> The charger detection function only checks data->usb_phy, so they
> don't see ci->usb_phy that was populated by the chipidea core.
>
> We could change the signature of all charger detection functions to
> receive struct ci_hdrc *ci, but that will be a huge patch that will
> probably not meet
> the stable requirements, so I think to minimally fix stable we should
> go with the proposed fix I suggested.

Ok, thanks for the explanation. I agree. Would you mind sending the fix
as formal patch?

Thanks
Frieder