Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-17 Thread Daniel Mack
On Sat, Jul 16, 2011 at 10:23 AM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 On Wed, Jul 13, 2011 at 5:27 AM, Daniel Mack zon...@gmail.com wrote:
 Can you check the value of the ctrlif argument in snd_usb_create_mixer()?

 Two instances:  ctrlif = 0, ctrlif = 3.   Here's the relevant kernel
 log snippet:

Interface 3 is the MIDI streaming interface, and
snd_usb_create_mixer() shouldn't find any controls there. I assume
there is a confusion in the usage of mixer-chip_ctrl_if, and the code
there also seems wrong. Can you test whether the attached patch fixes
the problem for you?


Thanks,
Daniel


0001-ALSA-snd-usb-operate-on-given-mixer-interface-only.patch
Description: Binary data
--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-16 Thread Nicolai Krakowiak
On Wed, Jul 13, 2011 at 7:03 AM, Daniel Mack zon...@gmail.com wrote:
 Even though the root cause for your problem here is somewhere else, we
 indeed should prevent dividing by zero. Can you send the a new patch
 with only the first hunk of your hack (the one that checks for csize
 == 0) again with your Signed-off-by: line? I'll queue it up for you
 then.

I changed the snd_printdd to a KERN_ERR and split the line under 80
columns.  There's some additional cleanup that could happen with the
header-bLength, csize checks slightly below where this patch hits
(one of the length checks is redundant, as is the !csize check), but
I'm not well versed in the local style and didn't want to break
anything. =)

nicolai
From 83bcd097550a4494c6b3f362ebbc432249acde59 Mon Sep 17 00:00:00 2001
From: Nicolai Krakowiak nicolai.krakow...@gmail.com
Date: Fri, 15 Jul 2011 23:05:10 -0700
Subject: [PATCH 1/1] ALSA: snd-usb: avoid dividing by zero on invalid input


Signed-off-by: Nicolai Krakowiak nicolai.krakow...@gmail.com

diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index c22fa76..ee9aa08 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -1191,6 +1191,11 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, void
 
 	if (state-mixer-protocol == UAC_VERSION_1) {
 		csize = hdr-bControlSize;
+		if (!csize) {
+			snd_printdd(KERN_ERR usbaudio: unit %u: 
+invalid bControlSize == 0\n, unitid);
+			return -EINVAL;
+		}
 		channels = (hdr-bLength - 7) / csize - 1;
 		bmaControls = hdr-bmaControls;
 	} else {
-- 
1.7.4.1

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-16 Thread Nicolai Krakowiak
On Wed, Jul 13, 2011 at 5:27 AM, Daniel Mack zon...@gmail.com wrote:
 Can you check the value of the ctrlif argument in snd_usb_create_mixer()?

Two instances:  ctrlif = 0, ctrlif = 3.   Here's the relevant kernel
log snippet:

[  428.011513] ALSA sound/usb/endpoint.c:434: 3:1:1: add audio endpoint 0x1
[  428.468322] ALSA sound/usb/endpoint.c:434: 3:2:1: add audio endpoint 0x82
[  428.925048] ALSA sound/usb/endpoint.c:434: 3:2:2: add audio endpoint 0x82
[  429.381549] ALSA sound/usb/mixer.c:2224: ctrlif = 0
[  429.381556] ALSA sound/usb/mixer.c:1888: hack: subtype = 6, unitid = 10
[  429.381560] ALSA sound/usb/mixer.c:1888: hack: subtype = 9, unitid = 51
[  429.381563] ALSA sound/usb/mixer.c:1913: Ignoring UAC2_EXTENSION_UNIT
[  429.381566] ALSA sound/usb/mixer.c:1997: Unable to parse terminal
with bSourceID 10
[  429.381569] ALSA sound/usb/mixer.c:1888: hack: subtype = 11, unitid = 40
[  429.381572] ALSA sound/usb/mixer.c:1888: hack: subtype = 10, unitid = 41
[  429.381575] ALSA sound/usb/mixer.c:1888: hack: subtype = 10, unitid = 42
[  429.381578] ALSA sound/usb/mixer.c:1888: hack: subtype = 10, unitid = 43
[  429.382020] ALSA sound/usb/mixer.c:1863: [40] SU [Scarlett 18i6
USB-Sync] items = 3
[  429.382025] ALSA sound/usb/mixer.c:1888: hack: subtype = 6, unitid = 11
[  429.382029] ALSA sound/usb/mixer.c:1888: hack: subtype = 9, unitid = 52
[  429.382032] ALSA sound/usb/mixer.c:1913: Ignoring UAC2_EXTENSION_UNIT
[  429.382035] ALSA sound/usb/mixer.c:1997: Unable to parse terminal
with bSourceID 11
[  429.382240] ALSA sound/usb/card.c:152: 3:3:1: skipping, already claimed
[  429.382244] ALSA sound/usb/mixer.c:2224: ctrlif = 3
[  429.382248] ALSA sound/usb/mixer.c:1888: hack: subtype = 6, unitid = 10
[  429.382251] ALSA sound/usb/mixer.c:1200: usbaudio: unit 10: invalid
bControlSize == 0
[  429.382255] ALSA sound/usb/mixer.c:1984: Unable to parse terminal
with bSourceID 10
[  429.382258] ALSA sound/usb/mixer.c:1888: hack: subtype = 6, unitid = 11
[  429.382261] ALSA sound/usb/mixer.c:1200: usbaudio: unit 11: invalid
bControlSize == 0
[  429.382264] ALSA sound/usb/mixer.c:1984: Unable to parse terminal
with bSourceID 11


I've downloaded the USB Audio spec v2.0, and I'll hopefully have time
to poke at this a bit more on Sunday.

nicolai

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-13 Thread Nicolai Krakowiak
On Tue, Jul 12, 2011 at 5:22 PM, Daniel Mack zon...@gmail.com wrote:
 On Tue, Jul 12, 2011 at 12:39 PM, Nicolai Krakowiak
 nicolai.krakow...@gmail.com wrote:
 On Mon, Jul 11, 2011 at 3:22 AM, Daniel Mack zon...@gmail.com wrote:
 I got as far as sound/usb/card.c:514 calling snd_usb_create_mixer().
 It looks like it is hitting the default clause in check_input_term()
 and returning -ENODEV.  Another missing case UAC2_EXTENSION_UNIT_V2?

 Probably, yes. I just posted a set of patches to alsa-devel which
 should fix this. Would be very helpful if you could give them a try :)

Awesome. Thanks!  Your help has been amazing.  I'm happy to test patches.

There seems to be an issue in continuing along in mixer.c.  I
sprinkled printfs as I'm bad at parsing the kernel trace.  It looks
like the following occurs:

parse_audio_unit() with a subtype == UAC_FEATURE_UNIT
parse_audio_feature_unit() with state-mixer_protocol == UAC_VERSION_1
hdr-bControlSize == 0, divide by zero.

Here's the kernel log:

