All of lore.kernel.org
 help / color / mirror / Atom feed
* Experimental USB audio support
@ 2002-05-29 18:44 Takashi Iwai
  0 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-29 18:44 UTC (permalink / raw)
  To: alsa-devel; +Cc: alsa-user

Hi,

right now you can find a driver for USB audio on cvs.
it's in alsa-driver not in alsa-kernel.
the driver will be built automatically when CONFIG_USB is specified in
kernel config.

please note that this driver is EXPERIMENTAL and TENTATIVE.
my first plan was to implement a USB library layer on alsa-lib, but it
was found out that implementation of isochronous transfer via 
usbdevfs will bring some difficulty.  so i started coding of a normal
kernel driver at first.
if any feasible solution to port such a stuff into user space, we
should do that.

but anyway, it's good to have a working code.  we can move it to other
place later.


the current code is partly based on OSS/USB audio.c code, but apart
from the parsing routine of audio-streaming, the resultant codes
became fairly different from the oss code.

almost all mixer controls are supported except for graphic equalizer.
the mapping of topology might not be perfect, since alsa has a plain
control structure.

so far, i've tested only audio playback on my speaker, which is
adaptive out without pitch/freq setting.  xmms is working.
the driver accepts the period size up to 1ms.  a courageous user can
try such a heavy condition.  (me?  did not yet :)
24bit / 96kHz should work, too, but i have no such a hardware.
besides, capture is not tested at all.


