summaryrefslogtreecommitdiff
path: root/common/core/inc/ux_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/core/inc/ux_api.h')
-rw-r--r--common/core/inc/ux_api.h78
1 files changed, 76 insertions, 2 deletions
diff --git a/common/core/inc/ux_api.h b/common/core/inc/ux_api.h
index d0f1f93..872f6cc 100644
--- a/common/core/inc/ux_api.h
+++ b/common/core/inc/ux_api.h
@@ -26,7 +26,7 @@
/* APPLICATION INTERFACE DEFINITION RELEASE */
/* */
/* ux_api.h PORTABLE C */
-/* 6.1.2 */
+/* 6.1.3 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -68,6 +68,9 @@
/* modified HCD status code, */
/* fixed compile warnings, */
/* resulting in version 6.1.2 */
+/* 12-31-2020 Chaoqiong Xiao Modified comment(s), */
+/* added BOS support, */
+/* resulting in version 6.1.3 */
/* */
/**************************************************************************/
@@ -202,7 +205,7 @@ typedef signed char SCHAR;
#define AZURE_RTOS_USBX
#define USBX_MAJOR_VERSION 6
#define USBX_MINOR_VERSION 1
-#define USBX_PATCH_VERSION 2
+#define USBX_PATCH_VERSION 3
/* Macros for concatenating tokens, where UX_CONCATn concatenates n tokens. */
@@ -945,9 +948,28 @@ VOID _ux_trace_event_update(TX_TRACE_BUFFER_ENTRY *event, ULONG timestamp, UL
#define UX_OTHER_SPEED_DESCRIPTOR_ITEM 7u
#define UX_OTG_DESCRIPTOR_ITEM 9u
#define UX_INTERFACE_ASSOCIATION_DESCRIPTOR_ITEM 11u
+#define UX_BOS_DESCRIPTOR_ITEM 15u
+#define UX_DEVICE_CAPABILITY_DESCRIPTOR_ITEM 16u
#define UX_DFU_FUNCTIONAL_DESCRIPTOR_ITEM 0x21u
#define UX_HUB_DESCRIPTOR_ITEM 0x29u
+#define UX_CAPABILITY_WIRELESS_USB 0x01u
+#define UX_CAPABILITY_USB_2_0_EXTENSION 0x02u
+#define UX_CAPABILITY_SUPERSPEED_USB 0x03u
+#define UX_CAPABILITY_CONTAINER_ID 0x04u
+#define UX_CAPABILITY_PLATFORM 0x05u
+#define UX_CAPABILITY_POWER_DELIVERY 0x06u
+#define UX_CAPABILITY_BATTERY_INFO 0x07u
+#define UX_CAPABILITY_PD_CONSUMER_PORT 0x08u
+#define UX_CAPABILITY_PD_PROVIDER_PORT 0x09u
+#define UX_CAPABILITY_SUPERSPEED_PLUS 0x0Au
+#define UX_CAPABILITY_PRECISION_TIME_MEASUREMENT 0x0Bu
+#define UX_CAPABILITY_WIRELESS_USB_EXT 0x0Cu
+#define UX_CAPABILITY_BILLBOARD 0x0Du
+#define UX_CAPABILITY_AUTHENTICATION 0x0Eu
+#define UX_CAPABILITY_BILLBOARD_EX 0x0Fu
+#define UX_CAPABILITY_CONFIGURATION_SUMMARY 0x10u
+
#define UX_CONTROL_TRANSFER_TIMEOUT 1000
#define UX_NON_CONTROL_TRANSFER_TIMEOUT 5000
@@ -957,6 +979,15 @@ VOID _ux_trace_event_update(TX_TRACE_BUFFER_ENTRY *event, ULONG timestamp, UL
#define UX_ENUMERATION_THREAD_WAIT 200
+/* USB Billboard constants. */
+
+#define UX_CLASS_BILLBOARD_CLASS 0x11
+#define UX_CLASS_BILLBOARD_SUBCLASS 0x00
+#define UX_CLASS_BILLBOARD_PROTOCOL 0x00
+#define UX_CLASS_BILLBOARD_DESCRIPTOR_BILLBOARD 0x0D
+#define UX_CLASS_BILLBOARD_DESCRIPTOR_ALTERNATE_MODE 0x0F
+#define UX_CLASS_BILLBOARD_MAX_NUM_ALT_MODE 0x34
+
/* USBX 5.8 BACKWARD COMPATIBILITY DEFINITIONS. THESE DEFINITIONS ARE NOW OBSOLETE
BUT DEFINED HERE FOR COMPATIBILITY REASONS. */
@@ -1717,6 +1748,49 @@ typedef struct UX_STRING_DESCRIPTOR_STRUCT
#define UX_STRING_DESCRIPTOR_LENGTH 4
+/* Define USBX BOS Descriptor structure. */
+
+typedef struct UX_BOS_DESCRIPTOR_STRUCT
+{
+ ULONG bLength;
+ ULONG bDescriptorType;
+ ULONG wTotalLength;
+ ULONG bNumDeviceCaps;
+} UX_BOS_DESCRIPTOR;
+
+#define UX_BOS_DESCRIPTOR_ENTRIES 4
+#define UX_BOS_DESCRIPTOR_LENGTH 5
+
+
+/* Define USBX USB 2.0 Descriptor structure. */
+
+typedef struct UX_USB_2_0_EXTENSION_DESCRIPTOR_STRUCT
+{
+ ULONG bLength;
+ ULONG bDescriptorType;
+ ULONG bDevCapabilityType;
+ ULONG bmAttributes;
+} UX_USB_2_0_EXTENSION_DESCRIPTOR;
+
+#define UX_USB_2_0_EXTENSION_DESCRIPTOR_ENTRIES 4
+#define UX_USB_2_0_EXTENSION_DESCRIPTOR_LENGTH 7
+
+
+/* Define USBX Container ID Descriptor structure. */
+
+typedef struct UX_CONTAINER_ID_DESCRIPTOR_STRUCT
+{
+ ULONG bLength;
+ ULONG bDescriptorType;
+ ULONG bDevCapabilityType;
+ ULONG bReserved;
+ ULONG ContainerID[4];
+} UX_CONTAINER_ID_DESCRIPTOR;
+
+#define UX_CONTAINER_ID_DESCRIPTOR_ENTRIES 5
+#define UX_CONTAINER_ID_DESCRIPTOR_LENGTH 20
+
+
/* Define USBX DFU functional descriptor. */
typedef struct UX_DFU_FUNCTIONAL_DESCRIPTOR_STRUCT