Message ID | 20240614005309.34433-9-marek.vasut+renesas@mailbox.org |
---|---|
State | Accepted |
Commit | 281eaf1ed83a09bfce6b82b86775e11d4269ad08 |
Delegated to: | Mattijs Korpershoek |
Headers | show |
Series | usb: gadget: Introduce handle_interrupts ops to USB_GADGET_GENERIC uclass | expand |
Hi Marek, Thank you for the patch. On ven., juin 14, 2024 at 02:51, Marek Vasut <marek.vasut+renesas@mailbox.org> wrote: > Implement .handle_interrupts callback as a replacement for deprecated > dm_usb_gadget_handle_interrupts() function. The new callback allows > for each DM capable USB gadget controller driver to define its own > IRQ handling implementation without colliding with other controller > drivers. > > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> > --- > Cc: Alexander Sverdlin <alexander.sverdlin@siemens.com> > Cc: Felipe Balbi <felipe.balbi@linux.intel.com> > Cc: Lukasz Majewski <lukma@denx.de> > Cc: Mattijs Korpershoek <mkorpershoek@baylibre.com> > Cc: Nishanth Menon <nm@ti.com> > Cc: Simon Glass <sjg@chromium.org> > Cc: Thinh Nguyen <Thinh.Nguyen@synopsys.com> > Cc: Tom Rini <trini@konsulko.com> > Cc: u-boot@lists.denx.de > --- > drivers/usb/musb-new/ti-musb.c | 23 ++++++++++++++--------- > 1 file changed, 14 insertions(+), 9 deletions(-) > > diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c > index 76e8b88369e..ec1baa9337d 100644 > --- a/drivers/usb/musb-new/ti-musb.c > +++ b/drivers/usb/musb-new/ti-musb.c > @@ -233,15 +233,6 @@ static int ti_musb_peripheral_of_to_plat(struct udevice *dev) > } > #endif > > -int dm_usb_gadget_handle_interrupts(struct udevice *dev) > -{ > - struct ti_musb_peripheral *priv = dev_get_priv(dev); > - > - priv->periph->isr(0, priv->periph); > - > - return 0; > -} > - > static int ti_musb_peripheral_probe(struct udevice *dev) > { > struct ti_musb_peripheral *priv = dev_get_priv(dev); > @@ -269,12 +260,26 @@ static int ti_musb_peripheral_remove(struct udevice *dev) > return 0; > } > > +static int ti_musb_gadget_handle_interrupts(struct udevice *dev) > +{ > + struct ti_musb_peripheral *priv = dev_get_priv(dev); > + > + priv->periph->isr(0, priv->periph); > + > + return 0; > +} > + > +static const struct usb_gadget_generic_ops ti_musb_gadget_ops = { > + .handle_interrupts = ti_musb_gadget_handle_interrupts, > +}; > + > U_BOOT_DRIVER(ti_musb_peripheral) = { > .name = "ti-musb-peripheral", > .id = UCLASS_USB_GADGET_GENERIC, > #if CONFIG_IS_ENABLED(OF_CONTROL) > .of_to_plat = ti_musb_peripheral_of_to_plat, > #endif > + .ops = &ti_musb_gadget_ops, > .probe = ti_musb_peripheral_probe, > .remove = ti_musb_peripheral_remove, > .ops = &musb_usb_ops, > -- > 2.43.0
diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c index 76e8b88369e..ec1baa9337d 100644 --- a/drivers/usb/musb-new/ti-musb.c +++ b/drivers/usb/musb-new/ti-musb.c @@ -233,15 +233,6 @@ static int ti_musb_peripheral_of_to_plat(struct udevice *dev) } #endif -int dm_usb_gadget_handle_interrupts(struct udevice *dev) -{ - struct ti_musb_peripheral *priv = dev_get_priv(dev); - - priv->periph->isr(0, priv->periph); - - return 0; -} - static int ti_musb_peripheral_probe(struct udevice *dev) { struct ti_musb_peripheral *priv = dev_get_priv(dev); @@ -269,12 +260,26 @@ static int ti_musb_peripheral_remove(struct udevice *dev) return 0; } +static int ti_musb_gadget_handle_interrupts(struct udevice *dev) +{ + struct ti_musb_peripheral *priv = dev_get_priv(dev); + + priv->periph->isr(0, priv->periph); + + return 0; +} + +static const struct usb_gadget_generic_ops ti_musb_gadget_ops = { + .handle_interrupts = ti_musb_gadget_handle_interrupts, +}; + U_BOOT_DRIVER(ti_musb_peripheral) = { .name = "ti-musb-peripheral", .id = UCLASS_USB_GADGET_GENERIC, #if CONFIG_IS_ENABLED(OF_CONTROL) .of_to_plat = ti_musb_peripheral_of_to_plat, #endif + .ops = &ti_musb_gadget_ops, .probe = ti_musb_peripheral_probe, .remove = ti_musb_peripheral_remove, .ops = &musb_usb_ops,
Implement .handle_interrupts callback as a replacement for deprecated dm_usb_gadget_handle_interrupts() function. The new callback allows for each DM capable USB gadget controller driver to define its own IRQ handling implementation without colliding with other controller drivers. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> --- Cc: Alexander Sverdlin <alexander.sverdlin@siemens.com> Cc: Felipe Balbi <felipe.balbi@linux.intel.com> Cc: Lukasz Majewski <lukma@denx.de> Cc: Mattijs Korpershoek <mkorpershoek@baylibre.com> Cc: Nishanth Menon <nm@ti.com> Cc: Simon Glass <sjg@chromium.org> Cc: Thinh Nguyen <Thinh.Nguyen@synopsys.com> Cc: Tom Rini <trini@konsulko.com> Cc: u-boot@lists.denx.de --- drivers/usb/musb-new/ti-musb.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-)