Hi Geert, Thanks for the feedback. > -----Original Message----- > From: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> > Sent: Tuesday, May 30, 2023 2:17 PM > To: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> > Cc: Marc Zyngier <maz@xxxxxxxxxx>; Laurent Pinchart > <laurent.pinchart@xxxxxxxxxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx; Greg > Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Zheng Wang > <zyytlz.wz@xxxxxxx>; Geert Uytterhoeven <geert+renesas@xxxxxxxxx>; > Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx>; Wolfram Sang > <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>; Krzysztof Kozlowski > <krzysztof.kozlowski@xxxxxxxxxx>; linux-usb@xxxxxxxxxxxxxxx; Prabhakar > Mahadev Lad <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>; linux-renesas- > soc@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] usb: gadget: udc: renesas_usb3: Fix RZ/V2M > {modprobe,bind} error > > Hi Biju, > > On Tue, May 30, 2023 at 2:37 PM Biju Das <biju.das.jz@xxxxxxxxxxxxxx> > wrote: > > > Subject: Re: [PATCH] usb: gadget: udc: renesas_usb3: Fix RZ/V2M > > > {modprobe,bind} error > > > > > > On Mon, 29 May 2023 09:56:56 +0100, > > > Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> wrote: > > > > > > > > The name is just informative so I suppose it's ok. It makes me > > > > wonder, though, if the usb3drd driver shouldn't register the > > > > interrupt handler itself. > > > > > > Well, it registers it itself, but pretending to be another device. > > > Which is wrong on many levels. > > > > OK, Will register the handler in usb3drd driver and expose > > register/unregister handler API with cb function to avoid duplication > of the code with renesas_usb3 driver. > > > > Basically, there will be 2 exported functions + 1 spinlock introduced > > in usb3drd driver > > > > USB3DRD driver register the IRQ handler > > > > Probe/remove from renesas_usb3 driver register/unregister the cb > > function. Whenever there is drd irq cb function will be called. > > Please don't make it more complicated: if the parent device does not use > that interrupt, there is no need to move its handling to the parent > device driver. > > Your patch looks fine to me, just replace the second ddata->dev, too. Agreed, will replace "dev_name(ddata->dev)"->dev_name(&pdev->dev). With Interrupt ID "274" vs "278", we can differentiate "drd" vs "peri" interrupt. root@rzv2m:~# cat /proc/interrupts | grep usb 22: 0 GICv2 274 Level 85070000.usb3peri 28: 0 GICv2 278 Level 85070000.usb3peri Cheers, Biju