Open FFBoard
Open source force feedback firmware
tusb_types.h File Reference

Go to the source code of this file.

Classes

struct  tusb_rhport_init_t
 
struct  TU_ATTR_PACKED
 AUDIO Channel Cluster Descriptor (4.1) More...
 
struct  TU_ATTR_PACKED::TU_ATTR_PACKED
 

Typedefs

typedef TU_ATTR_PACKED_BEGIN TU_ATTR_BIT_FIELD_ORDER_BEGIN struct TU_ATTR_PACKED tusb_desc_device_t
 USB Device Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_bos_t
 
typedef struct TU_ATTR_PACKED tusb_desc_configuration_t
 USB Configuration Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_interface_t
 USB Interface Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_endpoint_t
 USB Endpoint Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_other_speed_t
 USB Other Speed Configuration Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_device_qualifier_t
 USB Device Qualifier Descriptor. More...
 
typedef struct TU_ATTR_PACKED tusb_desc_interface_assoc_t
 USB Interface Association Descriptor (IAD ECN) More...
 
typedef struct TU_ATTR_PACKED tusb_desc_string_t
 
typedef struct TU_ATTR_PACKED tusb_desc_bos_platform_t
 
typedef struct TU_ATTR_PACKED tusb_desc_webusb_url_t
 
typedef struct TU_ATTR_PACKED tusb_desc_dfu_functional_t
 
typedef struct TU_ATTR_PACKED tusb_control_request_t
 

Enumerations

enum  tusb_speed_t {
  TUSB_SPEED_FULL = 0 , TUSB_SPEED_LOW = 1 , TUSB_SPEED_HIGH = 2 , TUSB_SPEED_AUTO = 0xaa ,
  TUSB_SPEED_INVALID = 0xff
}
 defined base on EHCI specs value for Endpoint Speed More...
 
enum  tusb_xfer_type_t { TUSB_XFER_CONTROL = 0 , TUSB_XFER_ISOCHRONOUS = 1 , TUSB_XFER_BULK = 2 , TUSB_XFER_INTERRUPT = 3 }
 defined base on USB Specs Endpoint's bmAttributes More...
 
enum  tusb_dir_t { TUSB_DIR_OUT = 0 , TUSB_DIR_IN = 1 , TUSB_DIR_IN_MASK = 0x80 }
 
enum  { TUSB_EPSIZE_BULK_FS = 64 , TUSB_EPSIZE_BULK_HS = 512 , TUSB_EPSIZE_ISO_FS_MAX = 1023 , TUSB_EPSIZE_ISO_HS_MAX = 1024 }
 
enum  tusb_iso_ep_attribute_t {
  TUSB_ISO_EP_ATT_NO_SYNC = 0x00 , TUSB_ISO_EP_ATT_ASYNCHRONOUS = 0x04 , TUSB_ISO_EP_ATT_ADAPTIVE = 0x08 , TUSB_ISO_EP_ATT_SYNCHRONOUS = 0x0C ,
  TUSB_ISO_EP_ATT_DATA = 0x00 , TUSB_ISO_EP_ATT_EXPLICIT_FB = 0x10 , TUSB_ISO_EP_ATT_IMPLICIT_FB = 0x20
}
 Isochronous Endpoint Attributes. More...
 
enum  tusb_desc_type_t {
  TUSB_DESC_DEVICE = 0x01 , TUSB_DESC_CONFIGURATION = 0x02 , TUSB_DESC_STRING = 0x03 , TUSB_DESC_INTERFACE = 0x04 ,
  TUSB_DESC_ENDPOINT = 0x05 , TUSB_DESC_DEVICE_QUALIFIER = 0x06 , TUSB_DESC_OTHER_SPEED_CONFIG = 0x07 , TUSB_DESC_INTERFACE_POWER = 0x08 ,
  TUSB_DESC_OTG = 0x09 , TUSB_DESC_DEBUG = 0x0A , TUSB_DESC_INTERFACE_ASSOCIATION = 0x0B , TUSB_DESC_BOS = 0x0F ,
  TUSB_DESC_DEVICE_CAPABILITY = 0x10 , TUSB_DESC_FUNCTIONAL = 0x21 , TUSB_DESC_CS_DEVICE = 0x21 , TUSB_DESC_CS_CONFIGURATION = 0x22 ,
  TUSB_DESC_CS_STRING = 0x23 , TUSB_DESC_CS_INTERFACE = 0x24 , TUSB_DESC_CS_ENDPOINT = 0x25 , TUSB_DESC_SUPERSPEED_ENDPOINT_COMPANION = 0x30 ,
  TUSB_DESC_SUPERSPEED_ISO_ENDPOINT_COMPANION = 0x31
}
 USB Descriptor Types. More...
 