[  252.320033] usb 1-8: new high speed USB device number 8 using ehci_hcd
[  252.731689] ALSA sound/usb/endpoint.c:434: 8:1:1: add audio endpoint 0x1
[  253.188429] ALSA sound/usb/endpoint.c:434: 8:2:1: add audio endpoint 0x82
[  253.645042] ALSA sound/usb/endpoint.c:434: 8:2:2: add audio endpoint 0x82
[  254.101432] ALSA sound/usb/mixer.c:1907: Ignoring UAC2_EXTENSION_UNIT
[  254.101436] ALSA sound/usb/mixer.c:1991: Unable to parse terminal
with bSourceID 10
[  254.101899] ALSA sound/usb/mixer.c:1858: [40] SU [Scarlett 18i6
USB-Sync] items = 3
[  254.101905] ALSA sound/usb/mixer.c:1907: Ignoring UAC2_EXTENSION_UNIT
[  254.101908] ALSA sound/usb/mixer.c:1991: Unable to parse terminal
with bSourceID 11
[  254.102335] ALSA sound/usb/card.c:152: 8:3:1: skipping, already claimed
[  254.102356] divide error:  [#1] SMP
[  254.102360] last sysfs file:
/sys/devices/pci:00/:00:0b.1/usb1/idVendor
[  254.102363] CPU 0
[  254.102364] Modules linked in: snd_usb_audio(+) snd_usbmidi_lib
snd_hrtimer binfmt_misc vboxnetadp vboxnetflt vboxdrv kvm_intel kvm
dm_crypt snd_hda_codec_realtek tuner_simple tuner_types wm8775 tea5767
snd_hda_intel snd_hda_codec tuner snd_hwdep snd_pcm cx25840 nvidia(P)
snd_seq_midi snd_rawmidi ivtv adt7475 snd_seq_midi_event snd_seq
coretemp cx2341x i2c_algo_bit it87 snd_timer snd_seq_device hwmon_vid
v4l2_common firewire_sbp2 videodev snd ppdev nv_tco parport_pc
v4l2_compat_ioctl32 lp i2c_nforce2 soundcore tveeprom snd_page_alloc
shpchp psmouse parport serio_raw usbhid hid raid10 raid456 async_pq
async_xor xor async_memcpy async_raid6_recov raid6_pq async_tx raid1
raid0 multipath linear firewire_ohci firewire_core sky2 ahci
pata_jmicron libahci crc_itu_t forcedeth sata_nv pata_amd
[  254.102423]
[  254.102426] Pid: 3499, comm: modprobe Tainted: P
2.6.39-ngk.20110712 #1/GA-N680SLI-DQ6
[  254.102431] RIP: 0010:[a102b7e7]  [a102b7e7]
parse_audio_unit+0x137/0xd70 [snd_usb_audio]
[  254.102445] RSP: 0018:880037bcdaf8  EFLAGS: 00010256
[  254.102448] RAX: 001b RBX:  RCX: 0024
[  254.102451] RDX:  RSI: 8800b4c25544 RDI: 8800b4c25466
[  254.102453] RBP: 880037bcdbc8 R08: 8800b4c25488 R09: 0006
[  254.102456] R10: 8800b4c2546c R11:  R12: 
[  254.102458] R13: 880037bcdbd8 R14: 8800b4c25466 R15: 880037bcdbd8
[  254.102461] FS:  7ff7cdbbd720() GS:88013fc0()
knlGS:
[  254.102464] CS:  0010 DS:  ES:  CR0: 8005003b
[  254.102466] CR2: 7f7862d91000 CR3: 37aad000 CR4: 06f0
[  254.102469] DR0:  DR1:  DR2: 
[  254.102472] DR3:  DR6: 0ff0 DR7: 0400
[  254.102474] Process modprobe (pid: 3499, threadinfo
880037bcc000, task 8801057816e0)
[  254.102477] Stack:
[  254.102478]  880037bcdb18 00016373 
0021
[  254.102483]  0001 81c27581 880037bcdb78
0044b82fa09b5a53
[  254.102487]  880037bcdbe8 0246 
0246
[  254.102492] Call Trace:
[  254.102500]  [815be719] ? printk+0x6c/0x73
[  254.102508]  [a102c4e0] snd_usb_mixer_controls+0xc0/0x210
[snd_usb_audio]
[  254.102516]  [a102cba4] snd_usb_create_mixer+0xc4/0x2b0
[snd_usb_audio]
[  254.102523]  [a1028359] ?
snd_usb_create_stream+0x119/0x200 [snd_usb_audio]
[  254.102530]  [a1028804] usb_audio_probe+0x224/0x9c0 [snd_usb_audio]
[  254.102536]  [81036e39] ? default_spin_lock_flags+0x9/0x10
[  254.102541]  [81437dd9] usb_probe_interface+0x109/0x200
[  254.102546]  [813b4656] driver_probe_device+0x96/0x1c0
[  254.102549]  [813b482b] __driver_attach+0xab/0xb0
[  254.102552]  [813b4780] ? driver_probe_device+0x1c0/0x1c0
[  254.102556]  [813b360e] bus_for_each_dev+0x5e/0x90
[  

Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-13 Thread Daniel Mack
On Wed, Jul 13, 2011 at 10:07 AM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 There seems to be an issue in continuing along in mixer.c.  I
 sprinkled printfs as I'm bad at parsing the kernel trace.  It looks
 like the following occurs:

 parse_audio_unit() with a subtype == UAC_FEATURE_UNIT
 parse_audio_feature_unit() with state-mixer_protocol == UAC_VERSION_1

This shouldn't happen at all. The device is compliant to UAC2, so the
fact that state-mixer_protocol is set to UAC_VERSION_1 is a bug.

Can you check the value of the ctrlif argument in snd_usb_create_mixer()?


Daniel

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-13 Thread Daniel Mack
On Wed, Jul 13, 2011 at 10:07 AM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 If I apply the trivial hacky workaround (attached), I can play sound
 out the device again.  Here's the initialization output with the
 bControlSize hack applied.

Even though the root cause for your problem here is somewhere else, we
indeed should prevent dividing by zero. Can you send the a new patch
with only the first hunk of your hack (the one that checks for csize
== 0) again with your Signed-off-by: line? I'll queue it up for you
then.


Thanks,
Daniel

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-12 Thread Daniel Mack
On Tue, Jul 12, 2011 at 12:39 PM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 On Mon, Jul 11, 2011 at 3:22 AM, Daniel Mack zon...@gmail.com wrote:
 So we could just simply ignore this fact. Can you try what happens
 when you change the check in endpoint.c (around line 355, where the
 patch also changed things) so that it reads fmt-bLength  6 instead
 of fmt-bLength != 6?

 Done.  Still no luck, unfortunately.  I rebuilt with debugging turned
 on and got:

 [  255.460041] ALSA sound/usb/endpoint.c:434: 3:1:1: add audio endpoint 0x1
 [  255.917117] ALSA sound/usb/endpoint.c:434: 3:2:1: add audio endpoint 0x82
 [  256.374064] ALSA sound/usb/endpoint.c:434: 3:2:2: add audio endpoint 0x82
 [  256.830798] ALSA sound/usb/mixer.c:1907: Ignoring UAC2_EXTENSION_UNIT
 [  256.830829] snd-usb-audio: probe of 1-8:1.0 failed with error -5
 [  256.831024] ALSA sound/usb/card.c:152: 3:3:1: skipping, already claimed
 [  256.831136] ALSA sound/usb/midi.c:1687: MIDIStreaming version 01.00
 [  256.831138] ALSA sound/usb/midi.c:1722: EP 02: 1 jack(s)
 [  256.831141] ALSA sound/usb/midi.c:1737: EP 83: 1 jack(s)
 [  256.831151] ALSA sound/usb/midi.c:1657: created 1 output and 1 input ports

 I got as far as sound/usb/card.c:514 calling snd_usb_create_mixer().
 It looks like it is hitting the default clause in check_input_term()
 and returning -ENODEV.  Another missing case UAC2_EXTENSION_UNIT_V2?

As you seem to known what you're doing, can you try to disable the
mixer creation entirely? Just bail out very early in
snd_usb_create_mixer() or don't call it at all in the first place. The
audio should stream without any mixer functions.


 Also, did you try this device under Mac OS X?  Does it work there
 without installing a thrid-party driver?

 I just tried it.  I hear headphone audio and microphone input, but I
 cannot change either of the levels in System Preferences.

And is there any driver they provide for their device or do they claim
it should just work with OS X?


Thanks,
Daniel

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-12 Thread Clemens Ladisch
Nicolai Krakowiak wrote:
 On Mon, Jul 11, 2011 at 3:22 AM, Daniel Mack zon...@gmail.com wrote:
  Ok, that is also what your lsusb dump shows - the FORMAT_TYPE
  descriptor has a length of 10, even though a FORMAT_TYPE_I descriptor
  must be 6 bytes longs, according to the UAC specification. I can't see
  a reason why it is 10 bytes longs, and the 4 pending bytes don't make
  sense to me.

0x17700 = 96000
0xbb80 = 48000

  So we could just simply ignore this fact.

That would be a good idea in any case; future specifications might add
fields.

 WARNING: AppleUSBAudio has detected that a connected USB audio device is 
 sending too much audio data.

There is some confusion about the format of the frequency feedback data;
it seems Windows and OS X use different interpretations.  Anyway, Linux
dynamically adjusts to any format.


Regards,
Clemens

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-12 Thread Daniel Mack
On Tue, Jul 12, 2011 at 12:39 PM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 On Mon, Jul 11, 2011 at 3:22 AM, Daniel Mack zon...@gmail.com wrote:
 I got as far as sound/usb/card.c:514 calling snd_usb_create_mixer().
 It looks like it is hitting the default clause in check_input_term()
 and returning -ENODEV.  Another missing case UAC2_EXTENSION_UNIT_V2?

Probably, yes. I just posted a set of patches to alsa-devel which
should fix this. Would be very helpful if you could give them a try :)


Thanks,
Daniel

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-12 Thread Nicolai Krakowiak
On Tue, Jul 12, 2011 at 3:48 AM, Daniel Mack zon...@gmail.com wrote:
 As you seem to known what you're doing, can you try to disable the
 mixer creation entirely? Just bail out very early in
 snd_usb_create_mixer() or don't call it at all in the first place. The
 audio should stream without any mixer functions.

Thought about that when I woke up this morning.  I commented out
snd_usb_create_mixer() entirely.  Success!  I needed to specify the
output format for mplayer (mplayer -ao alsa:device=hw=1.0 -af
format=s32le).

 And is there any driver they provide for their device or do they claim
 it should just work with OS X?

Focusrite provides drivers and a mixer application for Windows and OS X.


nicolai

--
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on Lean Startup 
Secrets Revealed. This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-11 Thread Daniel Mack
On Sat, Jul 9, 2011 at 6:49 PM, Nicolai Krakowiak
nicolai.krakow...@gmail.com wrote:
 On Sat, Jul 9, 2011 at 2:25 AM, Daniel Mack zon...@gmail.com wrote:
 Can you apply the attached patch and send us a the kernel log messages again?

 After power cycling the device after boot:

 [ 191.372814] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
 [ 191.372935] 10:2:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
 [ 191.372940] 10:2:2 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
 [  191.373059] Ignoring UAC2_EXTENSION_UNIT
 [  191.373071] snd-usb-audio: probe of 1-8:1.0 failed with error -5

Ok, that is also what your lsusb dump shows - the FORMAT_TYPE
descriptor has a length of 10, even though a FORMAT_TYPE_I descriptor
must be 6 bytes longs, according to the UAC specification. I can't see
a reason why it is 10 bytes longs, and the 4 pending bytes don't make
sense to me.

So we could just simply ignore this fact. Can you try what happens
when you change the check in endpoint.c (around line 355, where the
patch also changed things) so that it reads fmt-bLength  6 instead
of fmt-bLength != 6?

Also, did you try this device under Mac OS X?  Does it work there
without installing a thrid-party driver?

 For fun, I tried VirtualBox, and got these additional messages:

 [  391.981360] usb 1-8: reset high speed USB device number 10 using ehci_hcd
 [  395.091124] usb 1-8: usbfs: usb_submit_urb returned -27
 [  395.091130] usb 1-8: usbfs: usb_submit_urb returned -27
 (last line repeated dozens of times).

That error might result in broken or unsupported ISOC transfer
handling in VirtualBox. I would recommend not using this environment
for testing.

 On tearing down of VirtualBox:

 [  631.550024] usb 1-8: reset high speed USB device number 10 using ehci_hcd
 [  631.701902] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
 [  631.702099] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
 [  631.702181] 10:2:1 : bogus bTerminalLink 22
 [  631.702184] 10:2:2 : bogus bTerminalLink 22

Do you also see these messages on your native Linux or under VirtualBox only?


Daniel

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-09 Thread Nicolai Krakowiak
On Sat, Jul 9, 2011 at 2:25 AM, Daniel Mack zon...@gmail.com wrote:
 Can you apply the attached patch and send us a the kernel log messages again?

After power cycling the device after boot:

[  191.372814] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
[  191.372935] 10:2:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
[  191.372940] 10:2:2 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
[  191.373059] Ignoring UAC2_EXTENSION_UNIT
[  191.373071] snd-usb-audio: probe of 1-8:1.0 failed with error -5


For fun, I tried VirtualBox, and got these additional messages:

[  391.981360] usb 1-8: reset high speed USB device number 10 using ehci_hcd
[  395.091124] usb 1-8: usbfs: usb_submit_urb returned -27
[  395.091130] usb 1-8: usbfs: usb_submit_urb returned -27
(last line repeated dozens of times).


On tearing down of VirtualBox:

[  631.550024] usb 1-8: reset high speed USB device number 10 using ehci_hcd
[  631.701902] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
[  631.702099] 10:1:1 : invalid UAC_FORMAT_TYPE desc (protocol 32, bLength 10)
[  631.702181] 10:2:1 : bogus bTerminalLink 22
[  631.702184] 10:2:2 : bogus bTerminalLink 22

Thanks for you help, Daniel.

nicolai

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-08 Thread Nicolai Krakowiak
On Fri, Jul 8, 2011 at 2:27 AM, Daniel Mack zon...@gmail.com wrote:
 Can I ask you to download the newest
 versions of the usbutils source code and try it out? You can find them
 here: http://git.kernel.org/?p=linux/kernel/git/gregkh/usbutils.git;a=summary

Done and attached.

 Also, support for this protocol has been added to the Linux kernel
 last year. Which kernel version are you using?

Stock Ubuntu 2.6.38.  Just to double-check, I built a 2.6.39.2 kernel
and tried that with the same results.


nicolai
Bus 001 Device 012: ID 1235:8004 Novation EMS 
Device Descriptor:
  bLength18
  bDescriptorType 1
  bcdUSB   2.00
  bDeviceClass  239 Miscellaneous Device
  bDeviceSubClass 2 ?
  bDeviceProtocol 1 Interface Association
  bMaxPacketSize064
  idVendor   0x1235 Novation EMS
  idProduct  0x8004 
  bcdDevice0.77
  iManufacturer   1 Focusrite
  iProduct2 Scarlett 18i6 USB
  iSerial 3 1346
  bNumConfigurations  2
  Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength  614
bNumInterfaces  6
bConfigurationValue 1
iConfiguration  0 
bmAttributes 0xc0
  Self Powered
MaxPower  500mA
Interface Association:
  bLength 8
  bDescriptorType11
  bFirstInterface 0
  bInterfaceCount 3
  bFunctionClass  1 Audio
  bFunctionSubClass   0 
  bFunctionProtocol  32 
  iFunction   0 
Interface Descriptor:
  bLength 9
  bDescriptorType 4
  bInterfaceNumber0
  bAlternateSetting   0
  bNumEndpoints   1
  bInterfaceClass 1 Audio
  bInterfaceSubClass  1 Control Device
  bInterfaceProtocol 32 
  iInterface  2 Scarlett 18i6 USB
  AudioControl Interface Descriptor:
bLength 9
bDescriptorType36
bDescriptorSubtype  1 (HEADER)
bcdADC   2.00
bCategory   8
wTotalLength  266
bmControl0x00
  AudioControl Interface Descriptor:
bLength 8
bDescriptorType36
bDescriptorSubtype 10 (CLOCK_SOURCE)
bClockID   41
bmAttributes 0x03 Internal programmable Clock 
bmControls   0x07
  Clock Frequency Control (read/write)
  Clock Validity Control (read-only)
bAssocTerminal  0
iClockSource9 Internal
  AudioControl Interface Descriptor:
bLength 8
bDescriptorType36
bDescriptorSubtype 10 (CLOCK_SOURCE)
bClockID   42
bmAttributes 0x00 External Clock 
bmControls   0x07
  Clock Frequency Control (read/write)
  Clock Validity Control (read-only)
bAssocTerminal  0
iClockSource   10 S/PDIF
  AudioControl Interface Descriptor:
bLength 8
bDescriptorType36
bDescriptorSubtype 10 (CLOCK_SOURCE)
bClockID   43
bmAttributes 0x00 External Clock 
bmControls   0x07
  Clock Frequency Control (read/write)
  Clock Validity Control (read-only)
bAssocTerminal  0
iClockSource   11 ADAT
  AudioControl Interface Descriptor:
bLength10
bDescriptorType36
bDescriptorSubtype 11 (CLOCK_SELECTOR)
bUnitID40
bNrInPins   3
baCSourceID( 0)41
baCSourceID( 1)42
baCSourceID( 2)43
bmControls   0x03
  Clock Selector Control (read/write)
iClockSelector  8 Scarlett 18i6 USB-Sync
  AudioControl Interface Descriptor:
bLength17
bDescriptorType36
bDescriptorSubtype  2 (INPUT_TERMINAL)
bTerminalID 2
wTerminalType  0x0101 USB Streaming
bAssocTerminal  0
bCSourceID 40
bNrChannels 6
bmChannelConfig   0x
bmControls0x
iChannelNames  13 Mon 1
iTerminal   6 Scarlett 18i6 USB-Output
  AudioControl Interface Descriptor:
bLength16
bDescriptorType36
bDescriptorSubtype  9 (EXTENSION_UNIT)
  Warning: Descriptor too short
bUnitID51
wExtensionCode  0
bNrPins 1
baSourceID( 0)  2
bNrChannels 6
wChannelConfig  

Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-07 Thread Clemens Ladisch
Nicolai Krakowiak wrote:
 I have an unsupported USB device (Focusrite Scarlett 18i6), and I was
 curious what steps are necessary to get it to work under Linux.

  [158184.220019] usb 1-8: new high speed USB device using ehci_hcd and 
 address 20
  [158184.372587] 20:1:1 : invalid UAC_FORMAT_TYPE desc
  [158184.372709] 20:2:1 : invalid UAC_FORMAT_TYPE desc
  [158184.372713] 20:2:2 : invalid UAC_FORMAT_TYPE desc
  [158184.372835] usbaudio: unit 51: unexpected type 0x09
  [158184.372845] snd-usb-audio: probe of 1-8:1.0 failed with error -5

This device has descriptors that are not in the format that the driver
thinks a device that conforms to the specification should have.

Please show the output of lsusb -v for this deviuce.

 crw-rw+ 1 root audio 116,  2 Jul  5 13:21 /dev/snd/midiC1D0

MIDI should work.  ;-)


