summaryrefslogtreecommitdiff
path: root/payloads/libpayload/include/udc/udc.h
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@google.com>2015-06-22 16:07:51 -0700
committerPatrick Georgi <pgeorgi@google.com>2015-06-30 08:09:22 +0200
commited1a4bbb60d8a4244eb0337033cc4425fe1df492 (patch)
tree88d5bbb72ae415e9029839154eb639e765ad4f35 /payloads/libpayload/include/udc/udc.h
parent14610ec20ae086570434114fa262a9fb84dae6d9 (diff)
udc/chipidea: Allow force_shutdown of connection
Allow force shutdown operation of the connection in case where the cable is disconnected and reconnected back. BUG=chrome-os-partner:41687 BRANCH=None TEST=Compiles successfully and fastboot works fine even with reconnection of cable Change-Id: I8eb1217b4a9ad6ce8a2a40db329eca1930eda089 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: 3d7ab65c459caa4ec526b99a1aee1a31e9cb80da Original-Change-Id: I354c44e0ed2211cb2c4c1ae653d201b7d15ea932 Original-Signed-off-by: Furquan Shaikh <furquan@google.com> Original-Reviewed-on: https://chromium-review.googlesource.com/281066 Original-Trybot-Ready: Furquan Shaikh <furquan@chromium.org> Original-Tested-by: Furquan Shaikh <furquan@chromium.org> Original-Reviewed-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Queue: Furquan Shaikh <furquan@chromium.org> Reviewed-on: http://review.coreboot.org/10686 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'payloads/libpayload/include/udc/udc.h')
-rw-r--r--payloads/libpayload/include/udc/udc.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/payloads/libpayload/include/udc/udc.h b/payloads/libpayload/include/udc/udc.h
index 99cbb1b7eb..5180177c1f 100644
--- a/payloads/libpayload/include/udc/udc.h
+++ b/payloads/libpayload/include/udc/udc.h
@@ -140,6 +140,15 @@ struct usbdev_ctrl {
*/
void (*stall)(struct usbdev_ctrl *, uint8_t ep, int in_dir, int set);
+ /**
+ * Disable controller and deallocate data structures.
+ */
+ void (*force_shutdown)(struct usbdev_ctrl *this);
+
+ /**
+ * Let queues run out, then disable controller and deallocate data
+ * structures.
+ */
void (*shutdown)(struct usbdev_ctrl *this);
/**