From: Kishon Vijay Abraham I Date: Mon, 23 Feb 2015 13:10:06 +0000 (+0530) Subject: dwc3: core: added an API to invoke irq handlers X-Git-Tag: submit/tizen/20160318.071304~181 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=418705f97fe56bc4cdd65e313908cb2e331f849d;p=profile%2Fcommon%2Fplatform%2Fkernel%2Fu-boot-artik.git dwc3: core: added an API to invoke irq handlers 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 Reviewed-by: Lukasz Majewski --- diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index bd34dbd23..5a8d5ea88 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 "); MODULE_LICENSE("GPL v2"); diff --git a/include/dwc3-uboot.h b/include/dwc3-uboot.h index 272a0207b..09ff8a74d 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_ */