beautypg.com

0 supported usb requests, 1 device class commands, Cy7c656xx preliminary – Cypress EZ-USB HX2LP User Manual

Page 16

background image

CY7C656xx

PRELIMINARY

Document #: 38-08037 Rev. *D

Page 16 of 23

Byte 22: ActivePorts[3:0]

Bits 3–0 are the ActivePorts[3:0] bits that indicates if the
corresponding port is usable. For example, a two-port hub
that uses ports 1 and 4 would set this field to 0x09. The total
number of ports reported in the Hub Descriptor: bNbrPorts
field is calculated from this.

Byte 23: RemovablePorts[3:0]

Bits 3–0 are the RemovablePorts[3:0] bits that indicates
whether the corresponding port is removable (set to high).
This bit values are recorded appropriately in the
HubDescriptor:DeviceRemovable field. Default: 0xFF.

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 (full-speed)
strings. Each address is two bytes long, stored LSB first.
The array has NumLangs entries (2 * NumLangs bytes).
The address d = c + 2*NumLangs.

Byte e: iConfiguration(High-Speed)

Array of addresses for the iConfiguration (high-speed)
strings. Each address is two bytes long, stored LSB first.
The array has NumLangs entries (2 * NumLangs bytes).
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.0

Supported USB Requests

10.1

Device Class Commands

Table 10-1. Device Class Requests

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
Language ID

Descriptor
Length

Descriptor

GetConfigDescriptor

10000000B

0x06

0x0002

Zero or
Language ID

Descriptor
Length

Descriptor

GetDeviceQualifierDe-
scriptor

10000000B

0x06

0x0006

Zero or
Language ID

Descriptor
Length

Descriptor

GetOtherSpeedConfigura-
tionDescriptor

10000000B

0x06

0x0007

Zero or
Language ID

Descriptor
Length

Descriptor

GetConfiguration

[12]

10000000B

0x08

0x0000

0x0000

0x0001

Configuration value

SetCongfiguration

[12]

00000000B

0x09

Configuration
Value

0x0000

0x0000

None

GetInterface

10000001B

0xA

0x0000

0x0000

0x0001

Interface Number

Note:

12. Only one configuration is supported in CY7C656xx.

This manual is related to the following products: