On Fri, Jul 17, 2020 at 08:44:56PM +0900, Yoshihiro Shimoda wrote: > If CONFIG_DEBUG_SHIRQ was enabled, r8a77951-salvator-xs could boot "could not boot" > correctly. If we appended "earlycon keep_bootcon" to the kernel > command like, we could get kernel log like below. > > SError Interrupt on CPU0, code 0xbf000002 -- SError > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.8.0-rc3-salvator-x-00505-g6c843129e6faaf01 #785 > Hardware name: Renesas Salvator-X 2nd version board based on r8a77951 (DT) > pstate: 60400085 (nZCv daIf +PAN -UAO BTYPE=--) > pc : rcar_gen3_phy_usb2_irq+0x14/0x54 > lr : free_irq+0xf4/0x27c > > This means free_irq() calls the interrupt handler while PM runtime > is not getting if DEBUG_SHIRQ is enabled and rcar_gen3_phy_usb2_probe() > failed. To fix the issue, move the irq registration place to > rcar_gen3_phy_usb2_init() which is ready to handle the interrupts. > > Note that after the commit 549b6b55b005 ("phy: renesas: rcar-gen3-usb2: > enable/disable independent irqs") which is merged into v5.2, since this > driver creates multiple phy instances, needs to check whether one of > phy instances is initialized. However, if we backport this patch to v5.1 > or less, we don't need to check it because such kernel have single > phy instance. > > Reported-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > Reported-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > Fixes: 9f391c574efc ("phy: rcar-gen3-usb2: add runtime ID/VBUS pin detection") > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> Yeah, makes my boards boot with CONFIG_DEBUG_SHIRQ! Reviewed-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> Tested-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
Attachment:
signature.asc
Description: PGP signature