enum  tusb_request_code_t {
  TUSB_REQ_GET_STATUS = 0 , TUSB_REQ_CLEAR_FEATURE = 1 , TUSB_REQ_RESERVED = 2 , TUSB_REQ_SET_FEATURE = 3 ,
  TUSB_REQ_RESERVED2 = 4 , TUSB_REQ_SET_ADDRESS = 5 , TUSB_REQ_GET_DESCRIPTOR = 6 , TUSB_REQ_SET_DESCRIPTOR = 7 ,
  TUSB_REQ_GET_CONFIGURATION = 8 , TUSB_REQ_SET_CONFIGURATION = 9 , TUSB_REQ_GET_INTERFACE = 10 , TUSB_REQ_SET_INTERFACE = 11 ,
  TUSB_REQ_SYNCH_FRAME = 12
}
 
enum  tusb_request_feature_selector_t { TUSB_REQ_FEATURE_EDPT_HALT = 0 , TUSB_REQ_FEATURE_REMOTE_WAKEUP = 1 , TUSB_REQ_FEATURE_TEST_MODE = 2 }
 
enum  tusb_request_type_t { TUSB_REQ_TYPE_STANDARD = 0 , TUSB_REQ_TYPE_CLASS , TUSB_REQ_TYPE_VENDOR , TUSB_REQ_TYPE_INVALID }
 
enum  tusb_request_recipient_t { TUSB_REQ_RCPT_DEVICE =0 , TUSB_REQ_RCPT_INTERFACE , TUSB_REQ_RCPT_ENDPOINT , TUSB_REQ_RCPT_OTHER }
 
enum  tusb_class_code_t {
  TUSB_CLASS_UNSPECIFIED = 0 , TUSB_CLASS_AUDIO = 1 , TUSB_CLASS_CDC = 2 , TUSB_CLASS_HID = 3 ,
  TUSB_CLASS_RESERVED_4 = 4 , TUSB_CLASS_PHYSICAL = 5 , TUSB_CLASS_IMAGE = 6 , TUSB_CLASS_PRINTER = 7 ,
  TUSB_CLASS_MSC = 8 , TUSB_CLASS_HUB = 9 , TUSB_CLASS_CDC_DATA = 10 , TUSB_CLASS_SMART_CARD = 11 ,
  TUSB_CLASS_RESERVED_12 = 12 , TUSB_CLASS_CONTENT_SECURITY = 13 , TUSB_CLASS_VIDEO = 14 , TUSB_CLASS_PERSONAL_HEALTHCARE = 15 ,
  TUSB_CLASS_AUDIO_VIDEO = 16 , TUSB_CLASS_DIAGNOSTIC = 0xDC , TUSB_CLASS_WIRELESS_CONTROLLER = 0xE0 , TUSB_CLASS_MISC = 0xEF ,
  TUSB_CLASS_APPLICATION_SPECIFIC = 0xFE , TUSB_CLASS_VENDOR_SPECIFIC = 0xFF
}
 
enum  misc_subclass_type_t { MISC_SUBCLASS_COMMON = 2 }
 
enum  misc_protocol_type_t { MISC_PROTOCOL_IAD = 1 }
 
enum  app_subclass_type_t { APP_SUBCLASS_USBTMC = 0x03 , APP_SUBCLASS_DFU_RUNTIME = 0x01 }
 
enum  device_capability_type_t {
  DEVICE_CAPABILITY_WIRELESS_USB = 0x01 , DEVICE_CAPABILITY_USB20_EXTENSION = 0x02 , DEVICE_CAPABILITY_SUPERSPEED_USB = 0x03 , DEVICE_CAPABILITY_CONTAINER_id = 0x04 ,
  DEVICE_CAPABILITY_PLATFORM = 0x05 , DEVICE_CAPABILITY_POWER_DELIVERY = 0x06 , DEVICE_CAPABILITY_BATTERY_INFO = 0x07 , DEVICE_CAPABILITY_PD_CONSUMER_PORT = 0x08 ,
  DEVICE_CAPABILITY_PD_PROVIDER_PORT = 0x09 , DEVICE_CAPABILITY_SUPERSPEED_PLUS = 0x0A , DEVICE_CAPABILITY_PRECESION_TIME_MEASUREMENT = 0x0B , DEVICE_CAPABILITY_WIRELESS_USB_EXT = 0x0C ,
  DEVICE_CAPABILITY_BILLBOARD = 0x0D , DEVICE_CAPABILITY_AUTHENTICATION = 0x0E , DEVICE_CAPABILITY_BILLBOARD_EX = 0x0F , DEVICE_CAPABILITY_CONFIGURATION_SUMMARY = 0x10
}
 
