23 #define USB_MASS_STORE_CLASS 0x08 28 #define USB_MASS_STORE_RBC 0x01 29 #define USB_MASS_STORE_8020I 0x02
30 #define USB_MASS_STORE_QIC 0x03
31 #define USB_MASS_STORE_UFI 0x04
32 #define USB_MASS_STORE_8070I 0x05
33 #define USB_MASS_STORE_SCSI 0x06
38 #define USB_MASS_STORE_CBI0 0x00 39 #define USB_MASS_STORE_CBI1 0x01
40 #define USB_MASS_STORE_BOT 0x50
46 #define USB_DEV_GET_STATUS 0x00 47 #define USB_DEV_GET_STATUS_REQ_TYPE_D 0x80 // Receiver : Device 48 #define USB_DEV_GET_STATUS_REQ_TYPE_I 0x81 // Receiver : Interface 49 #define USB_DEV_GET_STATUS_REQ_TYPE_E 0x82 // Receiver : Endpoint 51 #define USB_DEV_CLEAR_FEATURE 0x01 52 #define USB_DEV_CLEAR_FEATURE_REQ_TYPE_D 0x00 // Receiver : Device 53 #define USB_DEV_CLEAR_FEATURE_REQ_TYPE_I 0x01 // Receiver : Interface 54 #define USB_DEV_CLEAR_FEATURE_REQ_TYPE_E 0x02 // Receiver : Endpoint 56 #define USB_DEV_SET_FEATURE 0x03 57 #define USB_DEV_SET_FEATURE_REQ_TYPE_D 0x00 // Receiver : Device 58 #define USB_DEV_SET_FEATURE_REQ_TYPE_I 0x01 // Receiver : Interface 59 #define USB_DEV_SET_FEATURE_REQ_TYPE_E 0x02 // Receiver : Endpoint 61 #define USB_DEV_SET_ADDRESS 0x05 62 #define USB_DEV_SET_ADDRESS_REQ_TYPE 0x00 64 #define USB_DEV_GET_DESCRIPTOR 0x06 65 #define USB_DEV_GET_DESCRIPTOR_REQ_TYPE 0x80 67 #define USB_DEV_SET_DESCRIPTOR 0x07 68 #define USB_DEV_SET_DESCRIPTOR_REQ_TYPE 0x00 70 #define USB_DEV_GET_CONFIGURATION 0x08 71 #define USB_DEV_GET_CONFIGURATION_REQ_TYPE 0x80 73 #define USB_DEV_SET_CONFIGURATION 0x09 74 #define USB_DEV_SET_CONFIGURATION_REQ_TYPE 0x00 76 #define USB_DEV_GET_INTERFACE 0x0A 77 #define USB_DEV_GET_INTERFACE_REQ_TYPE 0x81 79 #define USB_DEV_SET_INTERFACE 0x0B 80 #define USB_DEV_SET_INTERFACE_REQ_TYPE 0x01 82 #define USB_DEV_SYNCH_FRAME 0x0C 83 #define USB_DEV_SYNCH_FRAME_REQ_TYPE 0x82 270 #define USB_HID_GET_DESCRIPTOR_REQ_TYPE 0x81 275 #define USB_HID_CLASS_GET_REQ_TYPE 0xa1 276 #define USB_HID_CLASS_SET_REQ_TYPE 0x21 281 #define HID_ITEM_FORMAT_SHORT 0 282 #define HID_ITEM_FORMAT_LONG 1 287 #define HID_ITEM_TAG_LONG 15 292 #define HID_ITEM_TYPE_MAIN 0 293 #define HID_ITEM_TYPE_GLOBAL 1 294 #define HID_ITEM_TYPE_LOCAL 2 295 #define HID_ITEM_TYPE_RESERVED 3 300 #define HID_MAIN_ITEM_TAG_INPUT 8 301 #define HID_MAIN_ITEM_TAG_OUTPUT 9 302 #define HID_MAIN_ITEM_TAG_FEATURE 11 303 #define HID_MAIN_ITEM_TAG_BEGIN_COLLECTION 10 304 #define HID_MAIN_ITEM_TAG_END_COLLECTION 12 309 #define HID_MAIN_ITEM_CONSTANT 0x001 310 #define HID_MAIN_ITEM_VARIABLE 0x002 311 #define HID_MAIN_ITEM_RELATIVE 0x004 312 #define HID_MAIN_ITEM_WRAP 0x008 313 #define HID_MAIN_ITEM_NONLINEAR 0x010 314 #define HID_MAIN_ITEM_NO_PREFERRED 0x020 315 #define HID_MAIN_ITEM_NULL_STATE 0x040 316 #define HID_MAIN_ITEM_VOLATILE 0x080 317 #define HID_MAIN_ITEM_BUFFERED_BYTE 0x100 322 #define HID_COLLECTION_PHYSICAL 0 323 #define HID_COLLECTION_APPLICATION 1 324 #define HID_COLLECTION_LOGICAL 2 329 #define HID_GLOBAL_ITEM_TAG_USAGE_PAGE 0 330 #define HID_GLOBAL_ITEM_TAG_LOGICAL_MINIMUM 1 331 #define HID_GLOBAL_ITEM_TAG_LOGICAL_MAXIMUM 2 332 #define HID_GLOBAL_ITEM_TAG_PHYSICAL_MINIMUM 3 333 #define HID_GLOBAL_ITEM_TAG_PHYSICAL_MAXIMUM 4 334 #define HID_GLOBAL_ITEM_TAG_UNIT_EXPONENT 5 335 #define HID_GLOBAL_ITEM_TAG_UNIT 6 336 #define HID_GLOBAL_ITEM_TAG_REPORT_SIZE 7 337 #define HID_GLOBAL_ITEM_TAG_REPORT_ID 8 338 #define HID_GLOBAL_ITEM_TAG_REPORT_COUNT 9 339 #define HID_GLOBAL_ITEM_TAG_PUSH 10 340 #define HID_GLOBAL_ITEM_TAG_POP 11 345 #define HID_LOCAL_ITEM_TAG_USAGE 0 346 #define HID_LOCAL_ITEM_TAG_USAGE_MINIMUM 1 347 #define HID_LOCAL_ITEM_TAG_USAGE_MAXIMUM 2 348 #define HID_LOCAL_ITEM_TAG_DESIGNATOR_INDEX 3 349 #define HID_LOCAL_ITEM_TAG_DESIGNATOR_MINIMUM 4 350 #define HID_LOCAL_ITEM_TAG_DESIGNATOR_MAXIMUM 5 351 #define HID_LOCAL_ITEM_TAG_STRING_INDEX 7 352 #define HID_LOCAL_ITEM_TAG_STRING_MINIMUM 8 353 #define HID_LOCAL_ITEM_TAG_STRING_MAXIMUM 9 354 #define HID_LOCAL_ITEM_TAG_DELIMITER 10 359 #define HID_INPUT_REPORT 1 360 #define HID_OUTPUT_REPORT 2 361 #define HID_FEATURE_REPORT 3 366 #define EFI_USB_GET_REPORT_REQUEST 0x01 367 #define EFI_USB_GET_IDLE_REQUEST 0x02 368 #define EFI_USB_GET_PROTOCOL_REQUEST 0x03 369 #define EFI_USB_SET_REPORT_REQUEST 0x09 370 #define EFI_USB_SET_IDLE_REQUEST 0x0a 371 #define EFI_USB_SET_PROTOCOL_REQUEST 0x0b
#define USB_DEVICE_DESCRIPTOR
A USB device descriptor.
EFI_USB_HID_CLASS_DESCRIPTOR HidClassDesc[1]
#define USB_INTERFACE_DESCRIPTOR
A USB interface descriptor.
Format of Setup Data for USB Device Requests USB 2.0 spec, Section 9.3.
FILE_LICENCE(BSD2_PATENT)
The HID descriptor identifies the length and type of subordinate descriptors for a device.
struct hid_class_descriptor EFI_USB_HID_CLASS_DESCRIPTOR
Descriptor header for Report/Physical Descriptors HID 1.1, section 6.2.1.
UNICODE String Descriptor USB 2.0 spec, Section 9.6.7.
#define USB_INTERFACE_ASSOCIATION_DESCRIPTOR
A USB interface association descriptor.
#define USB_ENDPOINT_DESCRIPTOR
A USB endpoint descriptor.
Standard Configuration Descriptor USB 2.0 spec, Section 9.6.3.
UINT8 FunctionDescriptionStringIndex
struct hid_descriptor EFI_USB_HID_DESCRIPTOR
The HID descriptor identifies the length and type of subordinate descriptors for a device.
Descriptor header for Report/Physical Descriptors HID 1.1, section 6.2.1.