ReactOS  0.4.13-dev-99-g7e18b6d
usb100.h File Reference
#include <pshpack1.h>
#include <poppack.h>
Include dependency graph for usb100.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _USB_DEVICE_DESCRIPTOR
 
struct  _USB_ENDPOINT_DESCRIPTOR
 
struct  _USB_CONFIGURATION_DESCRIPTOR
 
struct  _USB_INTERFACE_DESCRIPTOR
 
struct  _USB_STRING_DESCRIPTOR
 
struct  _USB_COMMON_DESCRIPTOR
 
struct  _USB_HUB_DESCRIPTOR
 
struct  _USB_CONFIGURATION_POWER_DESCRIPTOR
 
struct  _USB_INTERFACE_POWER_DESCRIPTOR
 

Macros

#define BMREQUEST_HOST_TO_DEVICE   0
 
#define BMREQUEST_DEVICE_TO_HOST   1
 
#define BMREQUEST_STANDARD   0
 
#define BMREQUEST_CLASS   1
 
#define BMREQUEST_VENDOR   2
 
#define BMREQUEST_TO_DEVICE   0
 
#define BMREQUEST_TO_INTERFACE   1
 
#define BMREQUEST_TO_ENDPOINT   2
 
#define BMREQUEST_TO_OTHER   3
 
#define MAXIMUM_USB_STRING_LENGTH   255
 
#define USB_GETSTATUS_SELF_POWERED   0x01
 
#define USB_GETSTATUS_REMOTE_WAKEUP_ENABLED   0x02
 
#define USB_DEVICE_DESCRIPTOR_TYPE   0x01
 
#define USB_CONFIGURATION_DESCRIPTOR_TYPE   0x02
 
#define USB_STRING_DESCRIPTOR_TYPE   0x03
 
#define USB_INTERFACE_DESCRIPTOR_TYPE   0x04
 
#define USB_ENDPOINT_DESCRIPTOR_TYPE   0x05
 
#define USB_RESERVED_DESCRIPTOR_TYPE   0x06
 
#define USB_CONFIG_POWER_DESCRIPTOR_TYPE   0x07
 
#define USB_INTERFACE_POWER_DESCRIPTOR_TYPE   0x08
 
#define USB_DESCRIPTOR_MAKE_TYPE_AND_INDEX(d, i)   ((USHORT)((USHORT)d << 8 | i))
 
#define USB_ENDPOINT_TYPE_MASK   0x03
 
#define USB_ENDPOINT_TYPE_CONTROL   0x00
 
#define USB_ENDPOINT_TYPE_ISOCHRONOUS   0x01
 
#define USB_ENDPOINT_TYPE_BULK   0x02
 
#define USB_ENDPOINT_TYPE_INTERRUPT   0x03
 
#define USB_CONFIG_POWERED_MASK   0xc0
 
#define USB_CONFIG_BUS_POWERED   0x80
 
#define USB_CONFIG_SELF_POWERED   0x40
 
#define USB_CONFIG_REMOTE_WAKEUP   0x20
 
#define USB_ENDPOINT_DIRECTION_MASK   0x80
 
#define USB_ENDPOINT_DIRECTION_OUT(x)   (!((x) & USB_ENDPOINT_DIRECTION_MASK))
 
#define USB_ENDPOINT_DIRECTION_IN(x)   ((x) & USB_ENDPOINT_DIRECTION_MASK)
 
#define USB_REQUEST_GET_STATUS   0x00
 
#define USB_REQUEST_CLEAR_FEATURE   0x01
 
#define USB_REQUEST_SET_FEATURE   0x03
 
#define USB_REQUEST_SET_ADDRESS   0x05
 
#define USB_REQUEST_GET_DESCRIPTOR   0x06
 
#define USB_REQUEST_SET_DESCRIPTOR   0x07
 
#define USB_REQUEST_GET_CONFIGURATION   0x08
 
#define USB_REQUEST_SET_CONFIGURATION   0x09
 
#define USB_REQUEST_GET_INTERFACE   0x0A
 
#define USB_REQUEST_SET_INTERFACE   0x0B
 
#define USB_REQUEST_SYNC_FRAME   0x0C
 
#define USB_DEVICE_CLASS_RESERVED   0x00
 
