aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2015-09-08 10:43:31 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2015-09-08 10:43:31 +0000
commitaa7557a5f206124dc232343be2010f7d9b82e267 (patch)
tree0a84f3ded31ee0ad2d63d283af0ea7ce8b0fdab6 /os/hal/include
parent4376041f33960189d088ac3d87b7cab178269484 (diff)
downloadChibiOS-aa7557a5f206124dc232343be2010f7d9b82e267.tar.gz
ChibiOS-aa7557a5f206124dc232343be2010f7d9b82e267.tar.bz2
ChibiOS-aa7557a5f206124dc232343be2010f7d9b82e267.zip
USB suspend mode.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@8286 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/include')
-rw-r--r--os/hal/include/usb.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/os/hal/include/usb.h b/os/hal/include/usb.h
index 267c519ba..9f7cbf630 100644
--- a/os/hal/include/usb.h
+++ b/os/hal/include/usb.h
@@ -258,11 +258,12 @@ typedef uint8_t usbep_t;
* @brief Type of a driver state machine possible states.
*/
typedef enum {
- USB_UNINIT = 0, /**< Not initialized. */
- USB_STOP = 1, /**< Stopped. */
- USB_READY = 2, /**< Ready, after bus reset. */
- USB_SELECTED = 3, /**< Address assigned. */
- USB_ACTIVE = 4 /**< Active, configuration selected.*/
+ USB_UNINIT = 0, /**< Not initialized. */
+ USB_STOP = 1, /**< Stopped. */
+ USB_READY = 2, /**< Ready, after bus reset. */
+ USB_SELECTED = 3, /**< Address assigned. */
+ USB_ACTIVE = 4, /**< Active, configuration selected.*/
+ USB_SUSPENDED = 5 /**< Suspended, low power mode. */
} usbstate_t;
/**
@@ -583,6 +584,8 @@ extern "C" {
bool usbStallReceiveI(USBDriver *usbp, usbep_t ep);
bool usbStallTransmitI(USBDriver *usbp, usbep_t ep);
void _usb_reset(USBDriver *usbp);
+ void _usb_suspend(USBDriver *usbp);
+ void _usb_wakeup(USBDriver *usbp);
void _usb_ep0setup(USBDriver *usbp, usbep_t ep);
void _usb_ep0in(USBDriver *usbp, usbep_t ep);
void _usb_ep0out(USBDriver *usbp, usbep_t ep);