if you have a usb audio device, please test once.
(oh, i forgot to mention the driver name - it's "snd-usb-audio"
 quite easy, isn't it?)

if you find somewhat strange behavior (especially in mixer controls),
please send me the output of lsusb.

btw, when you use snd-usb-audio module, please make sure that you
don't load OSS audio.o together.  hotplug likely loads both modules at
the same time.


ciao,

Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
       [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
@ 2002-05-30  4:12 ` Patrick Shirkey
  2002-05-30  4:16 ` Patrick Shirkey
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-30  4:12 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

This is great but it seems that the cvs server is down :(


Takashi Iwai wrote:
> 
> Hi,
> 
> right now you can find a driver for USB audio on cvs.
> it's in alsa-driver not in alsa-kernel.
> the driver will be built automatically when CONFIG_USB is specified in
> kernel config.
> 
> please note that this driver is EXPERIMENTAL and TENTATIVE.
> my first plan was to implement a USB library layer on alsa-lib, but it
> was found out that implementation of isochronous transfer via
> usbdevfs will bring some difficulty.  so i started coding of a normal
> kernel driver at first.
> if any feasible solution to port such a stuff into user space, we
> should do that.
> 
> but anyway, it's good to have a working code.  we can move it to other
> place later.
> 
> the current code is partly based on OSS/USB audio.c code, but apart
> from the parsing routine of audio-streaming, the resultant codes
> became fairly different from the oss code.
> 
> almost all mixer controls are supported except for graphic equalizer.
> the mapping of topology might not be perfect, since alsa has a plain
> control structure.
> 
> so far, i've tested only audio playback on my speaker, which is
> adaptive out without pitch/freq setting.  xmms is working.
> the driver accepts the period size up to 1ms.  a courageous user can
> try such a heavy condition.  (me?  did not yet :)
> 24bit / 96kHz should work, too, but i have no such a hardware.
> besides, capture is not tested at all.
> 
> if you have a usb audio device, please test once.
> (oh, i forgot to mention the driver name - it's "snd-usb-audio"
>  quite easy, isn't it?)
> 
> if you find somewhat strange behavior (especially in mixer controls),
> please send me the output of lsusb.
> 
> btw, when you use snd-usb-audio module, please make sure that you
> don't load OSS audio.o together.  hotplug likely loads both modules at
> the same time.
> 
> ciao,
> 
> Takashi
> 
> _______________________________________________________________
> 
> Don't miss the 2002 Sprint PCS Application Developer's Conference
> August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/alsa-devel

-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
       [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
  2002-05-30  4:12 ` Experimental USB audio support Patrick Shirkey
@ 2002-05-30  4:16 ` Patrick Shirkey
  2002-05-31  8:45   ` Takashi Iwai
  2002-05-30  5:15 ` Patrick Shirkey
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-30  4:16 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 

> btw, when you use snd-usb-audio module, please make sure that you
> don't load OSS audio.o together.  hotplug likely loads both modules at
> the same time.
> 

So should we can turn off the module option in the kernel or just rmmod
audio.o?


-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
       [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
  2002-05-30  4:12 ` Experimental USB audio support Patrick Shirkey
  2002-05-30  4:16 ` Patrick Shirkey
@ 2002-05-30  5:15 ` Patrick Shirkey
  2002-05-31  8:03   ` Takashi Iwai
  2002-05-30  5:49 ` Patrick Shirkey
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-30  5:15 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

As you can tell I'm very excited about this.

Here's some preliminary stuff.

#dmesg
----
usb.c: registered new driver audio
hub.c: USB new device connect on bus1/1, assigned device number 3
ALSA usbaudio.c:1134: 3:1:1 : AS_GENERAL descriptor not found
ALSA usbaudio.c:1134: 3:2:1 : AS_GENERAL descriptor not found
devfs: devfs_register(): device already registered: "unknown"
ALSA usbaudio.c:1191: 3:4:1 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1134: 3:4:2 : AS_GENERAL descriptor not found
ALSA usbaudio.c:1191: 3:4:3 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1191: 3:5:1 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1134: 3:5:2 : AS_GENERAL descriptor not found
ALSA usbaudio.c:1191: 3:5:3 : frame size 3 doesn't match ALSA 24bit
sample format
devfs: devfs_register(): device already registered: "unknown"
ALSA usbaudio.c:1191: 3:7:1 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1134: 3:7:2 : AS_GENERAL descriptor not found
ALSA usbaudio.c:1191: 3:7:3 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1191: 3:8:1 : frame size 3 doesn't match ALSA 24bit
sample format
ALSA usbaudio.c:1134: 3:8:2 : AS_GENERAL descriptor not found
ALSA usbaudio.c:1191: 3:8:3 : frame size 3 doesn't match ALSA 24bit
sample format
devfs: devfs_register(): device already registered: "unknown"
----
 more /proc/asound/cards 
0 [card0          ]: CMI8738 - C-Media PCI CMI8738
                     C-Media PCI CMI8738 (model 37) at 0xa400, irq 5
1 [card1          ]: ICH - Intel 82801BA-ICH2
                     Intel 82801BA-ICH2 at 0xdc00, irq 3
2 [card2          ]: USB-Audio - USB Audio Driver
                     M Audio USB AudioSport Quattro (tm)
3 [card3          ]: USB-Audio - USB Audio Driver
                     M Audio USB AudioSport Quattro (tm)
4 [card4          ]: USB-Audio - USB Audio Driver
                     M Audio USB AudioSport Quattro (tm)
----
# lsusb -p /proc/asound/card2/ -vv
# lsusb -p /proc/asound/card3/ -vv
# lsusb -p /proc/asound/card4/ -vv
# lsusb -p /proc/asound/card4/ -vv -t
cannot open /proc/asound/card4//devices, No such file or directory (2)
----

I cannot get more out of lsusb than that. I assume it is somethign to do
with the fact the /proc/bus/usb has no entries. I will look into fixing
that unless the device is not supposed to register there.


-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
       [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
                   ` (2 preceding siblings ...)
  2002-05-30  5:15 ` Patrick Shirkey
@ 2002-05-30  5:49 ` Patrick Shirkey
  2002-05-30  8:17 ` tpeltone
       [not found] ` <001401c20747$642f5050$57c05c90@Witter>
  5 siblings, 0 replies; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-30  5:49 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel


At this point I cannot access any of the channels using amixer. This
card has 4 channels I/O but the devices in /proc/asound suggest that
only 3 are being accessed.

Also the only file that shows up in the dirs for card2 card3 and car4 is
'id'  which just says card2 card3 or card4.

Here's the relevant output from lsusb

----
# lsusb -t                     
Bus#  2
`-Dev#   1 Vendor 0x0000 Product 0x0000
Bus#  1
`-Dev#   1 Vendor 0x0000 Product 0x0000
  |-Dev#   4 Vendor 0x0763 Product 0x2001
  `-Dev#   2 Vendor 0x09da Product 0x0006

----
# lsusb -vv -d 0x0763:0x2001

Bus 001 Device 004: ID 0763:2001 Midiman 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 Interface
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0763 Midiman
  idProduct          0x2001 
  bcdDevice            1.01
  iManufacturer           1 M Audio
  iProduct                2 USB AudioSport Quattro (tm)
  iSerial                 0 
  bNumConfigurations      1
cannot get config descriptor 0, Connection timed out (110)
  Language IDs: (length=4)
     0409 English(US)
----


-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
       [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
                   ` (3 preceding siblings ...)
  2002-05-30  5:49 ` Patrick Shirkey
@ 2002-05-30  8:17 ` tpeltone
       [not found] ` <001401c20747$642f5050$57c05c90@Witter>
  5 siblings, 0 replies; 25+ messages in thread
From: tpeltone @ 2002-05-30  8:17 UTC (permalink / raw)
  To: alsa-devel

Takashi Iwai <tiwai@suse.de> writes:

> Hi,

> right now you can find a driver for USB audio on cvs.

Hello, what happen? Tried to run cvscompile in alsa-driver...

make[1]: Entering directory `/usr/local/src/alsa-cvs/alsa-driver/usb'
/usr/local/src/alsa-cvs/alsa-driver/include/sndversions.h was updated
gcc -E -M -DALSA_BUILD -D__KERNEL__ -DMODULE=1 -I/usr/local/src/alsa-cvs/alsa-driver/include -I/lib/modules/2.4.18-ac3/build/include -O2 -mpreferred-stack-boundary=2 -march=i686 -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -pipe  usbaudio.c usbaudio.h usbmixer.c > .depend
usbaudio.h:125:35: missing binary operator before '<'
make[1]: *** [fastdep] Error 1
make[1]: Leaving directory `/usr/local/src/alsa-cvs/alsa-driver/usb'
make: *** [dep] Error 1
bash-2.05$ date
Thu May 30 11:14:40 EEST 2002
bash-2.05$ uname -a
Linux teppo 2.4.18-ac3 #2 Sat Mar 9 18:20:38 EET 2002 i686 unknown
bash-2.05$ 

>Takashi

Teppo
-- 
Teppo Peltonen - tpeltone@cc.hut.fi - 0407380441



_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-30  5:15 ` Patrick Shirkey
@ 2002-05-31  8:03   ` Takashi Iwai
  2002-05-31  9:23     ` Patrick Shirkey
  2002-05-31  9:31     ` Patrick Shirkey
  0 siblings, 2 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31  8:03 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

Hi Patrick,

At Thu, 30 May 2002 14:15:55 +0900,
Patrick Shirkey wrote:
> 
> As you can tell I'm very excited about this.
> 
> Here's some preliminary stuff.
> 
> #dmesg
> ----
> usb.c: registered new driver audio
> hub.c: USB new device connect on bus1/1, assigned device number 3
> ALSA usbaudio.c:1134: 3:1:1 : AS_GENERAL descriptor not found
> ALSA usbaudio.c:1134: 3:2:1 : AS_GENERAL descriptor not found

looks like some interfaces don't have AS_GENERAL descriptor, which
specifies the pcm formats to be supported.  anyway detailed
description list from lsusb is necessary for analyse.


> devfs: devfs_register(): device already registered: "unknown"
> ALSA usbaudio.c:1191: 3:4:1 : frame size 3 doesn't match ALSA 24bit
> sample format

oh, that's interesting.  apparently the device uses 3 bytes for 24bit
sample format.  alsa supports only 4bytes-packed format, so far.
that's not expected.


> devfs: devfs_register(): device already registered: "unknown"

this is a bug of sound_core.c.  you can fix it by replacing
sound_core.c with the one in alsa-kernel tree.


> ----
>  more /proc/asound/cards 
> 0 [card0          ]: CMI8738 - C-Media PCI CMI8738
>                      C-Media PCI CMI8738 (model 37) at 0xa400, irq 5
> 1 [card1          ]: ICH - Intel 82801BA-ICH2
>                      Intel 82801BA-ICH2 at 0xdc00, irq 3
> 2 [card2          ]: USB-Audio - USB Audio Driver
>                      M Audio USB AudioSport Quattro (tm)
> 3 [card3          ]: USB-Audio - USB Audio Driver
>                      M Audio USB AudioSport Quattro (tm)
> 4 [card4          ]: USB-Audio - USB Audio Driver
>                      M Audio USB AudioSport Quattro (tm)

hmm..  do you have three devices?  i guess these three duplicated
entries are bogus...

> # lsusb -p /proc/asound/card2/ -vv
> # lsusb -p /proc/asound/card3/ -vv
> # lsusb -p /proc/asound/card4/ -vv
> # lsusb -p /proc/asound/card4/ -vv -t
> cannot open /proc/asound/card4//devices, No such file or directory (2)

just run lsusb (as root) without options.  then it will list all
devices out.  or, you can specify the vendor and device ids per -d
option.  please send me the output.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-30  4:16 ` Patrick Shirkey
@ 2002-05-31  8:45   ` Takashi Iwai
  0 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31  8:45 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Thu, 30 May 2002 13:16:27 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> > 
> 
> > btw, when you use snd-usb-audio module, please make sure that you
> > don't load OSS audio.o together.  hotplug likely loads both modules at
> > the same time.
> > 
> 
> So should we can turn off the module option in the kernel or just rmmod
> audio.o?

at the first plug-in, you will see both modules are loaded.
then rmmod audio.o would be enough.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Alsa-user] Experimental USB audio support
       [not found] ` <001401c20747$642f5050$57c05c90@Witter>
@ 2002-05-31  8:47   ` Takashi Iwai
       [not found]     ` <1022849629.589.2.camel@coldpack>
  0 siblings, 1 reply; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31  8:47 UTC (permalink / raw)
  To: Todd Witter; +Cc: alsa-devel

At Wed, 29 May 2002 14:31:12 -0500,
Todd Witter wrote:
> 
> Awesome!  So perhaps some limited useage for those with the Soundblaster
> Extigy?

well, yes, if creative follows the usb specification...
but i once heard that extigy works with OSS audio driver, so it likely
works.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  8:03   ` Takashi Iwai
@ 2002-05-31  9:23     ` Patrick Shirkey
  2002-05-31  9:38       ` Takashi Iwai
  2002-05-31  9:31     ` Patrick Shirkey
  1 sibling, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31  9:23 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 

> just run lsusb (as root) without options.  then it will list all
> devices out.  or, you can specify the vendor and device ids per -d
> option.  please send me the output.
> 
> 

I enventually managed to  get it. here it is again.

-----

Bus 001 Device 004: ID 0763:2001 Midiman 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 Interface
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0763 Midiman
  idProduct          0x2001 
  bcdDevice            1.01
  iManufacturer           1 M Audio
  iProduct                2 USB AudioSport Quattro (tm)
  iSerial                 0 
  bNumConfigurations      1
cannot get config descriptor 0, Connection timed out (110)
  Language IDs: (length=4)
     0409 English(US)

-----

-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  8:03   ` Takashi Iwai
  2002-05-31  9:23     ` Patrick Shirkey
@ 2002-05-31  9:31     ` Patrick Shirkey
  2002-05-31  9:41       ` Takashi Iwai
  1 sibling, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31  9:31 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 
> > devfs: devfs_register(): device already registered: "unknown"
> > ALSA usbaudio.c:1191: 3:4:1 : frame size 3 doesn't match ALSA 24bit
> > sample format
> 
> oh, that's interesting.  apparently the device uses 3 bytes for 24bit
> sample format.  alsa supports only 4bytes-packed format, so far.
> that's not expected.
> 

Damn. I assume it is not simple to incorporate.

> > devfs: devfs_register(): device already registered: "unknown"
> 
> this is a bug of sound_core.c.  you can fix it by replacing
> sound_core.c with the one in alsa-kernel tree.
> 

General question. Is the above likely to cause problems if I don't swap
them?

-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  9:23     ` Patrick Shirkey
@ 2002-05-31  9:38       ` Takashi Iwai
  2002-05-31 10:51         ` Takashi Iwai
  0 siblings, 1 reply; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31  9:38 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 18:23:31 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> > 
> 
> > just run lsusb (as root) without options.  then it will list all
> > devices out.  or, you can specify the vendor and device ids per -d
> > option.  please send me the output.
> > 
> > 
> 
> I enventually managed to  get it. here it is again.
> 
> -----
> 
> Bus 001 Device 004: ID 0763:2001 Midiman 
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               1.00
>   bDeviceClass            0 Interface
>   bDeviceSubClass         0 
>   bDeviceProtocol         0 
>   bMaxPacketSize0         8
>   idVendor           0x0763 Midiman
>   idProduct          0x2001 
>   bcdDevice            1.01
>   iManufacturer           1 M Audio
>   iProduct                2 USB AudioSport Quattro (tm)
>   iSerial                 0 
>   bNumConfigurations      1
> cannot get config descriptor 0, Connection timed out (110)

hmm...  that sounds bad...
but the module is loaded successfuly?  then the descriptor itself can
be got inside the kernel.
ok, i'll put a /proc interface to dump the obtained descriptor.
a moment please...


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  9:31     ` Patrick Shirkey
@ 2002-05-31  9:41       ` Takashi Iwai
  2002-05-31 10:48         ` Takashi Iwai
  0 siblings, 1 reply; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31  9:41 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 18:31:58 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> > 
> > > devfs: devfs_register(): device already registered: "unknown"
> > > ALSA usbaudio.c:1191: 3:4:1 : frame size 3 doesn't match ALSA 24bit
> > > sample format
> > 
> > oh, that's interesting.  apparently the device uses 3 bytes for 24bit
> > sample format.  alsa supports only 4bytes-packed format, so far.
> > that's not expected.
> > 
> 
> Damn. I assume it is not simple to incorporate.

yep..  and obviously no linux applications support such a format yet
even if we add 24bit/3bytes support.


> > > devfs: devfs_register(): device already registered: "unknown"
> > 
> > this is a bug of sound_core.c.  you can fix it by replacing
> > sound_core.c with the one in alsa-kernel tree.
> > 
> 
> General question. Is the above likely to cause problems if I don't swap
> them?

no, it works fine on 2.4 kernel, too.  i'm using it.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  9:41       ` Takashi Iwai
@ 2002-05-31 10:48         ` Takashi Iwai
  2002-05-31 11:14           ` Patrick Shirkey
  0 siblings, 1 reply; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31 10:48 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 11:41:46 +0200,
I wrote:
> 
> > > > devfs: devfs_register(): device already registered: "unknown"
> > > 
> > > this is a bug of sound_core.c.  you can fix it by replacing
> > > sound_core.c with the one in alsa-kernel tree.
> > > 
> > 
> > General question. Is the above likely to cause problems if I don't swap
> > them?
> 
> no, it works fine on 2.4 kernel, too.  i'm using it.

err, my statement was not clear --

original sound_core.c is ok as long as if you don't use devfs _and_
multiple cards.  the one in alsa-kernel is fixed for such a
condition.  but, generally, swapping to the fixed one will cause no 
problem.  it's fully compatible.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31  9:38       ` Takashi Iwai
@ 2002-05-31 10:51         ` Takashi Iwai
  2002-05-31 11:09           ` Patrick Shirkey
                             ` (3 more replies)
  0 siblings, 4 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31 10:51 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 11:38:53 +0200,
I wrote:
> 
> At Fri, 31 May 2002 18:23:31 +0900,
> Patrick Shirkey wrote:
> > 
> > Takashi Iwai wrote:
> > > 
> > 
> > > just run lsusb (as root) without options.  then it will list all
> > > devices out.  or, you can specify the vendor and device ids per -d
> > > option.  please send me the output.
> > > 
> > > 
> > 
> > I enventually managed to  get it. here it is again.
> > 
> > -----
> > 
> > Bus 001 Device 004: ID 0763:2001 Midiman 
> > Device Descriptor:
> >   bLength                18
> >   bDescriptorType         1
> >   bcdUSB               1.00
> >   bDeviceClass            0 Interface
> >   bDeviceSubClass         0 
> >   bDeviceProtocol         0 
> >   bMaxPacketSize0         8
> >   idVendor           0x0763 Midiman
> >   idProduct          0x2001 
> >   bcdDevice            1.01
> >   iManufacturer           1 M Audio
> >   iProduct                2 USB AudioSport Quattro (tm)
> >   iSerial                 0 
> >   bNumConfigurations      1
> > cannot get config descriptor 0, Connection timed out (110)
> 
> hmm...  that sounds bad...
> but the module is loaded successfuly?  then the descriptor itself can
> be got inside the kernel.
> ok, i'll put a /proc interface to dump the obtained descriptor.
> a moment please...

now a new version is cvs.  it dumps the descriptor at
/proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
please let me know.  i'll send you a patch.

btw, you might try another hub module.  for uhci there are two
modules, uhci and usb-uhci.  i'm not sure which one is better,
though.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 10:51         ` Takashi Iwai
@ 2002-05-31 11:09           ` Patrick Shirkey
  2002-05-31 11:55           ` Patrick Shirkey
                             ` (2 subsequent siblings)
  3 siblings, 0 replies; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31 11:09 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 
> now a new version is cvs.  it dumps the descriptor at
> /proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
> please let me know.  i'll send you a patch.
> 

Will try now just recompiling the kernel. Can't get 2.4.19-pre9-ac3 to
work though :(

> btw, you might try another hub module.  for uhci there are two
> modules, uhci and usb-uhci.  i'm not sure which one is better,
> though.
> 

They are in the process of deciding at the moment over in usb land. We
have until the end of June to make ourselves heard. Currently there are
4 different versions in circulation and the head of development wants to
cut that down to one. So we should do some testing with regards to
latency before they make the final decision. I'm assuming that the URB
code is relevant to Audio latency.



-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 10:48         ` Takashi Iwai
@ 2002-05-31 11:14           ` Patrick Shirkey
  2002-05-31 13:44             ` Takashi Iwai
  0 siblings, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31 11:14 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 
> At Fri, 31 May 2002 11:41:46 +0200,
> I wrote:
> >
> > > > > devfs: devfs_register(): device already registered: "unknown"
> > > >
> > > > this is a bug of sound_core.c.  you can fix it by replacing
> > > > sound_core.c with the one in alsa-kernel tree.
> > > >
> > >
> > > General question. Is the above likely to cause problems if I don't swap
> > > them?
> >
> > no, it works fine on 2.4 kernel, too.  i'm using it.
> 
> err, my statement was not clear --
> 

Yep :)

> original sound_core.c is ok as long as if you don't use devfs _and_
> multiple cards.  the one in alsa-kernel is fixed for such a
> condition.  but, generally, swapping to the fixed one will cause no
> problem.  it's fully compatible.
> 

So as long as I don't use devfs I don't need it. Currently I still use
the /proc interface but I don't have concrete understanding of the
difference between the two yet. fromwhat I gathered you have to specify
devfs in the kernel for it to be used. Is that correct?

Anyway I definitely use multiple cards so I will do the change if
neccessary.

-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 10:51         ` Takashi Iwai
  2002-05-31 11:09           ` Patrick Shirkey
@ 2002-05-31 11:55           ` Patrick Shirkey
  2002-05-31 13:38             ` Takashi Iwai
  2002-05-31 12:02           ` Patrick Shirkey
  2002-05-31 12:07           ` Patrick Shirkey
  3 siblings, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31 11:55 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
>
> now a new version is cvs.  it dumps the descriptor at
> /proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
> please let me know.  i'll send you a patch.
> 

With this patch there is *alot * more info in lsusb. Excellent work.

----

Bus 001 Device 003: ID 0763:2001 Midiman 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 Interface
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0763 Midiman
  idProduct          0x2001 
  bcdDevice            1.01
  iManufacturer           1 M Audio
  iProduct                2 USB AudioSport Quattro (tm)
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          974
    bNumInterfaces         10
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x40
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              2 USB AudioSport Quattro (tm)
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           52
        bInCollection           2
        baInterfaceNr( 0)       1
        baInterfaceNr( 1)       2
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             5
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             6
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bSourceID               5
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             2
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               1
        iTerminal               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           5
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                17
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            3 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           2
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                17
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            3 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              2 USB AudioSport Quattro (tm)
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           52
        bInCollection           2
        baInterfaceNr( 0)       4
        baInterfaceNr( 1)       5
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             5
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             6
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bSourceID               5
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             2
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               1
        iTerminal               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           5
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                14
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            2 Discrete
        tSamFreq[ 0]        88200
        tSamFreq[ 1]        96000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        576
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           5
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        288
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           5
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           2
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                14
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            2 Discrete
        tSamFreq[ 0]        88200
        tSamFreq[ 1]        96000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        576
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           2
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        288
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           2
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        6
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              2 USB AudioSport Quattro (tm)
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           52
        bInCollection           2
        baInterfaceNr( 0)       7
        baInterfaceNr( 1)       8
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             7
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             8
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bSourceID               7
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             3
        wTerminalType      0x0601 Analog Connector
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             4
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               3
        iTerminal               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        7
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        7
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           7
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                14
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            2 Discrete
        tSamFreq[ 0]        88200
        tSamFreq[ 1]        96000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        576
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        7
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           7
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        288
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        7
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           7
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            9
          Transfer Type            Isochronous
          Synch Type               Adaptive
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        8
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        8
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           4
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                14
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            2 Discrete
        tSamFreq[ 0]        88200
        tSamFreq[ 1]        96000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        576
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        8
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           4
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        288
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        8
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           4
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioControl Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        11025
        tSamFreq[ 1]        22050
        tSamFreq[ 2]        44100
        tSamFreq[ 3]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes           13
          Transfer Type            Isochronous
          Synch Type               Synchronous
        wMaxPacketSize        192
        bInterval               1
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        9
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize         32
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         32
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         32
        bInterval               0
  Language IDs: (length=4)
     0409 English(US)


----



-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 10:51         ` Takashi Iwai
  2002-05-31 11:09           ` Patrick Shirkey
  2002-05-31 11:55           ` Patrick Shirkey
@ 2002-05-31 12:02           ` Patrick Shirkey
  2002-05-31 12:07           ` Patrick Shirkey
  3 siblings, 0 replies; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31 12:02 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Here's the descriptor. Now there are two entries in the card2,3,4 dirs.
'descriptor' and 'id'. The descriptor files all appear to be the same. 

----
M Audio USB AudioSport Quattro (tm)

00: 09 02 ce 03 0a 01 00 40 00 09 04 00 00 00 01 01
10: 00 02 0a 24 01 00 01 34 00 02 01 02 0c 24 02 05
20: 01 01 00 02 03 00 00 00 09 24 03 06 01 06 00 05
30: 00 0c 24 02 01 01 06 00 02 03 00 00 00 09 24 03
40: 02 01 01 00 01 00 09 04 01 00 00 01 02 00 00 09
50: 04 01 04 01 01 02 00 00 07 24 01 05 01 01 00 11
60: 24 02 01 02 02 10 03 11 2b 00 22 56 00 44 ac 00
70: 09 05 03 09 c0 00 01 00 00 07 25 01 01 00 00 00
80: 09 04 02 00 00 01 02 00 00 09 04 02 04 01 01 02
90: 00 00 07 24 01 02 01 01 00 11 24 02 01 02 02 10
a0: 03 11 2b 00 22 56 00 44 ac 00 09 05 85 0d c0 00
b0: 01 00 00 07 25 01 01 00 00 00 09 04 03 00 00 01
c0: 01 00 02 0a 24 01 00 01 34 00 02 04 05 0c 24 02
d0: 05 01 01 00 02 03 00 00 00 09 24 03 06 01 06 00
e0: 05 00 0c 24 02 01 01 06 00 02 03 00 00 00 09 24
f0: 03 02 01 01 00 01 00 09 04 04 00 00 01 02 00 00
100: 09 04 04 01 01 01 02 00 00 07 24 01 05 01 01 00
110: 0e 24 02 01 02 03 18 02 88 58 01 00 77 01 09 05
120: 03 09 40 02 01 00 00 07 25 01 01 00 00 00 09 04
130: 04 03 01 01 02 00 00 07 24 01 05 01 01 00 14 24
140: 02 01 02 03 18 04 11 2b 00 22 56 00 44 ac 00 80
150: bb 00 09 05 03 09 20 01 01 00 00 07 25 01 01 00
160: 00 00 09 04 04 04 01 01 02 00 00 07 24 01 05 01
170: 01 00 14 24 02 01 02 02 10 04 11 2b 00 22 56 00
180: 44 ac 00 80 bb 00 09 05 03 09 c0 00 01 00 00 07
190: 25 01 01 00 00 00 09 04 05 00 00 01 02 00 00 09
1a0: 04 05 01 01 01 02 00 00 07 24 01 02 01 01 00 0e
1b0: 24 02 01 02 03 18 02 88 58 01 00 77 01 09 05 85
1c0: 0d 40 02 01 00 00 07 25 01 01 00 00 00 09 04 05
1d0: 03 01 01 02 00 00 07 24 01 02 01 01 00 14 24 02
1e0: 01 02 03 18 04 11 2b 00 22 56 00 44 ac 00 80 bb
1f0: 00 09 05 85 0d 20 01 01 00 00 07 25 01 01 00 00
200: 00 09 04 05 04 01 01 02 00 00 07 24 01 02 01 01
210: 00 14 24 02 01 02 02 10 04 11 2b 00 22 56 00 44
220: ac 00 80 bb 00 09 05 85 0d c0 00 01 00 00 07 25
230: 01 01 00 00 00 09 04 06 00 00 01 01 00 02 0a 24
240: 01 00 01 34 00 02 07 08 0c 24 02 07 01 01 00 02
250: 03 00 00 00 09 24 03 08 01 06 00 07 00 0c 24 02
260: 03 01 06 00 02 03 00 00 00 09 24 03 04 01 01 00
270: 03 00 09 04 07 00 00 01 02 00 00 09 04 07 01 01
280: 01 02 00 00 07 24 01 07 01 01 00 0e 24 02 01 02
290: 03 18 02 88 58 01 00 77 01 09 05 04 09 40 02 01
2a0: 00 00 07 25 01 01 00 00 00 09 04 07 03 01 01 02
2b0: 00 00 07 24 01 07 01 01 00 14 24 02 01 02 03 18
2c0: 04 11 2b 00 22 56 00 44 ac 00 80 bb 00 09 05 04
2d0: 09 20 01 01 00 00 07 25 01 01 00 00 00 09 04 07
2e0: 04 01 01 02 00 00 07 24 01 07 01 01 00 14 24 02
2f0: 01 02 02 10 04 11 2b 00 22 56 00 44 ac 00 80 bb
300: 00 09 05 04 09 c0 00 01 00 00 07 25 01 01 00 00
310: 00 09 04 08 00 00 01 02 00 00 09 04 08 01 01 01
320: 02 00 00 07 24 01 04 01 01 00 0e 24 02 01 02 03
330: 18 02 88 58 01 00 77 01 09 05 86 0d 40 02 01 00
340: 00 07 25 01 01 00 00 00 09 04 08 03 01 01 02 00
350: 00 07 24 01 04 01 01 00 14 24 02 01 02 03 18 04
360: 11 2b 00 22 56 00 44 ac 00 80 bb 00 09 05 86 0d
370: 20 01 01 00 00 07 25 01 01 00 00 00 09 04 08 04
380: 01 01 02 00 00 07 24 01 04 01 01 00 14 24 02 01
390: 02 02 10 04 11 2b 00 22 56 00 44 ac 00 80 bb 00
3a0: 09 05 86 0d c0 00 01 00 00 07 25 01 01 00 00 00
3b0: 09 04 09 00 03 ff 00 00 00 07 05 81 03 20 00 01
3c0: 07 05 82 02 20 00 00 07 05 02 02 20 00 00 
----
-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 10:51         ` Takashi Iwai
                             ` (2 preceding siblings ...)
  2002-05-31 12:02           ` Patrick Shirkey
@ 2002-05-31 12:07           ` Patrick Shirkey
  3 siblings, 0 replies; 25+ messages in thread
From: Patrick Shirkey @ 2002-05-31 12:07 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Just a thought.

That new info from lsusb could be because I just upgraded my jernel from
2.4.16 to 2.4.19-pre9. Nodoubt there was a lot of additions to the usb
code during the past 5 months.





-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 11:55           ` Patrick Shirkey
@ 2002-05-31 13:38             ` Takashi Iwai
  2002-06-03  5:52               ` Patrick Shirkey
  0 siblings, 1 reply; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31 13:38 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 20:55:01 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> >
> > now a new version is cvs.  it dumps the descriptor at
> > /proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
> > please let me know.  i'll send you a patch.
> > 
> 
> With this patch there is *alot * more info in lsusb. Excellent work.
 
as you already know, it's not me but the update of usb modules :)

anyway, could you check again whether the driver works?
just taking a look at the lsusb output, the device has no mixer units.
there are only input/output terminals.
so, don't be bothered even if you see no mixer controls.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 11:14           ` Patrick Shirkey
@ 2002-05-31 13:44             ` Takashi Iwai
  0 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31 13:44 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

At Fri, 31 May 2002 20:14:36 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> > 
> > At Fri, 31 May 2002 11:41:46 +0200,
> > I wrote:
> > >
> > > > > > devfs: devfs_register(): device already registered: "unknown"
> > > > >
> > > > > this is a bug of sound_core.c.  you can fix it by replacing
> > > > > sound_core.c with the one in alsa-kernel tree.
> > > > >
> > > >
> > > > General question. Is the above likely to cause problems if I don't swap
> > > > them?
> > >
> > > no, it works fine on 2.4 kernel, too.  i'm using it.
> > 
> > err, my statement was not clear --
> > 
> 
> Yep :)
> 
> > original sound_core.c is ok as long as if you don't use devfs _and_
> > multiple cards.  the one in alsa-kernel is fixed for such a
> > condition.  but, generally, swapping to the fixed one will cause no
> > problem.  it's fully compatible.
> > 
> 
> So as long as I don't use devfs I don't need it. Currently I still use
> the /proc interface but I don't have concrete understanding of the
> difference between the two yet. fromwhat I gathered you have to specify
> devfs in the kernel for it to be used. Is that correct?

yes.  let me rephrase:

if you use devfs interface for /dev, you cannot use the 2nd or later
card with the original sound_core.c on 2.4 kernel.
if you use proc interface for /dev/snd, it works anyway.

also -

if you build the kernel with devfs support and use 2nd or later cards,
then you'll get annoying error messages, even if you use proc
interface.  (it's harmless, though.)


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Alsa-user] Experimental USB audio support
       [not found]     ` <1022849629.589.2.camel@coldpack>
@ 2002-05-31 17:33       ` Takashi Iwai
  0 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-05-31 17:33 UTC (permalink / raw)
  To: Todd Witter; +Cc: alsa-devel

At Fri, 31 May 2002 07:53:48 -0500,
Todd Witter wrote:
> 
> On Fri, 2002-05-31 at 03:47, Takashi Iwai wrote:
> > At Wed, 29 May 2002 14:31:12 -0500,
> > Todd Witter wrote:
> > > 
> > > Awesome!  So perhaps some limited useage for those with the Soundblaster
> > > Extigy?
> > 
> > well, yes, if creative follows the usb specification...
> > but i once heard that extigy works with OSS audio driver, so it likely
> > works.
> > 
> > 
> > Takashi
> 
> Wow!  I had no idea.  So as long as the system sees the device on your
> USB hub, you should be able to get it working with OSS.
> Speaking of which (and I appreciate your sharing you knowledge with me
> and the rest of us), what "chipset" does the extigy use?  I assumed it
> was the same as the audigy cards.  The latest emu10K1 driver works
> pretty well with is.

no idea at all, and it doesn't matter, since usb devices are not
accessed directly.
whether the full function of the chip is supported or not is depending
only upon the firmware of the usb device itself.  from the driver, it
(should) look always same - a usb-standard device.


Takashi

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-05-31 13:38             ` Takashi Iwai
@ 2002-06-03  5:52               ` Patrick Shirkey
  2002-06-03 15:35                 ` Takashi Iwai
  0 siblings, 1 reply; 25+ messages in thread
From: Patrick Shirkey @ 2002-06-03  5:52 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

Takashi Iwai wrote:
> 
> At Fri, 31 May 2002 20:55:01 +0900,
> Patrick Shirkey wrote:
> >
> > Takashi Iwai wrote:
> > >
> > > now a new version is cvs.  it dumps the descriptor at
> > > /proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
> > > please let me know.  i'll send you a patch.
> > >
> >
> > With this patch there is *alot * more info in lsusb. Excellent work.
> 
> as you already know, it's not me but the update of usb modules :)
> 
> anyway, could you check again whether the driver works?
> just taking a look at the lsusb output, the device has no mixer units.
> there are only input/output terminals.
> so, don't be bothered even if you see no mixer controls.
> 
> Takashi

So far I cannot get sound out using

 cat /bin/bash > dev/dsp2
 aplay -D hw:2,0 -f cd some.wav

both return with device does not exist or similar

The same for recording.

arecord -D hw:2,0 -f cd  -d 10 /art/code/alsa/test.wav
ALSA lib pcm_hw.c:797:(snd_pcm_hw_open) open /dev/snd/pcmC2D0c failed:
No such file or directory
arecord: main:447: audio open error: No such file or directory

---
 ls /dev/snd/
controlC0  controlC3  midiC0D0   pcmC0D1p   pcmC1D0c   
controlC1  controlC4  pcmC0D0c   pcmC0D2c   pcmC1D0p   
controlC2  hwC0D0     pcmC0D0p   pcmC0D2p   timer  
---

Are the pcm devices created by the mixer code? If so then can you use
the descriptor info to hardcode them in?

On a side note I would really like to know how you use the descriptor
info to write a driver. You asked me for the same thing when you were
doing the cmipci driver. It would be a valuable additon to the
developers documentation.

Something like "Using the information provided in /proc/asound to write
a driver". 

If you/Paul/Jaroslav/Abramo or anyone else who grok it could write up
some quick notes I will gladly incorporate them into the online docs.

I am going to write up some info now on the installing the usb-audio
driver and add it to the wiki.


-- 
Patrick Shirkey - Boost Hardware Ltd.
For the discerning hardware connoisseur
Http://www.boosthardware.com
Http://www.boosthardware.com/LAU/guide/
=======================================================================

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: Experimental USB audio support
  2002-06-03  5:52               ` Patrick Shirkey
@ 2002-06-03 15:35                 ` Takashi Iwai
  0 siblings, 0 replies; 25+ messages in thread
From: Takashi Iwai @ 2002-06-03 15:35 UTC (permalink / raw)
  To: Patrick Shirkey; +Cc: alsa-devel

[-- Attachment #1: Type: text/plain, Size: 1519 bytes --]

At Mon, 03 Jun 2002 14:52:57 +0900,
Patrick Shirkey wrote:
> 
> Takashi Iwai wrote:
> > 
> > At Fri, 31 May 2002 20:55:01 +0900,
> > Patrick Shirkey wrote:
> > >
> > > Takashi Iwai wrote:
> > > >
> > > > now a new version is cvs.  it dumps the descriptor at
> > > > /proc/asound/cardX/descriptor.  if the cvs servers is not sync'ed,
> > > > please let me know.  i'll send you a patch.
> > > >
> > >
> > > With this patch there is *alot * more info in lsusb. Excellent work.
> > 
> > as you already know, it's not me but the update of usb modules :)
> > 
> > anyway, could you check again whether the driver works?
> > just taking a look at the lsusb output, the device has no mixer units.
> > there are only input/output terminals.
> > so, don't be bothered even if you see no mixer controls.
> > 
> > Takashi
> 
> So far I cannot get sound out using
> 
>  cat /bin/bash > dev/dsp2
>  aplay -D hw:2,0 -f cd some.wav
> 
> both return with device does not exist or similar
 
please apply the attached patch and build the modules with
--with-debug=detect option.  if a pcm is to be created, then it shouls
something.  or it will show an error message and the reason.

sorry, i have no time today - will take a deeper look at tomorrow.


btw, creation of pcm devices is independent from mixer devices.
so, i'm wondering why, too...

the descriptor info is necessary to build and look up pcms and
controls for alsa.  basically the usb descriptor includes _all_
necessary information to get the driver work.


ciao,

Takashi

[-- Attachment #2: usb-msg-fix.dif --]
[-- Type: application/octet-stream, Size: 2239 bytes --]

Index: alsa-driver/usb/usbaudio.c
===================================================================
RCS file: /suse/tiwai/cvs/alsa/alsa-driver/usb/usbaudio.c,v
retrieving revision 1.5
diff -u -r1.5 usbaudio.c
--- alsa-driver/usb/usbaudio.c	31 May 2002 17:00:48 -0000	1.5
+++ alsa-driver/usb/usbaudio.c	3 Jun 2002 15:31:58 -0000
@@ -1256,6 +1256,9 @@
 			subs->formats |= SNDRV_PCM_FMTBIT_MU_LAW;
 			pcm_format = SNDRV_PCM_FORMAT_MU_LAW;
 			break;
+		default:
+			snd_printk(KERN_INFO "%d:%u:%d : unsupported format type %d\n", format);
+			break;
 		}
 
 		if (pcm_format < 0)
@@ -1513,20 +1516,20 @@
 	for (i = 0; i < p1[7]; i++) {
 		j = p1[8 + i];
 		if (j >= config->bNumInterfaces) {
-			snd_printk(KERN_DEBUG "%d:%u:%d : does not exist\n",
+			snd_printk(KERN_ERR "%d:%u:%d : does not exist\n",
 				   dev->devnum, ctrlif, j);
 			continue;
 		}
 		iface = &config->interface[j];
 		if (iface->altsetting[0].bInterfaceClass != USB_CLASS_AUDIO ||
 		    iface->altsetting[0].bInterfaceSubClass != 2) {
-			snd_printk(KERN_DEBUG "non-supported interface %d\n", iface->altsetting[0].bInterfaceClass);
+			snd_printdd(KERN_ERR "%d:%u:%d: skipping non-supported interface %d\n", dev->devnum, ctrlif, j, iface->altsetting[0].bInterfaceClass);
 			/* skip non-supported classes */
 			continue;
 		}
 		if (iface->num_altsetting < 2) {
-			snd_printk(KERN_DEBUG "%d:%u:%d : no valid interface.\n",
-				   dev->devnum, ctrlif, j);
+			snd_printdd(KERN_ERR "%d:%u:%d: skipping - no valid interface.\n",
+				    dev->devnum, ctrlif, j);
 			continue;
 		}
 		if (iface->altsetting[0].bNumEndpoints > 0) {
@@ -1549,11 +1552,13 @@
 		   ep to be ep1, which seems to be the case */
 		if (iface->altsetting[1].endpoint[0].bEndpointAddress & USB_DIR_IN) {
 			if (numifin < USB_MAXINTERFACES) {
+				snd_printdd(KERN_INFO "adding an input interface %d:%u:%j\n", dev->devnum, ctrlif, j);
 				ifin[numifin++] = j;
 				usb_driver_claim_interface(&usb_audio_driver, iface, (void *)-1);
 			}
 		} else {
 			if (numifout < USB_MAXINTERFACES) {
+				snd_printdd(KERN_INFO "adding an output interface %d:%u:%j\n", dev->devnum, ctrlif, j);
 				ifout[numifout++] = j;
 				usb_driver_claim_interface(&usb_audio_driver, iface, (void *)-1);
 			}

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2002-06-03 15:35 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <s5hy9e2hk02.wl@alsa2.suse.de>
2002-05-30  4:12 ` Experimental USB audio support Patrick Shirkey
2002-05-30  4:16 ` Patrick Shirkey
2002-05-31  8:45   ` Takashi Iwai
2002-05-30  5:15 ` Patrick Shirkey
2002-05-31  8:03   ` Takashi Iwai
2002-05-31  9:23     ` Patrick Shirkey
2002-05-31  9:38       ` Takashi Iwai
2002-05-31 10:51         ` Takashi Iwai
2002-05-31 11:09           ` Patrick Shirkey
2002-05-31 11:55           ` Patrick Shirkey
2002-05-31 13:38             ` Takashi Iwai
2002-06-03  5:52               ` Patrick Shirkey
2002-06-03 15:35                 ` Takashi Iwai
2002-05-31 12:02           ` Patrick Shirkey
2002-05-31 12:07           ` Patrick Shirkey
2002-05-31  9:31     ` Patrick Shirkey
2002-05-31  9:41       ` Takashi Iwai
2002-05-31 10:48         ` Takashi Iwai
2002-05-31 11:14           ` Patrick Shirkey
2002-05-31 13:44             ` Takashi Iwai
2002-05-30  5:49 ` Patrick Shirkey
2002-05-30  8:17 ` tpeltone
     [not found] ` <001401c20747$642f5050$57c05c90@Witter>
2002-05-31  8:47   ` [Alsa-user] " Takashi Iwai
     [not found]     ` <1022849629.589.2.camel@coldpack>
2002-05-31 17:33       ` Takashi Iwai
2002-05-29 18:44 Takashi Iwai

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.