#define USB_DEVICE_CLASS_AUDIO   0x01
 
#define USB_DEVICE_CLASS_COMMUNICATIONS   0x02
 
#define USB_DEVICE_CLASS_HUMAN_INTERFACE   0x03
 
#define USB_DEVICE_CLASS_MONITOR   0x04
 
#define USB_DEVICE_CLASS_PHYSICAL_INTERFACE   0x05
 
#define USB_DEVICE_CLASS_POWER   0x06
 
#define USB_DEVICE_CLASS_PRINTER   0x07
 
#define USB_DEVICE_CLASS_STORAGE   0x08
 
#define USB_DEVICE_CLASS_HUB   0x09
 
#define USB_DEVICE_CLASS_VENDOR_SPECIFIC   0xFF
 
#define USB_FEATURE_ENDPOINT_STALL   0x0000
 
#define USB_FEATURE_REMOTE_WAKEUP   0x0001
 
#define USB_FEATURE_INTERFACE_POWER_D0   0x0002
 
#define USB_FEATURE_INTERFACE_POWER_D1   0x0003
 
#define USB_FEATURE_INTERFACE_POWER_D2   0x0004
 
#define USB_FEATURE_INTERFACE_POWER_D3   0x0005
 
#define USB_SUPPORT_D0_COMMAND   0x01
 
#define USB_SUPPORT_D1_COMMAND   0x02
 
#define USB_SUPPORT_D2_COMMAND   0x04
 
#define USB_SUPPORT_D3_COMMAND   0x08
 
#define USB_SUPPORT_D1_WAKEUP   0x10
 
#define USB_SUPPORT_D2_WAKEUP   0x20
 

Typedefs

typedef struct _USB_DEVICE_DESCRIPTOR USB_DEVICE_DESCRIPTOR
 
typedef struct _USB_DEVICE_DESCRIPTORPUSB_DEVICE_DESCRIPTOR
 
typedef struct _USB_ENDPOINT_DESCRIPTOR USB_ENDPOINT_DESCRIPTOR
 
typedef struct _USB_ENDPOINT_DESCRIPTORPUSB_ENDPOINT_DESCRIPTOR
 
typedef struct _USB_CONFIGURATION_DESCRIPTOR USB_CONFIGURATION_DESCRIPTOR
 
typedef struct _USB_CONFIGURATION_DESCRIPTORPUSB_CONFIGURATION_DESCRIPTOR
 
typedef struct _USB_INTERFACE_DESCRIPTOR USB_INTERFACE_DESCRIPTOR
 
typedef struct _USB_INTERFACE_DESCRIPTORPUSB_INTERFACE_DESCRIPTOR
 
typedef struct _USB_STRING_DESCRIPTOR USB_STRING_DESCRIPTOR
 
typedef struct _USB_STRING_DESCRIPTORPUSB_STRING_DESCRIPTOR
 
typedef struct _USB_COMMON_DESCRIPTOR USB_COMMON_DESCRIPTOR
 
typedef struct _USB_COMMON_DESCRIPTORPUSB_COMMON_DESCRIPTOR
 
typedef struct _USB_HUB_DESCRIPTOR USB_HUB_DESCRIPTOR
 
typedef struct _USB_HUB_DESCRIPTORPUSB_HUB_DESCRIPTOR
 
typedef struct _USB_CONFIGURATION_POWER_DESCRIPTOR USB_CONFIGURATION_POWER_DESCRIPTOR
 
typedef struct _USB_CONFIGURATION_POWER_DESCRIPTORPUSB_CONFIGURATION_POWER_DESCRIPTOR
 
typedef struct _USB_INTERFACE_POWER_DESCRIPTOR USB_INTERFACE_POWER_DESCRIPTOR
 
typedef struct _USB_INTERFACE_POWER_DESCRIPTORPUSB_INTERFACE_POWER_DESCRIPTOR
 

Macro Definition Documentation

◆ BMREQUEST_CLASS

#define BMREQUEST_CLASS   1

Definition at line 35 of file usb100.h.

◆ BMREQUEST_DEVICE_TO_HOST

#define BMREQUEST_DEVICE_TO_HOST   1

Definition at line 32 of file usb100.h.

