Hi everyone,We are developing an USB Audio Device based on Cypress EZ-USB FX2LP and are experiencing some problems that we believe are related to USB descriptors. The device works on FullSpeed hosts/hubs but not on HiSpeed. The device enumerates in both cases but the recording does not work on Hi Speed. This is a recording device only. We recorded the USB traffic and it seems we are not getting the IN tokens for audio EP. Below is the descriptor for the Hi Speed part.
Could someone take a look to this descriptor. We would appreciate any help.Does the generic USB audio driver work with Hi Speed USB Audio devices compliant with USB Audio Class 1.0 specification?
Thanks in advance, Danijel ;;**************************************************Audio******************************************************;;Standard Interface Descriptor - audio control db DSCR_INTRFC_LEN ;; Descriptor length
db DSCR_INTRFC ;; Descriptor typedb 01h ;; bIfaceNum - interface number db 00h ;; bAltSetting - Alternate setting 0 (no others) db 00h ;; bNumEndpoints - Number of endpoints = use EP0 only db 01h ;; bIfaceClass - Interface class 01=AUDIO db 01h ;; bIfaceSubClass - Audio Control
db 00h ;; bIfaceProtocol - none db 00h ;; iInterface - no string Usb_ac_iface_hs: ;;Class Specific Audio Control Interface Descriptor Header db 09h ;; bLengthdb 24h ;; Audio class specific interface descriptor
db 01h ;; HEADER typedw 0001H ;; Specification Version (BCD) db (Usb_ac_iface_end_hs-Usb_ac_iface_hs) mod 256 ;; Total Length (LSB) db (Usb_ac_iface_end_hs-Usb_ac_iface_hs) / 256 ;; Total Length (MSB) db 01h ;; number of streaming interfaces db 02h ;; Interface number=2 belongs to this control IF
;;CS-specific Input Terminal Descriptor db 0ch ;; bLengthdb 24h ;; Audio class specific interface desc
db 02h ;; Input Terminal db IT_ID1 ;; TerminalID dw 0102h ;; TerminalType = Microphone db 00h ;; output AssocTerminaldb 01h ;; Number of Channels dw 0000h ;; wChannelConfig = Mono
db 00h ;; iChannelNames=none db 00h ;; iTerminal ;;CS-specific Feature Unit Descriptordb 09h ;; bLength db 24h ;; Audio class specific interface desc
db 06h ;; Feature Unit descriptor db FU_ID2 ;; Unit ID db IT_ID1 ;; Source IDdb 01h ;; ControlSize Length in bytes of bmaControls db 03h ;; bmaControls(0) defines supported features in master channel db 00h ;; bmaControls(1) defines supported features in log. channel 0: db 00h ;; iFeature - index of string descriptor, descr. feature unit
;;CS-specific Output Terminal Descriptordb 09h ;; bLength db 24h ;; Audio class specific interface desc
db 03h ;; Output Terminal db OT_ID3 ;; TerminalID dw 0101h ;; TerminalType streamingdb 00h ;; bAssocTerminal=terminalID connect to=0? db FU_ID2 ;; SourceID=TerminalID which is the source for this terminal
db 00h ;; iTerminal=string Usb_ac_iface_end_hs: ; Standard Interface Descriptor for alternate setting 0 db DSCR_INTRFC_LEN ;; Descriptor length db DSCR_INTRFC ;; Descriptor type db 02h ;; bInterfaceNumber db 00h ;; bAlternateSetting 0 db 00h ;; bNumEndpoints Number of endpoints db 01h ;; bIfaceClass Interface class 01=AUDIO db 02h ;; bIfaceSubClass Audio Streaming db 00h ;; bIfaceProtocol none db 00h ;; iInterface String ;; Standard Interface Descriptor for alternate setting 1 db DSCR_INTRFC_LEN ;; Descriptor length db DSCR_INTRFC ;; Descriptor type db 02h ;; bInterfaceNumber db 01h ;; bAlternateSetting 1 db 01h ;; bNumEndpoints Number of endpoints db 01h ;; bIfaceClass Interface class 01=AUDIO db 02h ;; bIfaceSubClass Audio Streaming db 00h ;; bIfaceProtocol none db 00h ;; iInterface String ;;CS-Audio Streaming Interface General Descriptor for alternate setting db 07h ;; bLength db 24h ;; Audio Class Specific AS Interface Desc. db 01h ;; AS_GENERAL db OT_ID3 ;; TermLink connected to Upstream OT db 00h ;; Delay=0 dw 0100h ;; FormatTag=PCM ;; CS-Audio Streaming Interface Format Type 1 Descriptor db 0bh ;; bLength ; Format Specificationdb 24h ;; Audio Class Specific AS Interface Desc.
db 02h ;; Subtype db 01h ;; formatTypedb 01h ;; NrChannels db 02h ;; SubFrameSize db 10h ;; BitResolution db 01h ;; number of sampling freq
dw 80bbh ;; 48kHz db 00h ;; hi byte;;Standard Isochronous Audio Data Endpoint for alternate setting db 09h ;; bLength Length of this descriptor
db 05h ;; bDescType 5=ENDPOINT db 82h ;; bEndpointAddr End Point address db 0Dh ;; bmAttr ISO syncronous rate db 60h ;; wMaxPacketSize LSB 96 bytes db 00h ;; wMaxPacketSize MSB 96 bytes db 08h ;; bIntervaldb 00h ;; bRefresh db 00h ;; SyncAddr None
;;CS-Isochronous Audio Data Endpoint Desriptor include for alternate setting
db 07h ;; bLength Length of this descriptor db 25h ;; bDescType Class specific ENDPOINT db 01h ;; SubType GENERAL db 01h ;; bmAttr: Samplingrate db 02h ;; bLockDelayUnits dw 0100h ;; bLockDelay HighSpeedConfigDscrEnd: -- ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/