enum  { TUSB_DESC_CONFIG_ATT_REMOTE_WAKEUP = 1u << 5 , TUSB_DESC_CONFIG_ATT_SELF_POWERED = 1u << 6 }
 
enum  tusb_feature_test_mode_t {
  TUSB_FEATURE_TEST_J = 1 , TUSB_FEATURE_TEST_K = 2 , TUSB_FEATURE_TEST_SE0_NAK = 3 , TUSB_FEATURE_TEST_PACKET = 4 ,
  TUSB_FEATURE_TEST_FORCE_ENABLE = 5
}
 
enum  xfer_result_t {
  XFER_RESULT_SUCCESS = 0 , XFER_RESULT_FAILED , XFER_RESULT_STALLED , XFER_RESULT_TIMEOUT ,
  XFER_RESULT_INVALID
}
 
enum  { DESC_OFFSET_LEN = 0 , DESC_OFFSET_TYPE = 1 }
 
enum  { INTERFACE_INVALID_NUMBER = 0xff }
 
enum  microsoft_os_20_type_t {
  MS_OS_20_SET_HEADER_DESCRIPTOR = 0x00 , MS_OS_20_SUBSET_HEADER_CONFIGURATION = 0x01 , MS_OS_20_SUBSET_HEADER_FUNCTION = 0x02 , MS_OS_20_FEATURE_COMPATBLE_ID = 0x03 ,
  MS_OS_20_FEATURE_REG_PROPERTY = 0x04 , MS_OS_20_FEATURE_MIN_RESUME_TIME = 0x05 , MS_OS_20_FEATURE_MODEL_ID = 0x06 , MS_OS_20_FEATURE_CCGP_DEVICE = 0x07 ,
  MS_OS_20_FEATURE_VENDOR_REVISION = 0x08
}
 
enum  { CONTROL_STAGE_IDLE = 0 , CONTROL_STAGE_SETUP , CONTROL_STAGE_DATA , CONTROL_STAGE_ACK }
 
enum  { TUSB_INDEX_INVALID_8 = 0xFFu }
 

Functions

 TU_VERIFY_STATIC (sizeof(tusb_desc_device_t)==18, "size is not correct")
 
 TU_VERIFY_STATIC (sizeof(tusb_desc_bos_t)==5, "size is not correct")
 
TU_ATTR_PACKED_END TU_ATTR_BIT_FIELD_ORDER_END static TU_ATTR_ALWAYS_INLINE tusb_dir_t tu_edpt_dir (uint8_t addr)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_edpt_number (uint8_t addr)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_edpt_addr (uint8_t num, uint8_t dir)
 
static TU_ATTR_ALWAYS_INLINE uint16_t tu_edpt_packet_size (tusb_desc_endpoint_t const *desc_ep)
 
static TU_ATTR_ALWAYS_INLINE const char * tu_edpt_type_str (tusb_xfer_type_t t)
 
static TU_ATTR_ALWAYS_INLINE uint8_t const * tu_desc_next (void const *desc)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_desc_type (void const *desc)
 
static TU_ATTR_ALWAYS_INLINE uint8_t tu_desc_len (void const *desc)
 
uint8_t const * tu_desc_find (uint8_t const *desc, uint8_t const *end, uint8_t byte1)
 
uint8_t const * tu_desc_find2 (uint8_t const *desc, uint8_t const *end, uint8_t byte1, uint8_t byte2)
 
uint8_t const * tu_desc_find3 (uint8_t const *desc, uint8_t const *end, uint8_t byte1, uint8_t byte2, uint8_t byte3)
 

Variables

 C
 

Typedef Documentation

◆ tusb_control_request_t

◆ tusb_desc_bos_platform_t

◆ tusb_desc_bos_t

◆ tusb_desc_configuration_t

USB Configuration Descriptor.

◆ tusb_desc_device_qualifier_t

USB Device Qualifier Descriptor.

◆ tusb_desc_device_t

typedef TU_ATTR_PACKED_BEGIN TU_ATTR_BIT_FIELD_ORDER_BEGIN struct TU_ATTR_PACKED tusb_desc_device_t

