Hi Marek, Thank you for the patch.
On dim., mars 17, 2024 at 05:42, Marek Vasut <marek.vasut+rene...@mailbox.org> wrote: > The only call site of dwc3_uboot_handle_interrupt() is the > dm_usb_gadget_handle_interrupts(), fold the former into the > later. This makes dwc3_uboot_handle_interrupt() unavailable > to be called from board code as well. > > Signed-off-by: Marek Vasut <marek.vasut+rene...@mailbox.org> > --- > Cc: Angus Ainslie <an...@akkea.ca> > Cc: Caleb Connolly <caleb.conno...@linaro.org> > Cc: Eugen Hristev <eugen.hris...@collabora.com> > Cc: Igor Prusov <ivpru...@salutedevices.com> > Cc: Mattijs Korpershoek <mkorpersh...@baylibre.com> > Cc: Nishanth Menon <n...@ti.com> > Cc: Patrice Chotard <patrice.chot...@foss.st.com> > Cc: Simon Glass <s...@chromium.org> > Cc: Stefan Bosch <stefa...@posteo.net> > Cc: Svyatoslav Ryhel <clamo...@gmail.com> > Cc: Tom Rini <tr...@konsulko.com> > Cc: ker...@puri.sm Reviewed-by: Mattijs Korpershoek <mkorpersh...@baylibre.com> Tested that I could scan for usb mass storage and that I can use fastboot: => fastboot usb 0 crq->brequest:0x0 => usb start starting USB... Bus usb@ff500000: Register 3000140 NbrPorts 3 Starting the controller USB XHCI 1.10 scanning bus usb@ff500000 for devices... 3 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found => usb storage Device 0: Vendor: SanDisk Rev: 1.00 Prod: Ultra Type: Removable Hard Disk Capacity: 29328.0 MB = 28.6 GB (60063744 x 512) Tested-by: Mattijs Korpershoek <mkorpersh...@baylibre.com> # vim3 > --- > drivers/usb/dwc3/core.c | 27 +++++++++++---------------- > include/dwc3-uboot.h | 1 - > 2 files changed, 11 insertions(+), 17 deletions(-) > > diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c > index 09737be9a9c..96e850b7170 100644 > --- a/drivers/usb/dwc3/core.c > +++ b/drivers/usb/dwc3/core.c > @@ -988,18 +988,27 @@ MODULE_AUTHOR("Felipe Balbi <ba...@ti.com>"); > MODULE_LICENSE("GPL v2"); > MODULE_DESCRIPTION("DesignWare USB3 DRD Controller Driver"); > > +#if !CONFIG_IS_ENABLED(DM_USB_GADGET) > +__weak int dwc3_uboot_interrupt_status(struct udevice *dev) > +{ > + return 1; > +} > + > /** > - * dwc3_uboot_handle_interrupt - handle dwc3 core interrupt > + * dm_usb_gadget_handle_interrupts - handle dwc3 core interrupt > * @dev: device of this controller > * > * Invokes dwc3 gadget interrupts. > * > * Generally called from board file. > */ > -void dwc3_uboot_handle_interrupt(struct udevice *dev) > +int dm_usb_gadget_handle_interrupts(struct udevice *dev) > { > struct dwc3 *dwc = NULL; > > + if (!dwc3_uboot_interrupt_status(dev)) > + return 0; > + > list_for_each_entry(dwc, &dwc3_list, list) { > if (dwc->dev != dev) > continue; > @@ -1007,20 +1016,6 @@ void dwc3_uboot_handle_interrupt(struct udevice *dev) > dwc3_gadget_uboot_handle_interrupt(dwc); > break; > } > -} > - > -#if !CONFIG_IS_ENABLED(DM_USB_GADGET) > -__weak int dwc3_uboot_interrupt_status(struct udevice *dev) > -{ > - return 1; > -} > - > -int dm_usb_gadget_handle_interrupts(struct udevice *dev) > -{ > - if (!dwc3_uboot_interrupt_status(dev)) > - return 0; > - > - dwc3_uboot_handle_interrupt(dev); > > return 0; > } > diff --git a/include/dwc3-uboot.h b/include/dwc3-uboot.h > index 5f13f5bcf40..3689d60ae7f 100644 > --- a/include/dwc3-uboot.h > +++ b/include/dwc3-uboot.h > @@ -45,7 +45,6 @@ struct dwc3_device { > int dwc3_uboot_init(struct dwc3_device *dev); > void dwc3_uboot_exit(int index); > int dwc3_uboot_interrupt_status(struct udevice *dev); > -void dwc3_uboot_handle_interrupt(struct udevice *dev); > > struct phy; > #if CONFIG_IS_ENABLED(PHY) && CONFIG_IS_ENABLED(DM_USB) > -- > 2.43.0