summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKishon Vijay Abraham I <kishon@ti.com>2015-02-23 18:40:11 +0530
committerMarek Vasut <marex@denx.de>2015-04-14 05:48:10 +0200
commit53de33fc00afd41fd0fd8fb9f5ab0d01df3a64a4 (patch)
tree72e71e6a9c453ad94ad75628cebf27a69928e384
parent57207657a1282f833a8561c4fef4b993a0eb4b29 (diff)
downloadu-boot-imx-53de33fc00afd41fd0fd8fb9f5ab0d01df3a64a4.zip
u-boot-imx-53de33fc00afd41fd0fd8fb9f5ab0d01df3a64a4.tar.gz
u-boot-imx-53de33fc00afd41fd0fd8fb9f5ab0d01df3a64a4.tar.bz2
usb: dwc3: dwc3-omap: add interrupt status API to check for interrupts
Added an API to check for interrupt status. This API is generally called from board file to check for interrupt status. Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
-rw-r--r--drivers/usb/dwc3/dwc3-omap.c20
-rw-r--r--include/dwc3-omap-uboot.h1
2 files changed, 21 insertions, 0 deletions
diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c
index c8275c7..46af109 100644
--- a/drivers/usb/dwc3/dwc3-omap.c
+++ b/drivers/usb/dwc3/dwc3-omap.c
@@ -415,6 +415,26 @@ void dwc3_omap_uboot_exit(int index)
}
}
+/**
+ * dwc3_omap_uboot_interrupt_status - check the status of interrupt
+ * @index: index of this controller
+ *
+ * Checks the status of interrupts and returns true if an interrupt
+ * is detected or false otherwise.
+ *
+ * Generally called from board file.
+ */
+int dwc3_omap_uboot_interrupt_status(int index)
+{
+ struct dwc3_omap *omap = NULL;
+
+ list_for_each_entry(omap, &dwc3_omap_list, list)
+ if (omap->index == index)
+ return dwc3_omap_interrupt(-1, omap);
+
+ return 0;
+}
+
MODULE_ALIAS("platform:omap-dwc3");
MODULE_AUTHOR("Felipe Balbi <balbi@ti.com>");
MODULE_LICENSE("GPL v2");
diff --git a/include/dwc3-omap-uboot.h b/include/dwc3-omap-uboot.h
index 29f02f8..db002b9 100644
--- a/include/dwc3-omap-uboot.h
+++ b/include/dwc3-omap-uboot.h
@@ -28,4 +28,5 @@ struct dwc3_omap_device {
int dwc3_omap_uboot_init(struct dwc3_omap_device *dev);
void dwc3_omap_uboot_exit(int index);
+int dwc3_omap_uboot_interrupt_status(int index);
#endif /* __DWC3_OMAP_UBOOT_H_ */