USB Device Descriptor.

◆ tusb_desc_dfu_functional_t

◆ tusb_desc_endpoint_t

USB Endpoint Descriptor.

◆ tusb_desc_interface_assoc_t

USB Interface Association Descriptor (IAD ECN)

◆ tusb_desc_interface_t

USB Interface Descriptor.

◆ tusb_desc_other_speed_t

USB Other Speed Configuration Descriptor.

◆ tusb_desc_string_t

◆ tusb_desc_webusb_url_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
TUSB_EPSIZE_BULK_FS 
TUSB_EPSIZE_BULK_HS 
TUSB_EPSIZE_ISO_FS_MAX 
TUSB_EPSIZE_ISO_HS_MAX 

Definition at line 72 of file tusb_types.h.

◆ anonymous enum

anonymous enum
Enumerator
TUSB_DESC_CONFIG_ATT_REMOTE_WAKEUP 
TUSB_DESC_CONFIG_ATT_SELF_POWERED 

Definition at line 217 of file tusb_types.h.

◆ anonymous enum

anonymous enum
Enumerator
DESC_OFFSET_LEN 
DESC_OFFSET_TYPE 

Definition at line 245 of file tusb_types.h.

◆ anonymous enum

anonymous enum
Enumerator
INTERFACE_INVALID_NUMBER 

Definition at line 250 of file tusb_types.h.

◆ anonymous enum

anonymous enum
Enumerator
CONTROL_STAGE_IDLE 
CONTROL_STAGE_SETUP 
CONTROL_STAGE_DATA 
CONTROL_STAGE_ACK 

Definition at line 266 of file tusb_types.h.

◆ anonymous enum

anonymous enum
Enumerator
TUSB_INDEX_INVALID_8 

Definition at line 273 of file tusb_types.h.

◆ app_subclass_type_t

Enumerator
APP_SUBCLASS_USBTMC 
APP_SUBCLASS_DFU_RUNTIME 

Definition at line 193 of file tusb_types.h.

◆ device_capability_type_t

Enumerator
DEVICE_CAPABILITY_WIRELESS_USB 
DEVICE_CAPABILITY_USB20_EXTENSION 
DEVICE_CAPABILITY_SUPERSPEED_USB 
DEVICE_CAPABILITY_CONTAINER_id 
DEVICE_CAPABILITY_PLATFORM 
DEVICE_CAPABILITY_POWER_DELIVERY 
DEVICE_CAPABILITY_BATTERY_INFO 
DEVICE_CAPABILITY_PD_CONSUMER_PORT 
DEVICE_CAPABILITY_PD_PROVIDER_PORT 
DEVICE_CAPABILITY_SUPERSPEED_PLUS 
DEVICE_CAPABILITY_PRECESION_TIME_MEASUREMENT 
DEVICE_CAPABILITY_WIRELESS_USB_EXT 
DEVICE_CAPABILITY_BILLBOARD 
DEVICE_CAPABILITY_AUTHENTICATION 
DEVICE_CAPABILITY_BILLBOARD_EX 
DEVICE_CAPABILITY_CONFIGURATION_SUMMARY 

Definition at line 198 of file tusb_types.h.

◆ microsoft_os_20_type_t

Enumerator
MS_OS_20_SET_HEADER_DESCRIPTOR 
MS_OS_20_SUBSET_HEADER_CONFIGURATION 
MS_OS_20_SUBSET_HEADER_FUNCTION 
MS_OS_20_FEATURE_COMPATBLE_ID 
MS_OS_20_FEATURE_REG_PROPERTY 
MS_OS_20_FEATURE_MIN_RESUME_TIME 
MS_OS_20_FEATURE_MODEL_ID 
MS_OS_20_FEATURE_CCGP_DEVICE 
MS_OS_20_FEATURE_VENDOR_REVISION 

Definition at line 254 of file tusb_types.h.

◆ misc_protocol_type_t

Enumerator
MISC_PROTOCOL_IAD 

Definition at line 189 of file tusb_types.h.

◆ misc_subclass_type_t

Enumerator
MISC_SUBCLASS_COMMON 

Definition at line 184 of file tusb_types.h.

◆ tusb_class_code_t

