52 KiB
group usb_protocol_group
This module defines constants and data structures provided by the USB 2.0 specification.
Summary
Members | Descriptions |
---|---|
define USB_V2_0 |
Value for field bcdUSB. |
define USB_V2_1 |
USB Specification version 2.01. |
define USB_REQ_DIR_OUT |
USB request data transfer direction (bmRequestType) |
define USB_REQ_DIR_IN |
Device to host. |
define USB_REQ_DIR_MASK |
Mask. |
define USB_REQ_TYPE_STANDARD |
USB request types (bmRequestType) |
define USB_REQ_TYPE_CLASS |
Class-specific request. |
define USB_REQ_TYPE_VENDOR |
Vendor-specific request. |
define USB_REQ_TYPE_MASK |
Mask. |
define USB_REQ_RECIP_DEVICE |
USB recipient codes (bmRequestType) |
define USB_REQ_RECIP_INTERFACE |
Recipient interface. |
define USB_REQ_RECIP_ENDPOINT |
Recipient endpoint. |
define USB_REQ_RECIP_OTHER |
Recipient other. |
define USB_REQ_RECIP_MASK |
Mask. |
define HIRD_50_US |
|
define HIRD_125_US |
|
define HIRD_200_US |
|
define HIRD_275_US |
|
define HIRD_350_US |
|
define HIRD_425_US |
|
define HIRD_500_US |
|
define HIRD_575_US |
|
define HIRD_650_US |
|
define HIRD_725_US |
|
define HIRD_800_US |
|
define HIRD_875_US |
|
define HIRD_950_US |
|
define HIRD_1025_US |
|
define HIRD_1100_US |
|
define HIRD_1175_US |
|
define USB_LPM_ATTRIBUT_BLINKSTATE_MASK |
Fields definition from a LPM TOKEN |
define USB_LPM_ATTRIBUT_FIRD_MASK |
|
define USB_LPM_ATTRIBUT_REMOTEWAKE_MASK |
|
define USB_LPM_ATTRIBUT_BLINKSTATE |
|
define USB_LPM_ATTRIBUT_FIRD |
|
define USB_LPM_ATTRIBUT_REMOTEWAKE |
|
define USB_LPM_ATTRIBUT_BLINKSTATE_L1 |
|
define USB_EP_ADDR_MASK |
Mask selecting the index part of an endpoint address. |
define USB_EP_DIR_IN |
Endpoint transfer direction is IN. |
define USB_EP_DIR_OUT |
Endpoint transfer direction is OUT. |
define USB_MAX_DESC_LEN |
Maximum length in bytes of a USB descriptor. |
define USB_CONFIG_ATTR_MUST_SET |
Must always be set. |
define USB_CONFIG_ATTR_BUS_POWERED |
Bus-powered. |
define USB_CONFIG_ATTR_SELF_POWERED |
Self-powered. |
define USB_CONFIG_ATTR_REMOTE_WAKEUP |
remote wakeup supported |
define USB_CONFIG_MAX_POWER |
Max power in mA. |
enum usb_reqid |
Standard USB requests (bRequest) |
enum usb_device_status |
Standard USB device status flags. |
enum usb_interface_status |
Standard USB Interface status flags. |
enum usb_endpoint_status |
Standard USB endpoint status flags. |
enum usb_device_feature |
Standard USB device feature flags. |
enum usb_device_hs_test_mode |
Test Mode possible on HS USB device. |
enum usb_endpoint_feature |
Standard USB endpoint feature/status flags. |
enum usb_test_mode_selector |
Standard USB Test Mode Selectors. |
enum usb_descriptor_type |
Standard USB descriptor types. |
enum usb_capability_type |
USB Device Capability types. |
enum usb_capability_extension_attr |
USB Device Capability - USB 2.0 Extension To fill bmAttributes field of usb_capa_ext_desc_t structure. |
enum usb_ep_type |
Standard USB endpoint transfer types. |
enum usb_langid |
Standard USB language IDs for string descriptors. |
struct usb_setup_req_t |
A USB Device SETUP request. |
struct usb_dev_desc_t |
Standard USB device descriptor structure. |
struct usb_dev_qual_desc_t |
Standard USB device qualifier descriptor structure. |
struct usb_dev_bos_desc_t |
USB Device BOS descriptor structure. |
struct usb_dev_capa_ext_desc_t |
USB Device Capabilities - USB 2.0 Extension Descriptor structure. |
struct usb_dev_lpm_desc_t |
USB Device LPM Descriptor structure. |
struct usb_association_desc_t |
Standard USB Interface Association Descriptor structure. |
struct usb_conf_desc_t |
Standard USB configuration descriptor structure. |
struct usb_iad_desc_t |
Standard USB association descriptor structure. |
struct usb_iface_desc_t |
Standard USB interface descriptor structure. |
struct usb_ep_desc_t |
Standard USB endpoint descriptor structure. |
struct usb_str_desc_t |
A standard USB string descriptor structure. |
struct usb_str_lgid_desc_t |
Members
define
USB_V2_0
Value for field bcdUSB.
USB Specification version 2.00
define
USB_V2_1
USB Specification version 2.01.
define
USB_REQ_DIR_OUT
USB request data transfer direction (bmRequestType)
Host to device
define
USB_REQ_DIR_IN
Device to host.
define
USB_REQ_DIR_MASK
Mask.
define
USB_REQ_TYPE_STANDARD
USB request types (bmRequestType)
Standard request
define
USB_REQ_TYPE_CLASS
Class-specific request.
define
USB_REQ_TYPE_VENDOR
Vendor-specific request.
define
USB_REQ_TYPE_MASK
Mask.
define
USB_REQ_RECIP_DEVICE
USB recipient codes (bmRequestType)
Recipient device
define
USB_REQ_RECIP_INTERFACE
Recipient interface.
define
USB_REQ_RECIP_ENDPOINT
Recipient endpoint.
define
USB_REQ_RECIP_OTHER
Recipient other.
define
USB_REQ_RECIP_MASK
Mask.
define
HIRD_50_US
define
HIRD_125_US
define
HIRD_200_US
define
HIRD_275_US
define
HIRD_350_US
define
HIRD_425_US
define
HIRD_500_US
define
HIRD_575_US
define
HIRD_650_US
define
HIRD_725_US
define
HIRD_800_US
define
HIRD_875_US
define
HIRD_950_US
define
HIRD_1025_US
define
HIRD_1100_US
define
HIRD_1175_US
define
USB_LPM_ATTRIBUT_BLINKSTATE_MASK
Fields definition from a LPM TOKEN
define
USB_LPM_ATTRIBUT_FIRD_MASK
define
USB_LPM_ATTRIBUT_REMOTEWAKE_MASK
define
USB_LPM_ATTRIBUT_BLINKSTATE
define
USB_LPM_ATTRIBUT_FIRD
define
USB_LPM_ATTRIBUT_REMOTEWAKE
define
USB_LPM_ATTRIBUT_BLINKSTATE_L1
define
USB_EP_ADDR_MASK
Mask selecting the index part of an endpoint address.
define
USB_EP_DIR_IN
Endpoint transfer direction is IN.
define
USB_EP_DIR_OUT
Endpoint transfer direction is OUT.
define
USB_MAX_DESC_LEN
Maximum length in bytes of a USB descriptor.
The maximum length of a USB descriptor is limited by the 8-bit bLength field.
define
USB_CONFIG_ATTR_MUST_SET
Must always be set.
define
USB_CONFIG_ATTR_BUS_POWERED
Bus-powered.
define
USB_CONFIG_ATTR_SELF_POWERED
Self-powered.
define
USB_CONFIG_ATTR_REMOTE_WAKEUP
remote wakeup supported
define
USB_CONFIG_MAX_POWER
Max power in mA.
enum
usb_reqid
Values | Descriptions |
---|---|
USB_REQ_GET_STATUS | |
USB_REQ_CLEAR_FEATURE | |
USB_REQ_SET_FEATURE | |
USB_REQ_SET_ADDRESS | |
USB_REQ_GET_DESCRIPTOR | |
USB_REQ_SET_DESCRIPTOR | |
USB_REQ_GET_CONFIGURATION | |
USB_REQ_SET_CONFIGURATION | |
USB_REQ_GET_INTERFACE | |
USB_REQ_SET_INTERFACE | |
USB_REQ_SYNCH_FRAME |
Standard USB requests (bRequest)
enum
usb_device_status
Values | Descriptions |
---|---|
USB_DEV_STATUS_BUS_POWERED | |
USB_DEV_STATUS_SELF_POWERED | |
USB_DEV_STATUS_REMOTEWAKEUP |
Standard USB device status flags.
enum
usb_interface_status
Values | Descriptions |
---|---|
USB_IFACE_STATUS_RESERVED |
Standard USB Interface status flags.
enum
usb_endpoint_status
Values | Descriptions |
---|---|
USB_EP_STATUS_HALTED |
Standard USB endpoint status flags.
enum
usb_device_feature
Values | Descriptions |
---|---|
USB_DEV_FEATURE_REMOTE_WAKEUP | Remote wakeup enabled. |
USB_DEV_FEATURE_TEST_MODE | USB test mode. |
USB_DEV_FEATURE_OTG_B_HNP_ENABLE | |
USB_DEV_FEATURE_OTG_A_HNP_SUPPORT | |
USB_DEV_FEATURE_OTG_A_ALT_HNP_SUPPORT |
Standard USB device feature flags.
valid for SetFeature request.
enum
usb_device_hs_test_mode
Values | Descriptions |
---|---|
USB_DEV_TEST_MODE_J | |
USB_DEV_TEST_MODE_K | |
USB_DEV_TEST_MODE_SE0_NAK | |
USB_DEV_TEST_MODE_PACKET | |
USB_DEV_TEST_MODE_FORCE_ENABLE |
Test Mode possible on HS USB device.
valid for USB_DEV_FEATURE_TEST_MODE request.
enum
usb_endpoint_feature
Values | Descriptions |
---|---|
USB_EP_FEATURE_HALT |
Standard USB endpoint feature/status flags.
enum
usb_test_mode_selector
Values | Descriptions |
---|---|
USB_TEST_J | |
USB_TEST_K | |
USB_TEST_SE0_NAK | |
USB_TEST_PACKET | |
USB_TEST_FORCE_ENABLE |
Standard USB Test Mode Selectors.
enum
usb_descriptor_type
Values | Descriptions |
---|---|
USB_DT_DEVICE | |
USB_DT_CONFIGURATION | |
USB_DT_STRING | |
USB_DT_INTERFACE | |
USB_DT_ENDPOINT | |
USB_DT_DEVICE_QUALIFIER | |
USB_DT_OTHER_SPEED_CONFIGURATION | |
USB_DT_INTERFACE_POWER | |
USB_DT_OTG | |
USB_DT_IAD | |
USB_DT_BOS | |
USB_DT_DEVICE_CAPABILITY |
Standard USB descriptor types.
enum
usb_capability_type
Values | Descriptions |
---|---|
USB_DC_USB20_EXTENSION |
USB Device Capability types.
enum
usb_capability_extension_attr
Values | Descriptions |
---|---|
USB_DC_EXT_LPM |
USB Device Capability - USB 2.0 Extension To fill bmAttributes field of usb_capa_ext_desc_t structure.
enum
usb_ep_type
Values | Descriptions |
---|---|
USB_EP_TYPE_CONTROL | |
USB_EP_TYPE_ISOCHRONOUS | |
USB_EP_TYPE_BULK | |
USB_EP_TYPE_INTERRUPT | |
USB_EP_TYPE_MASK |
Standard USB endpoint transfer types.
enum
usb_langid
Values | Descriptions |
---|---|
USB_LANGID_EN_US | English (United States) |
Standard USB language IDs for string descriptors.
struct usb_setup_req_t
A USB Device SETUP request.
The data payload of SETUP packets always follows this structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bmRequestType |
|
public uint8_t bRequest |
|
public le16_t wValue |
|
public le16_t wIndex |
|
public le16_t wLength |
Members
public uint8_t
bmRequestType
public uint8_t
bRequest
public le16_t
wValue
public le16_t
wIndex
public le16_t
wLength
struct usb_dev_desc_t
Standard USB device descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public le16_t bcdUSB |
|
public uint8_t bDeviceClass |
|
public uint8_t bDeviceSubClass |
|
public uint8_t bDeviceProtocol |
|
public uint8_t bMaxPacketSize0 |
|
public le16_t idVendor |
|
public le16_t idProduct |
|
public le16_t bcdDevice |
|
public uint8_t iManufacturer |
|
public uint8_t iProduct |
|
public uint8_t iSerialNumber |
|
public uint8_t bNumConfigurations |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public le16_t
bcdUSB
public uint8_t
bDeviceClass
public uint8_t
bDeviceSubClass
public uint8_t
bDeviceProtocol
public uint8_t
bMaxPacketSize0
public le16_t
idVendor
public le16_t
idProduct
public le16_t
bcdDevice
public uint8_t
iManufacturer
public uint8_t
iProduct
public uint8_t
iSerialNumber
public uint8_t
bNumConfigurations
struct usb_dev_qual_desc_t
Standard USB device qualifier descriptor structure.
This descriptor contains information about the device when running at the "other" speed (i.e. if the device is currently operating at high speed, this descriptor can be used to determine what would change if the device was operating at full speed.)
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public le16_t bcdUSB |
|
public uint8_t bDeviceClass |
|
public uint8_t bDeviceSubClass |
|
public uint8_t bDeviceProtocol |
|
public uint8_t bMaxPacketSize0 |
|
public uint8_t bNumConfigurations |
|
public uint8_t bReserved |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public le16_t
bcdUSB
public uint8_t
bDeviceClass
public uint8_t
bDeviceSubClass
public uint8_t
bDeviceProtocol
public uint8_t
bMaxPacketSize0
public uint8_t
bNumConfigurations
public uint8_t
bReserved
struct usb_dev_bos_desc_t
USB Device BOS descriptor structure.
The BOS descriptor (Binary device Object Store) defines a root descriptor that is similar to the configuration descriptor, and is the base descriptor for accessing a family of related descriptors. A host can read a BOS descriptor and learn from the wTotalLength field the entire size of the device-level descriptor set, or it can read in the entire BOS descriptor set of device capabilities. The host accesses this descriptor using the GetDescriptor() request. The descriptor type in the GetDescriptor() request is set to BOS.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public le16_t wTotalLength |
|
public uint8_t bNumDeviceCaps |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public le16_t
wTotalLength
public uint8_t
bNumDeviceCaps
struct usb_dev_capa_ext_desc_t
USB Device Capabilities - USB 2.0 Extension Descriptor structure.
Defines the set of USB 1.1-specific device level capabilities.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public uint8_t bDevCapabilityType |
|
public le32_t bmAttributes |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public uint8_t
bDevCapabilityType
public le32_t
bmAttributes
struct usb_dev_lpm_desc_t
USB Device LPM Descriptor structure.
The BOS descriptor and capabilities descriptors for LPM.
Summary
Members | Descriptions |
---|---|
public usb_dev_bos_desc_t bos |
|
public usb_dev_capa_ext_desc_t capa_ext |
Members
public
usb_dev_bos_desc_t
bos
public
usb_dev_capa_ext_desc_t
capa_ext
struct usb_association_desc_t
Standard USB Interface Association Descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
size of this descriptor in bytes |
public uint8_t bDescriptorType |
INTERFACE descriptor type. |
public uint8_t bFirstInterface |
Number of interface. |
public uint8_t bInterfaceCount |
value to select alternate setting |
public uint8_t bFunctionClass |
Class code assigned by the USB. |
public uint8_t bFunctionSubClass |
Sub-class code assigned by the USB. |
public uint8_t bFunctionProtocol |
Protocol code assigned by the USB. |
public uint8_t iFunction |
Index of string descriptor. |
Members
public uint8_t
bLength
size of this descriptor in bytes
public uint8_t
bDescriptorType
INTERFACE descriptor type.
public uint8_t
bFirstInterface
Number of interface.
public uint8_t
bInterfaceCount
value to select alternate setting
public uint8_t
bFunctionClass
Class code assigned by the USB.
public uint8_t
bFunctionSubClass
Sub-class code assigned by the USB.
public uint8_t
bFunctionProtocol
Protocol code assigned by the USB.
public uint8_t
iFunction
Index of string descriptor.
struct usb_conf_desc_t
Standard USB configuration descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public le16_t wTotalLength |
|
public uint8_t bNumInterfaces |
|
public uint8_t bConfigurationValue |
|
public uint8_t iConfiguration |
|
public uint8_t bmAttributes |
|
public uint8_t bMaxPower |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public le16_t
wTotalLength
public uint8_t
bNumInterfaces
public uint8_t
bConfigurationValue
public uint8_t
iConfiguration
public uint8_t
bmAttributes
public uint8_t
bMaxPower
struct usb_iad_desc_t
Standard USB association descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
Size of this descriptor in bytes. |
public uint8_t bDescriptorType |
Interface descriptor type. |
public uint8_t bFirstInterface |
Number of interface. |
public uint8_t bInterfaceCount |
value to select alternate setting |
public uint8_t bFunctionClass |
Class code assigned by the USB. |
public uint8_t bFunctionSubClass |
Sub-class code assigned by the USB. |
public uint8_t bFunctionProtocol |
Protocol code assigned by the USB. |
public uint8_t iFunction |
Index of string descriptor. |
Members
public uint8_t
bLength
Size of this descriptor in bytes.
public uint8_t
bDescriptorType
Interface descriptor type.
public uint8_t
bFirstInterface
Number of interface.
public uint8_t
bInterfaceCount
value to select alternate setting
public uint8_t
bFunctionClass
Class code assigned by the USB.
public uint8_t
bFunctionSubClass
Sub-class code assigned by the USB.
public uint8_t
bFunctionProtocol
Protocol code assigned by the USB.
public uint8_t
iFunction
Index of string descriptor.
struct usb_iface_desc_t
Standard USB interface descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public uint8_t bInterfaceNumber |
|
public uint8_t bAlternateSetting |
|
public uint8_t bNumEndpoints |
|
public uint8_t bInterfaceClass |
|
public uint8_t bInterfaceSubClass |
|
public uint8_t bInterfaceProtocol |
|
public uint8_t iInterface |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public uint8_t
bInterfaceNumber
public uint8_t
bAlternateSetting
public uint8_t
bNumEndpoints
public uint8_t
bInterfaceClass
public uint8_t
bInterfaceSubClass
public uint8_t
bInterfaceProtocol
public uint8_t
iInterface
struct usb_ep_desc_t
Standard USB endpoint descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
|
public uint8_t bEndpointAddress |
|
public uint8_t bmAttributes |
|
public le16_t wMaxPacketSize |
|
public uint8_t bInterval |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
public uint8_t
bEndpointAddress
public uint8_t
bmAttributes
public le16_t
wMaxPacketSize
public uint8_t
bInterval
struct usb_str_desc_t
A standard USB string descriptor structure.
Summary
Members | Descriptions |
---|---|
public uint8_t bLength |
|
public uint8_t bDescriptorType |
Members
public uint8_t
bLength
public uint8_t
bDescriptorType
struct usb_str_lgid_desc_t
Summary
Members | Descriptions |
---|---|
public usb_str_desc_t desc |
|
public le16_t string |