aboutsummaryrefslogtreecommitdiff
path: root/nuttx/include
diff options
context:
space:
mode:
authorpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2012-01-27 16:25:57 +0000
committerpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2012-01-27 16:25:57 +0000
commitb8e32a94f3aad58ed203410fa5f11959a0a63f70 (patch)
treefe3cbb3a753d0755ceced271a369b0d92594e0fb /nuttx/include
parentcd24ef4a3026c7201e5332d4f905bdddad76051e (diff)
downloadpx4-firmware-b8e32a94f3aad58ed203410fa5f11959a0a63f70.tar.gz
px4-firmware-b8e32a94f3aad58ed203410fa5f11959a0a63f70.tar.bz2
px4-firmware-b8e32a94f3aad58ed203410fa5f11959a0a63f70.zip
First round of changes from debug of USB composite device (still has problems)
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4342 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'nuttx/include')
-rw-r--r--nuttx/include/nuttx/usb/usb.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/nuttx/include/nuttx/usb/usb.h b/nuttx/include/nuttx/usb/usb.h
index 2c20c69fc..446acb4b2 100644
--- a/nuttx/include/nuttx/usb/usb.h
+++ b/nuttx/include/nuttx/usb/usb.h
@@ -198,6 +198,7 @@
#define USB_CLASS_CONTENT_SEC (0x0d)
#define USB_CLASS_VIDEO (0x0e)
#define USB_CLASS_WIRELESS_CONTROLLER (0xe0)
+#define USB_CLASS_MISC (0xef)
#define USB_CLASS_APP_SPEC (0xfe)
#define USB_CLASS_VENDOR_SPEC (0xff)
@@ -377,6 +378,29 @@ struct usb_qualdesc_s
};
#define USB_SIZEOF_QUALDESC 10
+/* Interface association descriptor
+ *
+ * The Universal Serial Bus Specification, revision 2.0, does not support grouping
+ * more than one interface of a composite device within a single function. However,
+ * the USB Device Working Group (DWG) created USB device classes that allow for
+ * functions with multiple interfaces, and the USB Implementor's Forum issued an
+ * Engineering Change Notification (ECN) that defines a mechanism for grouping
+ * interfaces.
+ */
+
+struct usb_iaddesc_s
+{
+ uint8_t len; /* Descriptor length */
+ uint8_t type; /* Descriptor type */
+ uint8_t firstif; /* Number of first interface of the function */
+ uint8_t nifs; /* Number of interfaces associated with the function */
+ uint8_t class; /* Class code*/
+ uint8_t subclass; /* Sub-class code */
+ uint8_t protocol; /* Protocol code */
+ uint8_t ifunction; /* Index to string identifying the function */
+};
+#define USB_SIZEOF_IADDESC 8
+
/************************************************************************************
* Public Data
************************************************************************************/