◆ BMREQUEST_HOST_TO_DEVICE

#define BMREQUEST_HOST_TO_DEVICE   0

Definition at line 31 of file usb100.h.

◆ BMREQUEST_STANDARD

#define BMREQUEST_STANDARD   0

Definition at line 34 of file usb100.h.

◆ BMREQUEST_TO_DEVICE

#define BMREQUEST_TO_DEVICE   0

Definition at line 38 of file usb100.h.

◆ BMREQUEST_TO_ENDPOINT

#define BMREQUEST_TO_ENDPOINT   2

Definition at line 40 of file usb100.h.

◆ BMREQUEST_TO_INTERFACE

#define BMREQUEST_TO_INTERFACE   1

Definition at line 39 of file usb100.h.

◆ BMREQUEST_TO_OTHER

#define BMREQUEST_TO_OTHER   3

Definition at line 41 of file usb100.h.

◆ BMREQUEST_VENDOR

#define BMREQUEST_VENDOR   2

Definition at line 36 of file usb100.h.

◆ MAXIMUM_USB_STRING_LENGTH

#define MAXIMUM_USB_STRING_LENGTH   255

Definition at line 43 of file usb100.h.

◆ USB_CONFIG_BUS_POWERED

#define USB_CONFIG_BUS_POWERED   0x80

Definition at line 69 of file usb100.h.

◆ USB_CONFIG_POWER_DESCRIPTOR_TYPE

#define USB_CONFIG_POWER_DESCRIPTOR_TYPE   0x07

Definition at line 55 of file usb100.h.

◆ USB_CONFIG_POWERED_MASK

#define USB_CONFIG_POWERED_MASK   0xc0

Definition at line 68 of file usb100.h.

◆ USB_CONFIG_REMOTE_WAKEUP

#define USB_CONFIG_REMOTE_WAKEUP   0x20

Definition at line 71 of file usb100.h.

◆ USB_CONFIG_SELF_POWERED

#define USB_CONFIG_SELF_POWERED   0x40

Definition at line 70 of file usb100.h.

◆ USB_CONFIGURATION_DESCRIPTOR_TYPE

#define USB_CONFIGURATION_DESCRIPTOR_TYPE   0x02

Definition at line 50 of file usb100.h.

◆ USB_DESCRIPTOR_MAKE_TYPE_AND_INDEX

#define USB_DESCRIPTOR_MAKE_TYPE_AND_INDEX (   d,
  i 
)    ((USHORT)((USHORT)d << 8 | i))

Definition at line 58 of file usb100.h.

◆ USB_DEVICE_CLASS_AUDIO

#define USB_DEVICE_CLASS_AUDIO   0x01

Definition at line 91 of file usb100.h.

◆ USB_DEVICE_CLASS_COMMUNICATIONS

#define USB_DEVICE_CLASS_COMMUNICATIONS   0x02

Definition at line 92 of file usb100.h.

◆ USB_DEVICE_CLASS_HUB

#define USB_DEVICE_CLASS_HUB   0x09

Definition at line 99 of file usb100.h.

◆ USB_DEVICE_CLASS_HUMAN_INTERFACE

#define USB_DEVICE_CLASS_HUMAN_INTERFACE   0x03

Definition at line 93 of file usb100.h.

◆ USB_DEVICE_CLASS_MONITOR

#define USB_DEVICE_CLASS_MONITOR   0x04

Definition at line 94 of file usb100.h.

◆ USB_DEVICE_CLASS_PHYSICAL_INTERFACE

#define USB_DEVICE_CLASS_PHYSICAL_INTERFACE   0x05

Definition at line 95 of file usb100.h.

◆ USB_DEVICE_CLASS_POWER

#define USB_DEVICE_CLASS_POWER   0x06

Definition at line 96 of file usb100.h.

◆ USB_DEVICE_CLASS_PRINTER

#define USB_DEVICE_CLASS_PRINTER   0x07

Definition at line 97 of file usb100.h.

◆ USB_DEVICE_CLASS_RESERVED

#define USB_DEVICE_CLASS_RESERVED   0x00

Definition at line 90 of file usb100.h.

◆ USB_DEVICE_CLASS_STORAGE

