* [alsa-devel] Tascam US-122L - Corrupt USB descriptor
@ 2016-04-13 6:38 Simon Wood
2016-04-13 9:01 ` Clemens Ladisch
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-13 6:38 UTC (permalink / raw)
To: alsa-devel; +Cc: alsa-devel
[-- Attachment #1: Type: text/plain, Size: 925 bytes --]
Hi all,
I have been struggling for the past few days to get a Tascam US-122L (USB
sound-card/midi interface) working, despite reading numerous forum
postings I have only been able to get the midi portion working.
I note that the USB descriptor seems to be corrupt. It declares 2
interfaces, but then describes 3 separate with the same interface number
for the last 2... could it be that this is confusing the Linux USB stack?
I have attached a copy of the descriptor and an annotated 'lsusb -vv'.
>From my experience with the HID subsystem, they have a mechanism for
patching HID descriptors, is the same possible for the base USB
descriptor? Trolling through 'drivers/usb' I didn't see anything... any
suggestions?
If this is possible I can try to increase the interface count and renumber
the last one.
Cheers,
Simon.
PS. For reference the device is:
Model No: US-122L
Serial: (21)0120xxx
Other barcode: 043774021628
[-- Attachment #2: us-122l-descriptors.txt --]
[-- Type: text/plain, Size: 5494 bytes --]
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 09 02 48 00 02 01 00 80 f0 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 09 04 01 00 00 ff 00 00 00 09 04 01 |................|
00000030 01 04 ff 00 00 00 09 05 81 05 4e 00 01 00 00 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 09 05 83 02 09 00 04 00 |...N............|
00000050 00 09 05 04 02 00 02 04 00 00 |..........|
0000005a
Bus 001 Device 042: ID 0644:800e TEAC Corp. TASCAM US-122L
--
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 __________________________________________ |....H...........|
--
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0644 TEAC Corp.
idProduct 0x800e TASCAM US-122L
bcdDevice 1.00
iManufacturer 1 (error) <------ Here be Errors!
iProduct 2 (error)
iSerial 3 (error)
bNumConfigurations 1
Configuration Descriptor:
--
00000010 _____ 09 02 48 00 02 01 00 80 f0 ______________ |....H...........|
--
bLength 9
bDescriptorType 2
wTotalLength 72
bNumInterfaces 2 <------- 2 interfaces
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 480mA
Interface Descriptor: <------ that's 1
--
00000010 _________________________________ 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 ____________________________________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 2
--
00000020 ___________ 09 04 01 00 00 ff 00 00 00 ________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 3, err wait...
--
00000020 _______________________________________ 09 04 01 |................|
00000030 01 04 ff 00 00 00 ______________________________ |..........N.....|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1 <------ interface duplicate!!
bAlternateSetting 1
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
--
00000030 _________________ 09 05 81 05 4e 00 01 00 00 __ |..........N.....|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000030 _____________________________________________ 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 _______________________ |...N............|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000040 _______________________ 09 05 83 02 09 00 04 00 |...N............|
00000050 00 ___________________________ |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0009 1x 9 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000050 __ 09 05 04 02 00 02 04 00 00 |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Device Status: 0x0001
Self Powered
[-- Attachment #3: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood
@ 2016-04-13 9:01 ` Clemens Ladisch
2016-04-13 9:01 ` [alsa-devel] " Clemens Ladisch
2016-04-13 9:02 ` Ricard Wanderlof
2 siblings, 0 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-13 9:01 UTC (permalink / raw)
To: alsa-devel; +Cc: alsa-devel
Simon Wood wrote:
> I have been struggling for the past few days to get a Tascam US-122L (USB
> sound-card/midi interface) working, despite reading numerous forum
> postings I have only been able to get the midi portion working.
Does it show up with "aplay -l"?
> I note that the USB descriptor seems to be corrupt. It declares 2
> interfaces, but then describes 3 separate with the same interface number
> for the last 2.
The descriptors describe two alternate settings for the same interface.
This is a feature, which is required for audio devices.
> iManufacturer 1 (error) <------ Here be Errors!
> iProduct 2 (error)
> iSerial 3 (error)
It's possible that lsusb does not have the permissions needed to send
the messages to ask for the strings. Try running it as root.
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor
2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood
2016-04-13 9:01 ` Clemens Ladisch
@ 2016-04-13 9:01 ` Clemens Ladisch
2016-04-13 14:08 ` Simon Wood
2016-04-13 14:08 ` [alsa-devel] " Simon Wood
2016-04-13 9:02 ` Ricard Wanderlof
2 siblings, 2 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-13 9:01 UTC (permalink / raw)
To: alsa-devel; +Cc: alsa-devel
Simon Wood wrote:
> I have been struggling for the past few days to get a Tascam US-122L (USB
> sound-card/midi interface) working, despite reading numerous forum
> postings I have only been able to get the midi portion working.
Does it show up with "aplay -l"?
> I note that the USB descriptor seems to be corrupt. It declares 2
> interfaces, but then describes 3 separate with the same interface number
> for the last 2.
The descriptors describe two alternate settings for the same interface.
This is a feature, which is required for audio devices.
> iManufacturer 1 (error) <------ Here be Errors!
> iProduct 2 (error)
> iSerial 3 (error)
It's possible that lsusb does not have the permissions needed to send
the messages to ask for the strings. Try running it as root.
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood
2016-04-13 9:01 ` Clemens Ladisch
2016-04-13 9:01 ` [alsa-devel] " Clemens Ladisch
@ 2016-04-13 9:02 ` Ricard Wanderlof
2 siblings, 0 replies; 13+ messages in thread
From: Ricard Wanderlof @ 2016-04-13 9:02 UTC (permalink / raw)
To: Simon Wood; +Cc: alsa-devel, alsa-devel
On Wed, 13 Apr 2016, Simon Wood wrote:
> Hi all,
> I have been struggling for the past few days to get a Tascam US-122L (USB
> sound-card/midi interface) working, despite reading numerous forum
> postings I have only been able to get the midi portion working.
>
> I note that the USB descriptor seems to be corrupt. It declares 2
> interfaces, but then describes 3 separate with the same interface number
> for the last 2... could it be that this is confusing the Linux USB stack?
>
> I have attached a copy of the descriptor and an annotated 'lsusb -vv'.
> ...
My experience of lsusb is that it can get confused and report errors when
there in fact aren't any, especially with vendor specific classes which it
really can only guess at.
>
> Configuration Descriptor:
> --
> 00000010 _____ 09 02 48 00 02 01 00 80 f0 ______________ |....H...........|
> --
> bLength 9
> bDescriptorType 2
> wTotalLength 72
> bNumInterfaces 2 <------- 2 interfaces
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0x80
> (Bus Powered)
> MaxPower 480mA
>
>
> Interface Descriptor: <------ that's 1
> --
> 00000010 _________________________________ 09 04 00 00 00 |....H...........|
> 00000020 ff 00 00 00 ____________________________________ |................|
> --
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 0
> bInterfaceClass 255 Vendor Specific Class
> bInterfaceSubClass 0
> bInterfaceProtocol 0
> iInterface 0
>
> Interface Descriptor: <------ that's 2
> --
> 00000020 ___________ 09 04 01 00 00 ff 00 00 00 ________ |................|
> --
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 1
> bAlternateSetting 0
> bNumEndpoints 0
> bInterfaceClass 255 Vendor Specific Class
> bInterfaceSubClass 0
> bInterfaceProtocol 0
> iInterface 0
>
> Interface Descriptor: <------ that's 3, err wait...
> --
> 00000020 _______________________________________ 09 04 01 |................|
> 00000030 01 04 ff 00 00 00 ______________________________ |..........N.....|
> --
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 1 <------ interface duplicate!!
> bAlternateSetting 1
> bNumEndpoints 4
My knowledge of USB is sketchy since I rarely work with it on this level
(I was working on some quirks for the Zoom R16 a while ago), but I note
that bAlternateSetting is 1, which I think means that the device offers
two specific ways of implementing interface no. 1. Actually, IIRC,
alternate setting 0 normally means an interface which essentially is
disabled, and it would certainly seem so here as the two first interface
descriptors have 0 endpoints, whereas the one here has 4.
My wild guess is that this interface 1 / altsetting 1 represents the
actual device in normal operation, as has 4 endpoints ...
> bInterfaceClass 255 Vendor Specific Class
> bInterfaceSubClass 0
> bInterfaceProtocol 0
> iInterface 0
>
> Endpoint Descriptor:
> ...
> bLength 9
> bDescriptorType 5
> bEndpointAddress 0x81 EP 1 IN
> bmAttributes 5
> Transfer Type Isochronous
> Synch Type Asynchronous
> Usage Type Data
> wMaxPacketSize 0x004e 1x 78 bytes
> ...
> Endpoint Descriptor:
> ...
> bDescriptorType 5
> bEndpointAddress 0x02 EP 2 OUT
> bmAttributes 5
> Transfer Type Isochronous
> Synch Type Asynchronous
> Usage Type Data
> wMaxPacketSize 0x004e 1x 78 bytes
> ...
> Endpoint Descriptor:
> ...
> bDescriptorType 5
> bEndpointAddress 0x83 EP 3 IN
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0009 1x 9 bytes
> ...
> Endpoint Descriptor:
> ...
> bDescriptorType 5
> bEndpointAddress 0x04 EP 4 OUT
> bmAttributes 2
> Transfer Type Bulk
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0200 1x 512 bytes
> bInterval 4
> bRefresh 0
> bSynchAddress 0
... the two first of which are the audio interface (which uses isochronous
data transfers), and the other two are MIDI (bulk).
I think (but could be wrong so don't take my word for it) it's a bit
unusual that both MIDI and audio are represented by a single interface,
but it certainly seems to be the case here.
/Ricard
--
Ricard Wolf Wanderlöf ricardw(at)axis.com
Axis Communications AB, Lund, Sweden www.axis.com
Phone +46 46 272 2016 Fax +46 46 13 61 30
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-13 9:01 ` [alsa-devel] " Clemens Ladisch
@ 2016-04-13 14:08 ` Simon Wood
2016-04-13 14:08 ` [alsa-devel] " Simon Wood
1 sibling, 0 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-13 14:08 UTC (permalink / raw)
To: alsa-devel; +Cc: Simon Wood, linux-usb, alsa-devel
[-- Attachment #1: Type: text/plain, Size: 1445 bytes --]
On Wed, April 13, 2016 3:01 am, Clemens Ladisch wrote:
> Simon Wood wrote:
>
>> I have been struggling for the past few days to get a Tascam US-122L
>> (USB
>> sound-card/midi interface) working, despite reading numerous forum
>> postings I have only been able to get the midi portion working.
>
> Does it show up with "aplay -l"?
The card shows up under '/proc/asound/cards', but only as Midi. See
attached for full listing.
>> I note that the USB descriptor seems to be corrupt. It declares 2
>> interfaces, but then describes 3 separate with the same interface number
>> for the last 2.
>
> The descriptors describe two alternate settings for the same interface.
> This is a feature, which is required for audio devices.
>
>
>> iManufacturer 1 (error) <------ Here be Errors! iProduct
>> 2 (error)
>> iSerial 3 (error)
>
> It's possible that lsusb does not have the permissions needed to send
> the messages to ask for the strings. Try running it as root.
Was running as root (on Xubuntu, 2 different machines, different installs).
I note that sometimes this is OK, ie when I do '# echo 0 >
/sys/bus/usb/devices/1-2/bConfigurationValue', but then I have no
interfaces at all (no midi, no listing).
Can anyone confirm they have a US-122L working on a new kernel. Is the USB
descriptor the same as what I'm seeing, perhaps hardware changed at some
point.
Cheers,
Simon
[-- Attachment #2: aplay_l.txt --]
[-- Type: text/plain, Size: 2684 bytes --]
# cat /proc/asound/cards > aplay_l.txt
0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350]
SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xccc0, irq 27
1 [US122L ]: USB US-122L - TASCAM US-122L
TASCAM US-122L (644:800e if 0 at 001/005)
# aplaymidi -l >> aplay_l.txt
Port Client name Port name
14:0 Midi Through Midi Through Port-0
16:0 SB Audigy 2 ZS [SB0350] Audigy MPU-401 (UART)
16:32 SB Audigy 2 ZS [SB0350] Audigy MPU-401 #2
17:0 Emu10k1 WaveTable Emu10k1 Port 0
17:1 Emu10k1 WaveTable Emu10k1 Port 1
17:2 Emu10k1 WaveTable Emu10k1 Port 2
17:3 Emu10k1 WaveTable Emu10k1 Port 3
20:0 TASCAM US-122L TASCAM US-122L MIDI 1
# aplay -l >> aplay_l.txt
**** List of PLAYBACK Hardware Devices ****
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 0: emu10k1 [ADC Capture/Standard PCM Playback]
Subdevices: 32/32
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
Subdevice #8: subdevice #8
Subdevice #9: subdevice #9
Subdevice #10: subdevice #10
Subdevice #11: subdevice #11
Subdevice #12: subdevice #12
Subdevice #13: subdevice #13
Subdevice #14: subdevice #14
Subdevice #15: subdevice #15
Subdevice #16: subdevice #16
Subdevice #17: subdevice #17
Subdevice #18: subdevice #18
Subdevice #19: subdevice #19
Subdevice #20: subdevice #20
Subdevice #21: subdevice #21
Subdevice #22: subdevice #22
Subdevice #23: subdevice #23
Subdevice #24: subdevice #24
Subdevice #25: subdevice #25
Subdevice #26: subdevice #26
Subdevice #27: subdevice #27
Subdevice #28: subdevice #28
Subdevice #29: subdevice #29
Subdevice #30: subdevice #30
Subdevice #31: subdevice #31
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 2: emu10k1 efx [Multichannel Capture/PT Playback]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 3: emu10k1 [Multichannel Playback]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 4: p16v [p16v]
Subdevices: 1/1
Subdevice #0: subdevice #0
[-- Attachment #3: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor
2016-04-13 9:01 ` [alsa-devel] " Clemens Ladisch
2016-04-13 14:08 ` Simon Wood
@ 2016-04-13 14:08 ` Simon Wood
2016-04-14 7:35 ` Clemens Ladisch
2016-04-14 7:35 ` Clemens Ladisch
1 sibling, 2 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-13 14:08 UTC (permalink / raw)
To: alsa-devel; +Cc: Simon Wood, linux-usb, alsa-devel
[-- Attachment #1: Type: text/plain, Size: 1406 bytes --]
On Wed, April 13, 2016 3:01 am, Clemens Ladisch wrote:
> Simon Wood wrote:
>
>> I have been struggling for the past few days to get a Tascam US-122L
>> (USB
>> sound-card/midi interface) working, despite reading numerous forum
>> postings I have only been able to get the midi portion working.
>
> Does it show up with "aplay -l"?
The card shows up under '/proc/asound/cards', but only as Midi. See
attached for full listing.
>> I note that the USB descriptor seems to be corrupt. It declares 2
>> interfaces, but then describes 3 separate with the same interface number
>> for the last 2.
>
> The descriptors describe two alternate settings for the same interface.
> This is a feature, which is required for audio devices.
>
>
>> iManufacturer 1 (error) <------ Here be Errors! iProduct
>> 2 (error)
>> iSerial 3 (error)
>
> It's possible that lsusb does not have the permissions needed to send
> the messages to ask for the strings. Try running it as root.
Was running as root (on Xubuntu, 2 different machines, different installs).
I note that sometimes this is OK, ie when I do '# echo 0 >
/sys/bus/usb/devices/1-2/bConfigurationValue', but then I have no
interfaces at all (no midi, no listing).
Can anyone confirm they have a US-122L working on a new kernel. Is the USB
descriptor the same as what I'm seeing, perhaps hardware changed at some
point.
Cheers,
Simon
[-- Attachment #2: aplay_l.txt --]
[-- Type: text/plain, Size: 2616 bytes --]
# cat /proc/asound/cards > aplay_l.txt
0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350]
SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xccc0, irq 27
1 [US122L ]: USB US-122L - TASCAM US-122L
TASCAM US-122L (644:800e if 0 at 001/005)
# aplaymidi -l >> aplay_l.txt
Port Client name Port name
14:0 Midi Through Midi Through Port-0
16:0 SB Audigy 2 ZS [SB0350] Audigy MPU-401 (UART)
16:32 SB Audigy 2 ZS [SB0350] Audigy MPU-401 #2
17:0 Emu10k1 WaveTable Emu10k1 Port 0
17:1 Emu10k1 WaveTable Emu10k1 Port 1
17:2 Emu10k1 WaveTable Emu10k1 Port 2
17:3 Emu10k1 WaveTable Emu10k1 Port 3
20:0 TASCAM US-122L TASCAM US-122L MIDI 1
# aplay -l >> aplay_l.txt
**** List of PLAYBACK Hardware Devices ****
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 0: emu10k1 [ADC Capture/Standard PCM Playback]
Subdevices: 32/32
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
Subdevice #8: subdevice #8
Subdevice #9: subdevice #9
Subdevice #10: subdevice #10
Subdevice #11: subdevice #11
Subdevice #12: subdevice #12
Subdevice #13: subdevice #13
Subdevice #14: subdevice #14
Subdevice #15: subdevice #15
Subdevice #16: subdevice #16
Subdevice #17: subdevice #17
Subdevice #18: subdevice #18
Subdevice #19: subdevice #19
Subdevice #20: subdevice #20
Subdevice #21: subdevice #21
Subdevice #22: subdevice #22
Subdevice #23: subdevice #23
Subdevice #24: subdevice #24
Subdevice #25: subdevice #25
Subdevice #26: subdevice #26
Subdevice #27: subdevice #27
Subdevice #28: subdevice #28
Subdevice #29: subdevice #29
Subdevice #30: subdevice #30
Subdevice #31: subdevice #31
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 2: emu10k1 efx [Multichannel Capture/PT Playback]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 3: emu10k1 [Multichannel Playback]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: Audigy2 [SB Audigy 2 ZS [SB0350]], device 4: p16v [p16v]
Subdevices: 1/1
Subdevice #0: subdevice #0
[-- Attachment #3: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-13 14:08 ` [alsa-devel] " Simon Wood
2016-04-14 7:35 ` Clemens Ladisch
@ 2016-04-14 7:35 ` Clemens Ladisch
1 sibling, 0 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-14 7:35 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
Simon Wood wrote:
> The card shows up under '/proc/asound/cards', but only as Midi.
Apparently, there is no PCM device. This driver creates a special
hardware-dependent device which is intended to be used with the
Jack driver "usb_stream".
It might be possible to use the ALSA "usb_stream" plugin:
<http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor
2016-04-13 14:08 ` [alsa-devel] " Simon Wood
@ 2016-04-14 7:35 ` Clemens Ladisch
2016-04-14 16:20 ` Simon Wood
2016-04-14 16:20 ` [alsa-devel] " Simon Wood
2016-04-14 7:35 ` Clemens Ladisch
1 sibling, 2 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-14 7:35 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
Simon Wood wrote:
> The card shows up under '/proc/asound/cards', but only as Midi.
Apparently, there is no PCM device. This driver creates a special
hardware-dependent device which is intended to be used with the
Jack driver "usb_stream".
It might be possible to use the ALSA "usb_stream" plugin:
<http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-14 7:35 ` Clemens Ladisch
@ 2016-04-14 16:20 ` Simon Wood
2016-04-14 16:20 ` [alsa-devel] " Simon Wood
1 sibling, 0 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-14 16:20 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote:
> Simon Wood wrote:
>
>> The card shows up under '/proc/asound/cards', but only as Midi.
>>
>
> Apparently, there is no PCM device. This driver creates a special
> hardware-dependent device which is intended to be used with the Jack driver
> "usb_stream".
>
>
> It might be possible to use the ALSA "usb_stream" plugin:
> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
I have this '.asoundrc' file (made before previous postings), but that
does not seem to make a usable card.
I'm expecting that a PCM device should /just/ appear under 'aplay -l', but
that is not happening. Perhaps there is a step I am missing, or I am just
confused about what qualifies a 'working' US-122L.
Do I need to be using a specific version of (userland) Alsa?
It would be nice to get a 'nod' from a person who has the US-122L workin
on their system. But I do appreciate Clemens' help and guidance,
Simon.
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor
2016-04-14 7:35 ` Clemens Ladisch
2016-04-14 16:20 ` Simon Wood
@ 2016-04-14 16:20 ` Simon Wood
2016-04-14 17:10 ` Clemens Ladisch
2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch
1 sibling, 2 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-14 16:20 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote:
> Simon Wood wrote:
>
>> The card shows up under '/proc/asound/cards', but only as Midi.
>>
>
> Apparently, there is no PCM device. This driver creates a special
> hardware-dependent device which is intended to be used with the Jack driver
> "usb_stream".
>
>
> It might be possible to use the ALSA "usb_stream" plugin:
> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
I have this '.asoundrc' file (made before previous postings), but that
does not seem to make a usable card.
I'm expecting that a PCM device should /just/ appear under 'aplay -l', but
that is not happening. Perhaps there is a step I am missing, or I am just
confused about what qualifies a 'working' US-122L.
Do I need to be using a specific version of (userland) Alsa?
It would be nice to get a 'nod' from a person who has the US-122L workin
on their system. But I do appreciate Clemens' help and guidance,
Simon.
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Tascam US-122L - Corrupt USB descriptor
2016-04-14 16:20 ` [alsa-devel] " Simon Wood
@ 2016-04-14 17:10 ` Clemens Ladisch
2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch
1 sibling, 0 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-14 17:10 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
Simon Wood wrote:
> On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote:
>> Simon Wood wrote:
>>> The card shows up under '/proc/asound/cards', but only as Midi.
>>
>> Apparently, there is no PCM device. This driver creates a special
>> hardware-dependent device which is intended to be used with the Jack driver
>> "usb_stream".
>>
>> It might be possible to use the ALSA "usb_stream" plugin:
>> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
>
> I have this '.asoundrc' file (made before previous postings), but that
> does not seem to make a usable card.
What error message do you get when you try to use aplay with that device?
> I'm expecting that a PCM device should /just/ appear under 'aplay -l'
The driver does not implement such a PCM device.
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [alsa-devel] Tascam US-122L - Corrupt USB descriptor
2016-04-14 16:20 ` [alsa-devel] " Simon Wood
2016-04-14 17:10 ` Clemens Ladisch
@ 2016-04-14 17:10 ` Clemens Ladisch
1 sibling, 0 replies; 13+ messages in thread
From: Clemens Ladisch @ 2016-04-14 17:10 UTC (permalink / raw)
To: alsa-devel; +Cc: linux-usb, alsa-devel
Simon Wood wrote:
> On Thu, April 14, 2016 1:35 am, Clemens Ladisch wrote:
>> Simon Wood wrote:
>>> The card shows up under '/proc/asound/cards', but only as Midi.
>>
>> Apparently, there is no PCM device. This driver creates a special
>> hardware-dependent device which is intended to be used with the Jack driver
>> "usb_stream".
>>
>> It might be possible to use the ALSA "usb_stream" plugin:
>> <http://www.alsa-project.org/main/index.php/Matrix:Module-usb-us122l>
>
> I have this '.asoundrc' file (made before previous postings), but that
> does not seem to make a usable card.
What error message do you get when you try to use aplay with that device?
> I'm expecting that a PCM device should /just/ appear under 'aplay -l'
The driver does not implement such a PCM device.
Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 13+ messages in thread
* Tascam US-122L - Corrupt USB descriptor
@ 2016-04-13 6:38 Simon Wood
0 siblings, 0 replies; 13+ messages in thread
From: Simon Wood @ 2016-04-13 6:38 UTC (permalink / raw)
To: alsa-devel; +Cc: alsa-devel
[-- Attachment #1: Type: text/plain, Size: 951 bytes --]
Hi all,
I have been struggling for the past few days to get a Tascam US-122L (USB
sound-card/midi interface) working, despite reading numerous forum
postings I have only been able to get the midi portion working.
I note that the USB descriptor seems to be corrupt. It declares 2
interfaces, but then describes 3 separate with the same interface number
for the last 2... could it be that this is confusing the Linux USB stack?
I have attached a copy of the descriptor and an annotated 'lsusb -vv'.
>From my experience with the HID subsystem, they have a mechanism for
patching HID descriptors, is the same possible for the base USB
descriptor? Trolling through 'drivers/usb' I didn't see anything... any
suggestions?
If this is possible I can try to increase the interface count and renumber
the last one.
Cheers,
Simon.
PS. For reference the device is:
Model No: US-122L
Serial: (21)0120xxx
Other barcode: 043774021628
[-- Attachment #2: us-122l-descriptors.txt --]
[-- Type: text/plain, Size: 5649 bytes --]
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 09 02 48 00 02 01 00 80 f0 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 09 04 01 00 00 ff 00 00 00 09 04 01 |................|
00000030 01 04 ff 00 00 00 09 05 81 05 4e 00 01 00 00 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 09 05 83 02 09 00 04 00 |...N............|
00000050 00 09 05 04 02 00 02 04 00 00 |..........|
0000005a
Bus 001 Device 042: ID 0644:800e TEAC Corp. TASCAM US-122L
--
00000000 12 01 00 02 00 00 00 40 44 06 0e 80 00 01 01 02 |.......@D.......|
00000010 03 01 __________________________________________ |....H...........|
--
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0644 TEAC Corp.
idProduct 0x800e TASCAM US-122L
bcdDevice 1.00
iManufacturer 1 (error) <------ Here be Errors!
iProduct 2 (error)
iSerial 3 (error)
bNumConfigurations 1
Configuration Descriptor:
--
00000010 _____ 09 02 48 00 02 01 00 80 f0 ______________ |....H...........|
--
bLength 9
bDescriptorType 2
wTotalLength 72
bNumInterfaces 2 <------- 2 interfaces
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 480mA
Interface Descriptor: <------ that's 1
--
00000010 _________________________________ 09 04 00 00 00 |....H...........|
00000020 ff 00 00 00 ____________________________________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 2
--
00000020 ___________ 09 04 01 00 00 ff 00 00 00 ________ |................|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor: <------ that's 3, err wait...
--
00000020 _______________________________________ 09 04 01 |................|
00000030 01 04 ff 00 00 00 ______________________________ |..........N.....|
--
bLength 9
bDescriptorType 4
bInterfaceNumber 1 <------ interface duplicate!!
bAlternateSetting 1
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
--
00000030 _________________ 09 05 81 05 4e 00 01 00 00 __ |..........N.....|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000030 _____________________________________________ 09 |..........N.....|
00000040 05 02 05 4e 00 01 00 00 _______________________ |...N............|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x004e 1x 78 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000040 _______________________ 09 05 83 02 09 00 04 00 |...N............|
00000050 00 ___________________________ |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0009 1x 9 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
--
00000050 __ 09 05 04 02 00 02 04 00 00 |..........|
--
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
Device Status: 0x0001
Self Powered
[-- Attachment #3: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2016-04-14 17:10 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-13 6:38 [alsa-devel] Tascam US-122L - Corrupt USB descriptor Simon Wood
2016-04-13 9:01 ` Clemens Ladisch
2016-04-13 9:01 ` [alsa-devel] " Clemens Ladisch
2016-04-13 14:08 ` Simon Wood
2016-04-13 14:08 ` [alsa-devel] " Simon Wood
2016-04-14 7:35 ` Clemens Ladisch
2016-04-14 16:20 ` Simon Wood
2016-04-14 16:20 ` [alsa-devel] " Simon Wood
2016-04-14 17:10 ` Clemens Ladisch
2016-04-14 17:10 ` [alsa-devel] " Clemens Ladisch
2016-04-14 7:35 ` Clemens Ladisch
2016-04-13 9:02 ` Ricard Wanderlof
2016-04-13 6:38 Simon Wood
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.