Regards,
Clemens

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-07 Thread Nicolai Krakowiak
On Wed, Jul 6, 2011 at 6:08 AM, Graham Dicker graham.dic...@antecor.com wrote:

 Try making the Focusrite the primary device. This worked for me under
 somewhat similar circumstances.

 Graham Dicker

Thanks for the suggestion, Graham.  I tried this last night without
success unfortunately.

nicolai

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB

2011-07-06 Thread Graham Dicker
Nicolai Krakowiak wrote:

 Hi folks,
 
 I have an unsupported USB device (Focusrite Scarlett 18i6), and I was
 curious what steps are necessary to get it to work under Linux.
 The internal sound card on this machine works well (hw:0).  After
 loading snd_usb_audio, the 18i6 shows up as expected as device 1:
 
  % cat /proc/asound/cards
   0 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0xe230 irq 20
   1 [USB]: USB-Audio - Scarlett 18i6 USB
Focusrite Scarlett 18i6 USB at
 usb-:00:0b.1-8, high speed
 
 But this fails:
  %  speaker-test -Dhw:1 -c2 -twav
  speaker-test 1.0.24.2
 
  Playback device is hw:1
  Stream parameters are 48000Hz, S16_LE, 2 channels
  WAV file(s)
  Playback open error: -2,No such file or directory
 
 The contents of /dev/snd:
  /dev/snd/pcmC0D0c  /dev/snd/pcmC0D0p  /dev/snd/pcmC0D1c
 /dev/snd/pcmC0D1p  /dev/snd/pcmC0D2c
 
 Plugging the device in yields the following output from dmesg:
 
  [158184.220019] usb 1-8: new high speed USB device using ehci_hcd
 and address 20
  [158184.372587] 20:1:1 : invalid UAC_FORMAT_TYPE desc
  [158184.372709] 20:2:1 : invalid UAC_FORMAT_TYPE desc
  [158184.372713] 20:2:2 : invalid UAC_FORMAT_TYPE desc
  [158184.372835] usbaudio: unit 51: unexpected type 0x09
  [158184.372845] snd-usb-audio: probe of 1-8:1.0 failed with error -5
 
 I've attached the output from alsa-info.sh.
 
 If it's useful information, I've also booted Windows XP under
 VirtualBox (Linux host OS) and was able to use Focusrite's mixer
 application, see activity in the meters with a microphone, and hear
 differences when changing levels in the headphone out/mic in/etc.
 I was not able to play audio or record using the 18i6 through XP,
 though.  The device does work as expected when running XP as a host
 OS.
 
 Any ideas on how I could get the 18i6 working, or is this a lost cause
 without documentation from Focusrite?
 
 Thanks,
 Nicolai

Try making the Focusrite the primary device. This worked for me under 
somewhat similar circumstances.

Graham Dicker



--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user