Re: [Alsa-user] help with Focusrite Scarlett 18i6 USB
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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