#define USB_DEVICE_CLASS_STORAGE   0x08

Definition at line 98 of file usb100.h.

◆ USB_DEVICE_CLASS_VENDOR_SPECIFIC

#define USB_DEVICE_CLASS_VENDOR_SPECIFIC   0xFF

Definition at line 100 of file usb100.h.

◆ USB_DEVICE_DESCRIPTOR_TYPE

#define USB_DEVICE_DESCRIPTOR_TYPE   0x01

Definition at line 49 of file usb100.h.

◆ USB_ENDPOINT_DESCRIPTOR_TYPE

#define USB_ENDPOINT_DESCRIPTOR_TYPE   0x05

Definition at line 53 of file usb100.h.

◆ USB_ENDPOINT_DIRECTION_IN

#define USB_ENDPOINT_DIRECTION_IN (   x)    ((x) & USB_ENDPOINT_DIRECTION_MASK)

Definition at line 76 of file usb100.h.

◆ USB_ENDPOINT_DIRECTION_MASK

#define USB_ENDPOINT_DIRECTION_MASK   0x80

Definition at line 73 of file usb100.h.

◆ USB_ENDPOINT_DIRECTION_OUT

#define USB_ENDPOINT_DIRECTION_OUT (   x)    (!((x) & USB_ENDPOINT_DIRECTION_MASK))

Definition at line 75 of file usb100.h.

◆ USB_ENDPOINT_TYPE_BULK

#define USB_ENDPOINT_TYPE_BULK   0x02

Definition at line 64 of file usb100.h.

◆ USB_ENDPOINT_TYPE_CONTROL

#define USB_ENDPOINT_TYPE_CONTROL   0x00

Definition at line 62 of file usb100.h.

◆ USB_ENDPOINT_TYPE_INTERRUPT

#define USB_ENDPOINT_TYPE_INTERRUPT   0x03

Definition at line 65 of file usb100.h.

◆ USB_ENDPOINT_TYPE_ISOCHRONOUS

#define USB_ENDPOINT_TYPE_ISOCHRONOUS   0x01

Definition at line 63 of file usb100.h.

◆ USB_ENDPOINT_TYPE_MASK

#define USB_ENDPOINT_TYPE_MASK   0x03

Definition at line 61 of file usb100.h.

◆ USB_FEATURE_ENDPOINT_STALL

#define USB_FEATURE_ENDPOINT_STALL   0x0000

Definition at line 102 of file usb100.h.

◆ USB_FEATURE_INTERFACE_POWER_D0

#define USB_FEATURE_INTERFACE_POWER_D0   0x0002

Definition at line 105 of file usb100.h.

◆ USB_FEATURE_INTERFACE_POWER_D1

#define USB_FEATURE_INTERFACE_POWER_D1   0x0003

Definition at line 106 of file usb100.h.

◆ USB_FEATURE_INTERFACE_POWER_D2

#define USB_FEATURE_INTERFACE_POWER_D2   0x0004

Definition at line 107 of file usb100.h.

◆ USB_FEATURE_INTERFACE_POWER_D3

#define USB_FEATURE_INTERFACE_POWER_D3   0x0005

Definition at line 108 of file usb100.h.

◆ USB_FEATURE_REMOTE_WAKEUP

#define USB_FEATURE_REMOTE_WAKEUP   0x0001

Definition at line 103 of file usb100.h.

◆ USB_GETSTATUS_REMOTE_WAKEUP_ENABLED

#define USB_GETSTATUS_REMOTE_WAKEUP_ENABLED   0x02

Definition at line 46 of file usb100.h.

◆ USB_GETSTATUS_SELF_POWERED

#define USB_GETSTATUS_SELF_POWERED   0x01

Definition at line 45 of file usb100.h.

◆ USB_INTERFACE_DESCRIPTOR_TYPE

#define USB_INTERFACE_DESCRIPTOR_TYPE   0x04

Definition at line 52 of file usb100.h.

◆ USB_INTERFACE_POWER_DESCRIPTOR_TYPE

#define USB_INTERFACE_POWER_DESCRIPTOR_TYPE   0x08

Definition at line 56 of file usb100.h.

◆ USB_REQUEST_CLEAR_FEATURE

