/** @file\r
Support for USB 2.0 standard.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation\r
- All rights reserved. This program and the accompanying materials\r
+ Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
which accompanies this distribution. The full text of the license may be found at\r
http://opensource.org/licenses/bsd-license.php\r
//\r
// USB standard descriptors and reqeust\r
//\r
+#pragma pack(1)\r
\r
///\r
/// Format of Setup Data for USB Device Requests\r
UINT8 NumConfigurations;\r
} USB_DEVICE_DESCRIPTOR;\r
\r
-#pragma pack(1)\r
///\r
/// Standard Configuration Descriptor\r
/// USB 2.0 spec, Section 9.6.3\r
UINT8 Attributes;\r
UINT8 MaxPower;\r
} USB_CONFIG_DESCRIPTOR;\r
-#pragma pack()\r
\r
///\r
/// Standard Interface Descriptor\r
UINT8 Interface;\r
} USB_INTERFACE_DESCRIPTOR;\r
\r
-#pragma pack(1)\r
///\r
/// Standard Endpoint Descriptor\r
/// USB 2.0 spec, Section 9.6.6\r
UINT16 MaxPacketSize;\r
UINT8 Interval;\r
} USB_ENDPOINT_DESCRIPTOR;\r
-#pragma pack()\r
\r
///\r
/// UNICODE String Descriptor\r
CHAR16 String[1];\r
} EFI_USB_STRING_DESCRIPTOR;\r
\r
+#pragma pack()\r
+\r
+\r
typedef enum {\r
//\r
// USB request type\r
#pragma pack(1)\r
///\r
/// Descriptor header for Report/Physical Descriptors\r
+/// HID 1.1, section 6.2.1\r
///\r
typedef struct hid_class_descriptor {\r
UINT8 DescriptorType;\r
///\r
/// The HID descriptor identifies the length and type\r
/// of subordinate descriptors for a device.\r
+/// HID 1.1, section 6.2.1\r
///\r
typedef struct hid_descriptor {\r
UINT8 Length;\r
UINT8 NumDescriptors;\r
EFI_USB_HID_CLASS_DESCRIPTOR HidClassDesc[1];\r
} EFI_USB_HID_DESCRIPTOR;\r
+\r
#pragma pack()\r
\r
#endif\r