
Hi Kishon,
Since interrupt support is not present in u-boot, added an API to handle the interrupts in dwc3 core. This API can be polled to handle the interrupts.
Signed-off-by: Kishon Vijay Abraham I kishon@ti.com
drivers/usb/dwc3/core.c | 21 +++++++++++++++++++++ include/dwc3-uboot.h | 1 + 2 files changed, 22 insertions(+)
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index bd34dbd..5a8d5ea 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -758,6 +758,27 @@ void dwc3_uboot_exit(int index) } }
+/**
- dwc3_uboot_handle_interrupt - handle dwc3 core interrupt
- @index: index of this controller
- Invokes dwc3 gadget interrupts.
- Generally called from board file.
- */
+void dwc3_uboot_handle_interrupt(int index) +{
- struct dwc3 *dwc = NULL;
- list_for_each_entry(dwc, &dwc3_list, list) {
if (dwc->index != index)
continue;
dwc3_gadget_uboot_handle_interrupt(dwc);
break;
- }
+}
MODULE_ALIAS("platform:dwc3"); MODULE_AUTHOR("Felipe Balbi balbi@ti.com"); MODULE_LICENSE("GPL v2"); diff --git a/include/dwc3-uboot.h b/include/dwc3-uboot.h index 272a020..09ff8a7 100644 --- a/include/dwc3-uboot.h +++ b/include/dwc3-uboot.h @@ -38,4 +38,5 @@ struct dwc3_device {
int dwc3_uboot_init(struct dwc3_device *dev); void dwc3_uboot_exit(int index); +void dwc3_uboot_handle_interrupt(int index); #endif /* __DWC3_UBOOT_H_ */
Reviewed-by: Lukasz Majewski l.majewski@samsung.com