PRELIMINARYCY7C656xx
Byte 22: ActivePorts[3:0]
Bits
Byte 23: RemovablePorts[3:0]
Bits
Byte 24: LangID
Array of LangID codes supported by the hub. Each LangID consists of two bytes, stored LSB first. The array has Num- Langs entries (2 * NumLangs bytes).
Byte a: iManufacturer
Array of addresses for the iManufacturer strings. Each ad- dress is two bytes long, stored LSB first. The array has NumLangs entries (2 * NumLangs bytes). (The starting EE- PROM address is based upon the number entered for NumLangs.
The address a = 24 + 2 * NumLangs.
Byte b: iProduct
Array of addresses for the iProduct strings. Each address is two bytes long, stored LSB first. The array has Num- Langs entries (2 * NumLangs bytes).
The address b = a + 2*NunLangs.
Byte c: iSerialNumber
Array of addresses for the iSerialNumber strings. Each ad- dress is two bytes long, stored LSB first. The array has NumLangs entries (2 * NumLangs bytes).
The address c = b + 2 * NumLangs.
Byte d: iConfiguration(Full-Speed)
Array of addresses for the iConfiguration
The address d = c + 2*NumLangs.
Byte e: iConfiguration(High-Speed)
Array of addresses for the iConfiguration
The address e = d + 2 * NumLangs.
Byte f: iInterface(0)
Array of addresses for the iInterface(0) strings. Each ad- dress is two bytes long, stored LSB first. The array has NumLangs entries (2 * NumLangs bytes).
The address f = e + 2 * NumLangs.
Byte g: iInterface(1)
Array of addresses for the iInterface(1) strings. Each ad- dress is two bytes long, stored LSB first. The array has NumLangs entries (2 * NumLangs bytes).
The address g = f + 2 * NumLangs.
Byte h: Strings
Strings addressed by the string pointers. Strings must com- ply with the USB specification. The first byte must be the length of the string in bytes, the second must be 0x03, and the string must be in Unicode.
10.0Supported USB Requests
10.1Device Class Commands
Table
Request | bmRequestType | bRequest | wValue | wIndex | wLength | Data |
|
|
|
|
|
|
|
GetDeviceStatus | 10000000B | 0x00 | 0x0000 | 0x0000 | 0x0002 | 2 Byte Device Status |
|
|
|
|
|
|
|
GetInterfaceStatus | 10000001B | 0x00 | 0x0000 | 0x0000 | 0x0002 | 2 Byte Endpoint |
|
|
|
|
|
| Status |
|
|
|
|
|
|
|
GetEndpointStatus | 10000010B | 0x00 | 0x0000 | 0x0000 | 0x0002 | 2 Byte Endpoint |
|
|
|
|
|
| Status |
|
|
|
|
|
|
|
GetDeviceDescriptor | 10000000B | 0x06 | 0x0001 | Zero or | Descriptor | Descriptor |
|
|
|
| Language ID | Length |
|
|
|
|
|
|
|
|
GetConfigDescriptor | 10000000B | 0x06 | 0x0002 | Zero or | Descriptor | Descriptor |
|
|
|
| Language ID | Length |
|
|
|
|
|
|
|
|
GetDeviceQualifierDe- | 10000000B | 0x06 | 0x0006 | Zero or | Descriptor | Descriptor |
scriptor |
|
|
| Language ID | Length |
|
|
|
|
|
|
|
|
GetOtherSpeedConfigura- | 10000000B | 0x06 | 0x0007 | Zero or | Descriptor | Descriptor |
tionDescriptor |
|
|
| Language ID | Length |
|
|
|
|
|
|
|
|
GetConfiguration[12] | 10000000B | 0x08 | 0x0000 | 0x0000 | 0x0001 | Configuration value |
SetCongfiguration[12] | 00000000B | 0x09 | Configuration | 0x0000 | 0x0000 | None |
|
|
| Value |
|
|
|
|
|
|
|
|
|
|
GetInterface | 10000001B | 0xA | 0x0000 | 0x0000 | 0x0001 | Interface Number |
|
|
|
|
|
|
|
Note: |
|
|
|
|
|
|
12. Only one configuration is supported in CY7C656xx. |
|
|
|
|
| |
Document #: |
|
|
|
| Page 16 of 23 |