Enumerator
TUSB_CLASS_UNSPECIFIED 
TUSB_CLASS_AUDIO 
TUSB_CLASS_CDC 
TUSB_CLASS_HID 
TUSB_CLASS_RESERVED_4 
TUSB_CLASS_PHYSICAL 
TUSB_CLASS_IMAGE 
TUSB_CLASS_PRINTER 
TUSB_CLASS_MSC 
TUSB_CLASS_HUB 
TUSB_CLASS_CDC_DATA 
TUSB_CLASS_SMART_CARD 
TUSB_CLASS_RESERVED_12 
TUSB_CLASS_CONTENT_SECURITY 
TUSB_CLASS_VIDEO 
TUSB_CLASS_PERSONAL_HEALTHCARE 
TUSB_CLASS_AUDIO_VIDEO 
TUSB_CLASS_DIAGNOSTIC 
TUSB_CLASS_WIRELESS_CONTROLLER 
TUSB_CLASS_MISC 
TUSB_CLASS_APPLICATION_SPECIFIC 
TUSB_CLASS_VENDOR_SPECIFIC 

Definition at line 158 of file tusb_types.h.

◆ tusb_desc_type_t

USB Descriptor Types.

Enumerator
TUSB_DESC_DEVICE 
TUSB_DESC_CONFIGURATION 
TUSB_DESC_STRING 
TUSB_DESC_INTERFACE 
TUSB_DESC_ENDPOINT 
TUSB_DESC_DEVICE_QUALIFIER 
TUSB_DESC_OTHER_SPEED_CONFIG 
TUSB_DESC_INTERFACE_POWER 
TUSB_DESC_OTG 
TUSB_DESC_DEBUG 
TUSB_DESC_INTERFACE_ASSOCIATION 
TUSB_DESC_BOS 
TUSB_DESC_DEVICE_CAPABILITY 
TUSB_DESC_FUNCTIONAL 
TUSB_DESC_CS_DEVICE 
TUSB_DESC_CS_CONFIGURATION 
TUSB_DESC_CS_STRING 
TUSB_DESC_CS_INTERFACE 
TUSB_DESC_CS_ENDPOINT 
TUSB_DESC_SUPERSPEED_ENDPOINT_COMPANION 
TUSB_DESC_SUPERSPEED_ISO_ENDPOINT_COMPANION 

Definition at line 92 of file tusb_types.h.

◆ tusb_dir_t

enum tusb_dir_t
Enumerator
TUSB_DIR_OUT 
TUSB_DIR_IN 
TUSB_DIR_IN_MASK 

Definition at line 65 of file tusb_types.h.

◆ tusb_feature_test_mode_t

Enumerator
TUSB_FEATURE_TEST_J 
TUSB_FEATURE_TEST_K 
TUSB_FEATURE_TEST_SE0_NAK 
TUSB_FEATURE_TEST_PACKET 
TUSB_FEATURE_TEST_FORCE_ENABLE 

Definition at line 225 of file tusb_types.h.

◆ tusb_iso_ep_attribute_t

Isochronous Endpoint Attributes.

Enumerator
TUSB_ISO_EP_ATT_NO_SYNC 
TUSB_ISO_EP_ATT_ASYNCHRONOUS 
TUSB_ISO_EP_ATT_ADAPTIVE 
TUSB_ISO_EP_ATT_SYNCHRONOUS 
TUSB_ISO_EP_ATT_DATA 

Data End Point.

TUSB_ISO_EP_ATT_EXPLICIT_FB 

Feedback End Point.

TUSB_ISO_EP_ATT_IMPLICIT_FB 

Data endpoint that also serves as an implicit feedback.

Definition at line 81 of file tusb_types.h.

◆ tusb_request_code_t

Enumerator
TUSB_REQ_GET_STATUS 
TUSB_REQ_CLEAR_FEATURE 
TUSB_REQ_RESERVED 
TUSB_REQ_SET_FEATURE 
TUSB_REQ_RESERVED2 
TUSB_REQ_SET_ADDRESS 
TUSB_REQ_GET_DESCRIPTOR 
TUSB_REQ_SET_DESCRIPTOR 
TUSB_REQ_GET_CONFIGURATION 
TUSB_REQ_SET_CONFIGURATION 
TUSB_REQ_GET_INTERFACE 
TUSB_REQ_SET_INTERFACE 
TUSB_REQ_SYNCH_FRAME 

Definition at line 121 of file tusb_types.h.

◆ tusb_request_feature_selector_t

Enumerator
TUSB_REQ_FEATURE_EDPT_HALT 
TUSB_REQ_FEATURE_REMOTE_WAKEUP 
TUSB_REQ_FEATURE_TEST_MODE 

Definition at line 137 of file tusb_types.h.

◆ tusb_request_recipient_t

