From 842ef9a98ef8643df87d3ae5664802cd5db2bca0 Mon Sep 17 00:00:00 2001 From: Stephen Warren Date: Mon, 25 Aug 2014 14:02:15 -0600 Subject: [PATCH] usb: ci_udc: implement dfu_usb_get_reset This allows the USB code to determine whether a USB bus reset was issued, which in turn allows the code to differentiate between a detach (return to shell prompt) and a board reset/reboot request. Signed-off-by: Stephen Warren --- drivers/usb/gadget/ci_udc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c index 4cd19c3afd..2572b346eb 100644 --- a/drivers/usb/gadget/ci_udc.c +++ b/drivers/usb/gadget/ci_udc.c @@ -919,3 +919,10 @@ int usb_gadget_unregister_driver(struct usb_gadget_driver *driver) return 0; } + +bool dfu_usb_get_reset(void) +{ + struct ci_udc *udc = (struct ci_udc *)controller.ctrl->hcor; + + return !!(readl(&udc->usbsts) & STS_URI); +}