#define USB_REQUEST_CLEAR_FEATURE   0x01

Definition at line 79 of file usb100.h.

◆ USB_REQUEST_GET_CONFIGURATION

#define USB_REQUEST_GET_CONFIGURATION   0x08

Definition at line 84 of file usb100.h.

◆ USB_REQUEST_GET_DESCRIPTOR

#define USB_REQUEST_GET_DESCRIPTOR   0x06

Definition at line 82 of file usb100.h.

◆ USB_REQUEST_GET_INTERFACE

#define USB_REQUEST_GET_INTERFACE   0x0A

Definition at line 86 of file usb100.h.

◆ USB_REQUEST_GET_STATUS

#define USB_REQUEST_GET_STATUS   0x00

Definition at line 78 of file usb100.h.

◆ USB_REQUEST_SET_ADDRESS

#define USB_REQUEST_SET_ADDRESS   0x05

Definition at line 81 of file usb100.h.

◆ USB_REQUEST_SET_CONFIGURATION

#define USB_REQUEST_SET_CONFIGURATION   0x09

Definition at line 85 of file usb100.h.

◆ USB_REQUEST_SET_DESCRIPTOR

#define USB_REQUEST_SET_DESCRIPTOR   0x07

Definition at line 83 of file usb100.h.

◆ USB_REQUEST_SET_FEATURE

#define USB_REQUEST_SET_FEATURE   0x03

Definition at line 80 of file usb100.h.

◆ USB_REQUEST_SET_INTERFACE

#define USB_REQUEST_SET_INTERFACE   0x0B

Definition at line 87 of file usb100.h.

◆ USB_REQUEST_SYNC_FRAME

#define USB_REQUEST_SYNC_FRAME   0x0C

Definition at line 88 of file usb100.h.

◆ USB_RESERVED_DESCRIPTOR_TYPE

#define USB_RESERVED_DESCRIPTOR_TYPE   0x06

Definition at line 54 of file usb100.h.

◆ USB_STRING_DESCRIPTOR_TYPE

#define USB_STRING_DESCRIPTOR_TYPE   0x03

Definition at line 51 of file usb100.h.

◆ USB_SUPPORT_D0_COMMAND

#define USB_SUPPORT_D0_COMMAND   0x01

Definition at line 180 of file usb100.h.

◆ USB_SUPPORT_D1_COMMAND

#define USB_SUPPORT_D1_COMMAND   0x02

Definition at line 181 of file usb100.h.

◆ USB_SUPPORT_D1_WAKEUP

#define USB_SUPPORT_D1_WAKEUP   0x10

Definition at line 185 of file usb100.h.

◆ USB_SUPPORT_D2_COMMAND

#define USB_SUPPORT_D2_COMMAND   0x04

Definition at line 182 of file usb100.h.

◆ USB_SUPPORT_D2_WAKEUP

#define USB_SUPPORT_D2_WAKEUP   0x20

Definition at line 186 of file usb100.h.

◆ USB_SUPPORT_D3_COMMAND

#define USB_SUPPORT_D3_COMMAND   0x08

Definition at line 183 of file usb100.h.

Typedef Documentation

◆ PUSB_COMMON_DESCRIPTOR

◆ PUSB_CONFIGURATION_DESCRIPTOR

◆ PUSB_CONFIGURATION_POWER_DESCRIPTOR

◆ PUSB_DEVICE_DESCRIPTOR

◆ PUSB_ENDPOINT_DESCRIPTOR

◆ PUSB_HUB_DESCRIPTOR

◆ PUSB_INTERFACE_DESCRIPTOR

◆ PUSB_INTERFACE_POWER_DESCRIPTOR

◆ PUSB_STRING_DESCRIPTOR

◆ USB_COMMON_DESCRIPTOR

◆ USB_CONFIGURATION_DESCRIPTOR

◆ USB_CONFIGURATION_POWER_DESCRIPTOR

◆ USB_DEVICE_DESCRIPTOR

◆ USB_ENDPOINT_DESCRIPTOR

◆ USB_HUB_DESCRIPTOR

◆ USB_INTERFACE_DESCRIPTOR

◆ USB_INTERFACE_POWER_DESCRIPTOR

◆ USB_STRING_DESCRIPTOR