Enumerator
TUSB_REQ_RCPT_DEVICE 
TUSB_REQ_RCPT_INTERFACE 
TUSB_REQ_RCPT_ENDPOINT 
TUSB_REQ_RCPT_OTHER 

Definition at line 150 of file tusb_types.h.

◆ tusb_request_type_t

Enumerator
TUSB_REQ_TYPE_STANDARD 
TUSB_REQ_TYPE_CLASS 
TUSB_REQ_TYPE_VENDOR 
TUSB_REQ_TYPE_INVALID 

Definition at line 143 of file tusb_types.h.

◆ tusb_speed_t

defined base on EHCI specs value for Endpoint Speed

Enumerator
TUSB_SPEED_FULL 
TUSB_SPEED_LOW 
TUSB_SPEED_HIGH 
TUSB_SPEED_AUTO 
TUSB_SPEED_INVALID 

Definition at line 49 of file tusb_types.h.

◆ tusb_xfer_type_t

defined base on USB Specs Endpoint's bmAttributes

Enumerator
TUSB_XFER_CONTROL 
TUSB_XFER_ISOCHRONOUS 
TUSB_XFER_BULK 
TUSB_XFER_INTERRUPT 

Definition at line 58 of file tusb_types.h.

◆ xfer_result_t

Enumerator
XFER_RESULT_SUCCESS 
XFER_RESULT_FAILED 
XFER_RESULT_STALLED 
XFER_RESULT_TIMEOUT 
XFER_RESULT_INVALID 

Definition at line 236 of file tusb_types.h.

Function Documentation

◆ tu_desc_find()

uint8_t const * tu_desc_find ( uint8_t const *  desc,
uint8_t const *  end,
uint8_t  byte1 
)

Definition at line 143 of file tusb.c.

◆ tu_desc_find2()

uint8_t const * tu_desc_find2 ( uint8_t const *  desc,
uint8_t const *  end,
uint8_t  byte1,
uint8_t  byte2 
)

Definition at line 151 of file tusb.c.

◆ tu_desc_find3()

uint8_t const * tu_desc_find3 ( uint8_t const *  desc,
uint8_t const *  end,
uint8_t  byte1,
uint8_t  byte2,
uint8_t  byte3 
)

Definition at line 159 of file tusb.c.

◆ tu_desc_len()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_desc_len ( void const *  desc)
inlinestatic

Definition at line 542 of file tusb_types.h.

◆ tu_desc_next()

static TU_ATTR_ALWAYS_INLINE uint8_t const * tu_desc_next ( void const *  desc)
inlinestatic

Definition at line 531 of file tusb_types.h.

◆ tu_desc_type()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_desc_type ( void const *  desc)
inlinestatic

Definition at line 537 of file tusb_types.h.

◆ tu_edpt_addr()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_edpt_addr ( uint8_t  num,
uint8_t  dir 
)
inlinestatic

Definition at line 511 of file tusb_types.h.

◆ tu_edpt_dir()

TU_ATTR_PACKED_END TU_ATTR_BIT_FIELD_ORDER_END static TU_ATTR_ALWAYS_INLINE tusb_dir_t tu_edpt_dir ( uint8_t  addr)
inlinestatic

Definition at line 502 of file tusb_types.h.

◆ tu_edpt_number()

static TU_ATTR_ALWAYS_INLINE uint8_t tu_edpt_number ( uint8_t  addr)
inlinestatic

Definition at line 507 of file tusb_types.h.

◆ tu_edpt_packet_size()

static TU_ATTR_ALWAYS_INLINE uint16_t tu_edpt_packet_size ( tusb_desc_endpoint_t const *  desc_ep)
inlinestatic

Definition at line 515 of file tusb_types.h.

◆ tu_edpt_type_str()

static TU_ATTR_ALWAYS_INLINE const char * tu_edpt_type_str ( tusb_xfer_type_t  t)
inlinestatic

Definition at line 520 of file tusb_types.h.

◆ TU_VERIFY_STATIC() [1/2]

TU_VERIFY_STATIC ( sizeof(tusb_desc_bos_t = =5,
"size is not correct"   
)

◆ TU_VERIFY_STATIC() [2/2]

TU_VERIFY_STATIC ( sizeof(tusb_desc_device_t = =18,
"size is not correct"   
)

Variable Documentation

◆ C

C
extern
Initial value:
{
#endif
typedef enum {
TUSB_ROLE_INVALID = 0,
TUSB_ROLE_DEVICE = 0x1,
TUSB_ROLE_HOST = 0x2,
} tusb_role_t