Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Clemens Ladisch googlemail.com> writes: > > Matthew Robbetts wrote: > > Is this bug fixed upstream at this point? > > This patch is still untested: > > --8<->8-- > ALSA: usb-audio: fix invalid length check for RME and other UAC 2 devices > > Commit 23caaf19b11e (ALSA: usb-mixer: Add support for Audio Class v2.0) > forgot to adjust the length check for UAC 2.0 feature unit descriptors. > This would make the code abort on encountering a feature unit without > per-channel controls, and thus prevented the driver to work with any > device having such a unit, such as the RME Fireface UCX. > > Reported-by: Florian Hanisch uni-potsdam.de> > Cc: Daniel Mack caiaq.de> > Cc: 2.6.35+ vger.kernel.org> > Signed-off-by: Clemens Ladisch ladisch.de> > --- Hi Clemens, I can confirm that this patch works for the RME Babyface. The Babyface has two alternate settings (2in/2out or 10in/12out). Is ALSA capable to switch between them? Best regards, Michael -- Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi Matt, Thanks for your message! I meant alsamixer not alsa-mixer, there is no hyphen, sorry. I had a quick look in the alsa wiki and as far I as can see, the programs alsamixer and amixer provide a similar functionality. alsamixer came with the alsa-utils package on ubuntu and has an nccurses-based interface. I can not post the output of amixer or dmesg right now because the fireface ucx that I have been using for testing was only borrowed from a friend. I plan to buy my own ucx soon and will post the results then. Anyway, I remember that there was an issue similar to the one you are reporting: > So, we see that exactly one control is provided. At first, I thought > this control had no effect at all, as the audio output only becomes > audibly quieter when this control is well below 10%/-60dB. The rest of > the range sounds like full volume, which is definitely not correct. Moreover, not all the 8 in- and 8 out-channels were displayed correctly. But audio output was also working for me and I could access all channels through jack at sample rates up to 96 kHz. Best, Florian Quoting Matthew Robbetts : > Hi Florian, > > On 21/12/12 23:36, Florian Hanisch wrote: >> Hi Matthew, >> >> did you try to use alsa-mixer ? It was not working when I was trying the >> fireface ucx with the modified mixer.c some weeks ago. It would be >> interesting to know whether it is different on your system / with the >> new patch. > > > I'm not sure exactly what you mean by alsa-mixer, as I do not have a > program by that name. > > $ cat /proc/asound/card1/id > Babyface2312334 > > $ amixer --card 1 > Simple mixer control 'Speaker',0 > Capabilities: pvolume pvolume-joined > Playback channels: Mono > Limits: Playback 0 - 130 > Mono: Playback 130 [100%] [0.00dB] > > > So, we see that exactly one control is provided. At first, I thought > this control had no effect at all, as the audio output only becomes > audibly quieter when this control is well below 10%/-60dB. The rest of > the range sounds like full volume, which is definitely not correct. > > So, perhaps there is a bug either in the usb audio driver or in the > class-compliance of the RME interfaces. Is there a double dB-mapping or > something? > > Also: > > $ dmesg | grep -b5 'usb 1-1' > ... > 75253:[ 37.663034] usb 1-1: new high-speed USB device number 2 using > ehci_hcd > 75327-[ 37.714346] ehci_hcd :00:1a.7: port 1 reset complete, port > enabled > 75401-[ 37.714360] ehci_hcd :00:1a.7: GetStatus port:1 status > 001005 0 ACK POWER sig=se0 PE CONNECT > 75502:[ 37.777245] usb 1-1: skipped 1 descriptor after configuration > 75567:[ 37.777256] usb 1-1: skipped 7 descriptors after interface > 75629:[ 37.777261] usb 1-1: skipped 2 descriptors after interface > 75691:[ 37.777268] usb 1-1: skipped 1 descriptor after endpoint > 75751:[ 37.777273] usb 1-1: skipped 2 descriptors after interface > 75813:[ 37.777278] usb 1-1: skipped 1 descriptor after endpoint > 75873:[ 37.777283] usb 1-1: skipped 2 descriptors after interface > 75935:[ 37.777288] usb 1-1: skipped 1 descriptor after endpoint > 75995:[ 37.777293] usb 1-1: skipped 2 descriptors after interface > 76057:[ 37.777298] usb 1-1: skipped 1 descriptor after endpoint > 76117:[ 37.777303] usb 1-1: skipped 5 descriptors after interface > 76179:[ 37.777308] usb 1-1: skipped 1 descriptor after endpoint > 76239:[ 37.777313] usb 1-1: skipped 1 descriptor after endpoint > 76299:[ 37.777356] usb 1-1: default language 0x0409 > 76347:[ 37.31] usb 1-1: udev 2, busnum 1, minor = 1 > 76399:[ 37.38] usb 1-1: New USB device found, idVendor=0424, > idProduct=3fd7 > 76475:[ 37.46] usb 1-1: New USB device strings: Mfr=1, Product=2, > SerialNumber=3 > 76556:[ 37.52] usb 1-1: Product: Babyface (23123346) > 76609:[ 37.57] usb 1-1: Manufacturer: RME > 76651:[ 37.61] usb 1-1: SerialNumber: D6E37D3FA346FC8 > 76705:[ 37.778681] usb 1-1: usb_probe_device > 76746:[ 37.778689] usb 1-1: configuration #1 chosen from 1 choice > 76808:[ 37.778749] usb 1-1: adding 1-1:1.0 (config #1, interface 0) > 76872-[ 37.778872] snd-usb-audio 1-1:1.0: usb_probe_interface > 76930-[ 37.778882] snd-usb-audio 1-1:1.0: usb_probe_interface - got id > 76997-[ 37.781652] cannot get ctl value: req = 0x83, wValue = 0x200, > wIndex = 0x0, type = 4 > 77085-[ 37.785159] cannot get ctl value: req = 0x83, wValue = 0x200, > wIndex = 0x0, type = 4 > 77173-[ 37.785314] cannot get ctl value: req = 0x83, wValue = 0x200, > wIndex = 0x0, type = 4 > 77261:[ 37.785372] usb 1-1: adding 1-1:1.1 (config #1, interface 1) > 77325:[ 37.785675] usb 1-1: adding 1-1:1.2 (config #1, interface 2) > 77389:[ 37.785904] usb 1-1: adding 1-1:1.3 (config #1, interface 3) > ... > > > This doesn't look like things are going totally smoothly. But audio > output DOES work, and the one volume control that is visible does have > some effect. > > > Is this different to your findings with the
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi Florian, On 21/12/12 23:36, Florian Hanisch wrote: > Hi Matthew, > > did you try to use alsa-mixer ? It was not working when I was trying the > fireface ucx with the modified mixer.c some weeks ago. It would be > interesting to know whether it is different on your system / with the > new patch. I'm not sure exactly what you mean by alsa-mixer, as I do not have a program by that name. $ cat /proc/asound/card1/id Babyface2312334 $ amixer --card 1 Simple mixer control 'Speaker',0 Capabilities: pvolume pvolume-joined Playback channels: Mono Limits: Playback 0 - 130 Mono: Playback 130 [100%] [0.00dB] So, we see that exactly one control is provided. At first, I thought this control had no effect at all, as the audio output only becomes audibly quieter when this control is well below 10%/-60dB. The rest of the range sounds like full volume, which is definitely not correct. So, perhaps there is a bug either in the usb audio driver or in the class-compliance of the RME interfaces. Is there a double dB-mapping or something? Also: $ dmesg | grep -b5 'usb 1-1' ... 75253:[ 37.663034] usb 1-1: new high-speed USB device number 2 using ehci_hcd 75327-[ 37.714346] ehci_hcd :00:1a.7: port 1 reset complete, port enabled 75401-[ 37.714360] ehci_hcd :00:1a.7: GetStatus port:1 status 001005 0 ACK POWER sig=se0 PE CONNECT 75502:[ 37.777245] usb 1-1: skipped 1 descriptor after configuration 75567:[ 37.777256] usb 1-1: skipped 7 descriptors after interface 75629:[ 37.777261] usb 1-1: skipped 2 descriptors after interface 75691:[ 37.777268] usb 1-1: skipped 1 descriptor after endpoint 75751:[ 37.777273] usb 1-1: skipped 2 descriptors after interface 75813:[ 37.777278] usb 1-1: skipped 1 descriptor after endpoint 75873:[ 37.777283] usb 1-1: skipped 2 descriptors after interface 75935:[ 37.777288] usb 1-1: skipped 1 descriptor after endpoint 75995:[ 37.777293] usb 1-1: skipped 2 descriptors after interface 76057:[ 37.777298] usb 1-1: skipped 1 descriptor after endpoint 76117:[ 37.777303] usb 1-1: skipped 5 descriptors after interface 76179:[ 37.777308] usb 1-1: skipped 1 descriptor after endpoint 76239:[ 37.777313] usb 1-1: skipped 1 descriptor after endpoint 76299:[ 37.777356] usb 1-1: default language 0x0409 76347:[ 37.31] usb 1-1: udev 2, busnum 1, minor = 1 76399:[ 37.38] usb 1-1: New USB device found, idVendor=0424, idProduct=3fd7 76475:[ 37.46] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 76556:[ 37.52] usb 1-1: Product: Babyface (23123346) 76609:[ 37.57] usb 1-1: Manufacturer: RME 76651:[ 37.61] usb 1-1: SerialNumber: D6E37D3FA346FC8 76705:[ 37.778681] usb 1-1: usb_probe_device 76746:[ 37.778689] usb 1-1: configuration #1 chosen from 1 choice 76808:[ 37.778749] usb 1-1: adding 1-1:1.0 (config #1, interface 0) 76872-[ 37.778872] snd-usb-audio 1-1:1.0: usb_probe_interface 76930-[ 37.778882] snd-usb-audio 1-1:1.0: usb_probe_interface - got id 76997-[ 37.781652] cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x0, type = 4 77085-[ 37.785159] cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x0, type = 4 77173-[ 37.785314] cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x0, type = 4 77261:[ 37.785372] usb 1-1: adding 1-1:1.1 (config #1, interface 1) 77325:[ 37.785675] usb 1-1: adding 1-1:1.2 (config #1, interface 2) 77389:[ 37.785904] usb 1-1: adding 1-1:1.3 (config #1, interface 3) ... This doesn't look like things are going totally smoothly. But audio output DOES work, and the one volume control that is visible does have some effect. Is this different to your findings with the Fireface UCX? Thanks, Matt -- Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi Matthew, did you try to use alsa-mixer ? It was not working when I was trying the fireface ucx with the modified mixer.c some weeks ago. It would be interesting to know whether it is different on your system / with the new patch. Thanks, Florian Quoting Matthew Robbetts : > On 18/12/12 13:19, Clemens Ladisch wrote: >> Matthew Robbetts wrote: >>> Is this bug fixed upstream at this point? >> >> This patch is still untested: >> > > Hi Clemens, > > I can confirm that I get the original error with a Babyface, and that > this patch appears to fix it beautifully. > > At least, insofar as it is now seen by ALSA (/proc/asound/card0 is > populated as I'd expect), there are no errors in dmesg, and my default > Pulseaudio plays back audio with it (and at the correct sample rate, > too). I have not tested audio input yet, but things look promising. > > Is there anything specific I ought to check? > > Thanks! > Matt -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Quoting Matthew Robbetts : > On 18/12/12 13:19, Clemens Ladisch wrote: >> Matthew Robbetts wrote: >>> Is this bug fixed upstream at this point? >> >> This patch is still untested: >> > > Hi Clemens, > > I can confirm that I get the original error with a Babyface, and that > this patch appears to fix it beautifully. > > At least, insofar as it is now seen by ALSA (/proc/asound/card0 is > populated as I'd expect), there are no errors in dmesg, and my default > Pulseaudio plays back audio with it (and at the correct sample rate, > too). I have not tested audio input yet, but things look promising. > > Is there anything specific I ought to check? > > Thanks! > Matt -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
On 18/12/12 13:19, Clemens Ladisch wrote: > Matthew Robbetts wrote: >> Is this bug fixed upstream at this point? > > This patch is still untested: > Hi Clemens, I can confirm that I get the original error with a Babyface, and that this patch appears to fix it beautifully. At least, insofar as it is now seen by ALSA (/proc/asound/card0 is populated as I'd expect), there are no errors in dmesg, and my default Pulseaudio plays back audio with it (and at the correct sample rate, too). I have not tested audio input yet, but things look promising. Is there anything specific I ought to check? Thanks! Matt -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
On 18 December 2012 13:19, Clemens Ladisch wrote: > Matthew Robbetts wrote: >> Is this bug fixed upstream at this point? > > This patch is still untested: Ah, fantastic, there's a patch. Well, I have a babyface winging its way to me (though, no UCXes...) so if it doesn't get tested before then, I'll give it a whirl. -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Matthew Robbetts wrote: > Is this bug fixed upstream at this point? This patch is still untested: --8<->8-- ALSA: usb-audio: fix invalid length check for RME and other UAC 2 devices Commit 23caaf19b11e (ALSA: usb-mixer: Add support for Audio Class v2.0) forgot to adjust the length check for UAC 2.0 feature unit descriptors. This would make the code abort on encountering a feature unit without per-channel controls, and thus prevented the driver to work with any device having such a unit, such as the RME Fireface UCX. Reported-by: Florian Hanisch Cc: Daniel Mack Cc: 2.6.35+ Signed-off-by: Clemens Ladisch --- sound/usb/mixer.c | 17 - 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 298070e..41e8bfb 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -1259,16 +1259,23 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, void } channels = (hdr->bLength - 7) / csize - 1; bmaControls = hdr->bmaControls; + if (hdr->bLength < 7 + csize) { + snd_printk(KERN_ERR "usbaudio: unit %u: " + "invalid UAC_FEATURE_UNIT descriptor\n", + unitid); + return -EINVAL; + } } else { struct uac2_feature_unit_descriptor *ftr = _ftr; csize = 4; channels = (hdr->bLength - 6) / 4 - 1; bmaControls = ftr->bmaControls; - } - - if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { - snd_printk(KERN_ERR "usbaudio: unit %u: invalid UAC_FEATURE_UNIT descriptor\n", unitid); - return -EINVAL; + if (hdr->bLength < 6 + csize) { + snd_printk(KERN_ERR "usbaudio: unit %u: " + "invalid UAC_FEATURE_UNIT descriptor\n", + unitid); + return -EINVAL; + } } /* parse the source unit */ -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi all, >>> >>> Yes, interesting this never got triggered before. The 7 should be a 6 in >>> v2 case ... Is this bug fixed upstream at this point? I am interested in using an RME Babyface with its new class-compliant mode, and this bug is mentioned by RME as the only thing standing in the way. If it is fixed upstream, would the fix be included in the 3.7 kernel? Or not until 3.8? Thanks! Matt -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi, here is short update: I tested the device and I get sound. However, there seems to be a problem with the alsamixer, which is already indicated in the dmesg output given in my old message (see below). It seems that in mixer.c, the function get_ctl_value_v2 aborts with the error message shown in dmesg but so far, I could not figure out why. I tried to use the mixer, it works fine with the internal soundcard but if I choose the fireface ucx, it only shows one master output slider and no input channels at all and the master output slider has no influence on the volume at all. It is possible, to control the volume through PulseAudio-pavucontrol. PulseAudio lists the fireface ucx as "analog stereo" device but it should actually have 8 in- / 8 out-channels. When connected to a mac-os using the usb-class-compliance-mode and not the native RME-driver, these 8/8-channels are displayed! Best, Florian Quoting Florian Hanisch : > Hi, > > thanks for the information. I just commented the following part of mixer.c > > if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { > snd_printk(KERN_ERR "usbaudio: unit %u: invalid > UAC_FEATURE_UNIT descriptor\n", unitid); > return -EINVAL; > } > > and compiled alsa-driver, alsa-lib, alsa-tools and alsa-oss basically > following the instructions here: > http://alsa.opensrc.org/Quick_Install. There were warnings during the > compiling process but no errors. > > The new driver might work, I have the following output from dmesg > > [ 41.064090] usb 1-2: new high-speed USB device number 5 using ehci_hcd > [ 41.200270] ALSA mixer.c:352 cannot get ctl value: req = 0x83, > wValue = 0x200, wIndex = 0x200, type = 4 > [ 41.201129] ALSA mixer.c:352 cannot get ctl value: req = 0x83, > wValue = 0x200, wIndex = 0x200, type = 4 > [ 41.201230] ALSA mixer.c:352 cannot get ctl value: req = 0x83, > wValue = 0x200, wIndex = 0x200, type = 4 > > and from aplay -l > > List of PLAYBACK Hardware Devices > card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog] >Subdevices: 1/1 >Subdevice #0: subdevice #0 > card 0: Intel [HDA Intel], device 1: AD198x Digital [AD198x Digital] >Subdevices: 1/1 >Subdevice #0: subdevice #0 > card 1: F23455936 [Fireface UCX (23455936)], device 0: USB Audio [USB Audio] >Subdevices: 1/1 >Subdevice #0: subdevice #0 > > The fireface ucx moreover appears in the system settings / sound > menue. I did not test whether the device actually produces sound, I > hope I can do that tomorrow. > > I have one more question concerning the usb-audio-2.0 standard: > How many in/out channels am I able to run (on linux) ? RME claim on > their website, that it is possible to use 8 in-channels on the ipad, > i.e. using the class compliance mode. I am asking this question > because JACK seems to have a problem with the in/out channels: > > 02:12:01.744 D-BUS: SetParameterValue('driver:inchannels', '1'): > Parameter value type mismatch: was expecting 'i', got 'u'. > (org.jackaudio.Error.InvalidArgs) > > The same error occurs for the outchannels and I tried the values 1,2,8 > for the nummer of channels but I always get the same error. > > Best, > > Florian > > Quoting Daniel Mack : > >> On 02.10.2012 09:27, Clemens Ladisch wrote: >>> Florian Hanisch wrote: >> usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor AudioControl Interface Descriptor: bLength10 bDescriptorType36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 2 bSourceID 3 bmaControls( 0) 0x000c Volume Control (read/write) iFeature0 >>> >>> This descriptor is perfectly OK; the driver has a bug. >>> The following code in parse_audio_feature_unit() in sound/usb/mixer.c >>> is valid only for v1 devices; please try to just remove it: >>> >>> if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { >>> snd_printk(KERN_ERR "usbaudio: unit %u: invalid UAC_FEATURE_UNIT >>> descriptor\n", unitid); >>> return -EINVAL; >>> } >> >> Yes, interesting this never got triggered before. The 7 should be a 6 in >> v2 case ... >> >> >> > > > > > -- > Don't let slow site performance ruin your business. Deploy New Relic APM > Deploy New Relic app performance management and know exactly > what is happening inside your Ruby, Python, PHP, Java, and .NET app > Try New Relic at no cost today and get our sweet Data Nerd shirt too! > http://p.sf.net/sfu/newrelic-dev2dev > ___ > Alsa-user mailing list > Alsa-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/alsa-user > -- Don't l
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Florian Hanisch wrote: > I have one more question concerning the usb-audio-2.0 standard: > How many in/out channels am I able to run (on linux) ? All of them. > I am asking this question because JACK seems to have a problem with the > in/out channels: > > 02:12:01.744 D-BUS: SetParameterValue('driver:inchannels', '1'): Parameter > value type mismatch: was expecting 'i', got 'u'. > (org.jackaudio.Error.InvalidArgs) This has nothing to do with USB. It appears some software uses a wrong interface when trying to configure Jack over D-Bus. Ask the Jack folks what's going on there. Regards, Clemens -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi, thanks for the information. I just commented the following part of mixer.c if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { snd_printk(KERN_ERR "usbaudio: unit %u: invalid UAC_FEATURE_UNIT descriptor\n", unitid); return -EINVAL; } and compiled alsa-driver, alsa-lib, alsa-tools and alsa-oss basically following the instructions here: http://alsa.opensrc.org/Quick_Install. There were warnings during the compiling process but no errors. The new driver might work, I have the following output from dmesg [ 41.064090] usb 1-2: new high-speed USB device number 5 using ehci_hcd [ 41.200270] ALSA mixer.c:352 cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x200, type = 4 [ 41.201129] ALSA mixer.c:352 cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x200, type = 4 [ 41.201230] ALSA mixer.c:352 cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0x200, type = 4 and from aplay -l List of PLAYBACK Hardware Devices card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Intel [HDA Intel], device 1: AD198x Digital [AD198x Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: F23455936 [Fireface UCX (23455936)], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 The fireface ucx moreover appears in the system settings / sound menue. I did not test whether the device actually produces sound, I hope I can do that tomorrow. I have one more question concerning the usb-audio-2.0 standard: How many in/out channels am I able to run (on linux) ? RME claim on their website, that it is possible to use 8 in-channels on the ipad, i.e. using the class compliance mode. I am asking this question because JACK seems to have a problem with the in/out channels: 02:12:01.744 D-BUS: SetParameterValue('driver:inchannels', '1'): Parameter value type mismatch: was expecting 'i', got 'u'. (org.jackaudio.Error.InvalidArgs) The same error occurs for the outchannels and I tried the values 1,2,8 for the nummer of channels but I always get the same error. Best, Florian Quoting Daniel Mack : > On 02.10.2012 09:27, Clemens Ladisch wrote: >> Florian Hanisch wrote: > usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor >>> >>> AudioControl Interface Descriptor: >>> bLength10 >>> bDescriptorType36 >>> bDescriptorSubtype 6 (FEATURE_UNIT) >>> bUnitID 2 >>> bSourceID 3 >>> bmaControls( 0) 0x000c >>> Volume Control (read/write) >>> iFeature0 >> >> This descriptor is perfectly OK; the driver has a bug. >> The following code in parse_audio_feature_unit() in sound/usb/mixer.c >> is valid only for v1 devices; please try to just remove it: >> >> if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { >> snd_printk(KERN_ERR "usbaudio: unit %u: invalid >> UAC_FEATURE_UNIT >> descriptor\n", unitid); >> return -EINVAL; >> } > > Yes, interesting this never got triggered before. The 7 should be a 6 in > v2 case ... > > > -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
With regular kernel, I get the error msg of topic. Check also out my low-jitter kernel here: http://paradoxuncreated.com/Blog/wordpress/?p=2268 Peace Be With You. -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
On Tue, 02 Oct 2012 20:38:14 +0200, Daniel Mack wrote: > (please do not top-post) > > On 02.10.2012 19:47, Uwaysi Bin Kareem wrote: >> There are no particular msgs. Just usb-device connected. > > So what does "aplay -l" say before and after you connected the device? > > > Daniel > It just lists my onboard sound card. With lsusb it lists the fireface though. Peace Be With You. -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
(please do not top-post) On 02.10.2012 19:47, Uwaysi Bin Kareem wrote: > There are no particular msgs. Just usb-device connected. So what does "aplay -l" say before and after you connected the device? Daniel -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
There are no particular msgs. Just usb-device connected. Peace Be With You. On Tue, 02 Oct 2012 18:36:05 +0200, Daniel Mack wrote: > On 02.10.2012 17:27, Uwaysi Bin Kareem wrote: >> Hiya, came across your discussion when trying to make my Fireface UCX >> work >> with USB in linux. >> >> I did try removing that code, and recompiling, but nothing much >> happened. >> Does it need any particular config option? I am running with a shaved >> low-jitter config. > > Mind to share the messages that are generated when plugging in the > device please? > > > Daniel > > > -- > Don't let slow site performance ruin your business. Deploy New Relic APM > Deploy New Relic app performance management and know exactly > what is happening inside your Ruby, Python, PHP, Java, and .NET app > Try New Relic at no cost today and get our sweet Data Nerd shirt too! > http://p.sf.net/sfu/newrelic-dev2dev > ___ > Alsa-user mailing list > Alsa-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/alsa-user -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
On 02.10.2012 17:27, Uwaysi Bin Kareem wrote: > Hiya, came across your discussion when trying to make my Fireface UCX work > with USB in linux. > > I did try removing that code, and recompiling, but nothing much happened. > Does it need any particular config option? I am running with a shaved > low-jitter config. Mind to share the messages that are generated when plugging in the device please? Daniel -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hiya, came across your discussion when trying to make my Fireface UCX work with USB in linux. I did try removing that code, and recompiling, but nothing much happened. Does it need any particular config option? I am running with a shaved low-jitter config. Peace Be With You. -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
On 02.10.2012 09:27, Clemens Ladisch wrote: > Florian Hanisch wrote: usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor >> >> AudioControl Interface Descriptor: >> bLength10 >> bDescriptorType36 >> bDescriptorSubtype 6 (FEATURE_UNIT) >> bUnitID 2 >> bSourceID 3 >> bmaControls( 0) 0x000c >> Volume Control (read/write) >> iFeature0 > > This descriptor is perfectly OK; the driver has a bug. > The following code in parse_audio_feature_unit() in sound/usb/mixer.c > is valid only for v1 devices; please try to just remove it: > > if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { > snd_printk(KERN_ERR "usbaudio: unit %u: invalid > UAC_FEATURE_UNIT descriptor\n", unitid); > return -EINVAL; > } Yes, interesting this never got triggered before. The 7 should be a 6 in v2 case ... -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Florian Hanisch wrote: >>> usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor > > AudioControl Interface Descriptor: > bLength10 > bDescriptorType36 > bDescriptorSubtype 6 (FEATURE_UNIT) > bUnitID 2 > bSourceID 3 > bmaControls( 0) 0x000c > Volume Control (read/write) > iFeature0 This descriptor is perfectly OK; the driver has a bug. The following code in parse_audio_feature_unit() in sound/usb/mixer.c is valid only for v1 devices; please try to just remove it: if (hdr->bLength < 7 || !csize || hdr->bLength < 7 + csize) { snd_printk(KERN_ERR "usbaudio: unit %u: invalid UAC_FEATURE_UNIT descriptor\n", unitid); return -EINVAL; } Regards, Clemens -- Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi, I found some discussions online (http://www.xcore.com/forum/viewtopic.php?f=8&t=1719) which suggest that it might be useful to disable the mixer, though this post relates to a different sound card/slightly different problem. But it would also fit to the last sentence of your answer. In the post quoted above, the mixer is disabled by modifying the source code and recompiling afterwards. I am not very familiar with the details of alsa, so I would like to ask whether this is the only way to do this or whether there is some easier way to get there ? Thanks, Florian Quoting Clemens Ladisch : > Florian Hanisch wrote: >> I have been trying to connect a friend's soundcard (RME fireface UCX) >> to my linux computer. [...] RME claims that the device has a class >> compliance mode (which is working with a mac computer) so that >> it should be able to communicate with a linux system just using the >> USB-audio-2.0 standard. Pluging the device, I get the following >> messages from dmesg: >> >> [ 864.162776] usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor > > So much for class compliance. This is likely to be a bug in the > device's descriptors. Please show the output of "lsusb -v" for > this device. > > In any case, the driver should not abort in this case; it should > work fine without the mixer controls that this descriptor failed > to describe. > > > Regards, > Clemens > -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://ad.doubleclick.net/clk;258768047;13503038;j? http://info.appdynamics.com/FreeJavaPerformanceDownload.html ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi, thanks a lot. Quoting Clemens Ladisch : > Florian Hanisch wrote: >> I have been trying to connect a friend's soundcard (RME fireface UCX) >> to my linux computer. [...] RME claims that the device has a class >> compliance mode (which is working with a mac computer) so that >> it should be able to communicate with a linux system just using the >> USB-audio-2.0 standard. Pluging the device, I get the following >> messages from dmesg: >> >> [ 864.162776] usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor > > So much for class compliance. This is likely to be a bug in the > device's descriptors. Please show the output of "lsusb -v" for > this device. I add it at the end of my message. > > In any case, the driver should not abort in this case; it should > work fine without the mixer controls that this descriptor failed > to describe. > How can I see that the driver is working properly and how can I actually access the soundcard then ? I connected the soundcard and it is recognized (see "lsusb -v" below) but I can not find it in the system settings and also not in the JACK setup. I thought it should appear there. I also tested a very cheap/crappy usb-1.1 soundcard, this was completely recognized and could be activated in the system settings etc. I don't know whether this is important but my computer is a sort of old, maybe the usb-controllers are too old ? On my board, I have the following: 00:1d.0 USB controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02) 00:1d.1 USB controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02) 00:1d.2 USB controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02) 00:1d.3 USB controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02) 00:1d.7 USB controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02) Best, Florian Here is the part of "lsusb -v" related to the fireface: Bus 001 Device 002: ID 0424:3fd9 Standard Microsystems Corp. Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize064 idVendor 0x0424 Standard Microsystems Corp. idProduct 0x3fd9 bcdDevice0.01 iManufacturer 1 RME iProduct2 Fireface UCX (23455936) iSerial 3 A0A762B3C75E8C8 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 433 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Association: bLength 8 bDescriptorType11 bFirstInterface 0 bInterfaceCount 4 bFunctionClass 1 Audio bFunctionSubClass 0 bFunctionProtocol 32 iFunction 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 32 iInterface 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType36 bDescriptorSubtype 1 (HEADER) bcdADC 2.00 bCategory 8 wTotalLength 85 bmControl0x00 AudioControl Interface Descriptor: bLength 8 bDescriptorType36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID1 bmAttributes 0x03 Internal programmable Clock bmControls 0x03 Clock Frequency Control (read/write) bAssocTerminal 0 iClockSource0 AudioControl Interface Descriptor: bLength17 bDescriptorType36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 3 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bCSourceID 1 bNrChannels 8 bmChannelConfig 0x bmControls0x iChannelNames 0 iTerminal 0 AudioControl Interface Descriptor: bLength17 bDescriptorType36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 5 wTerminalType 0x0201 Microphone bAssocTerminal
Re: [Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Florian Hanisch wrote: > I have been trying to connect a friend's soundcard (RME fireface UCX) > to my linux computer. [...] RME claims that the device has a class > compliance mode (which is working with a mac computer) so that > it should be able to communicate with a linux system just using the > USB-audio-2.0 standard. Pluging the device, I get the following > messages from dmesg: > > [ 864.162776] usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor So much for class compliance. This is likely to be a bug in the device's descriptors. Please show the output of "lsusb -v" for this device. In any case, the driver should not abort in this case; it should work fine without the mixer controls that this descriptor failed to describe. Regards, Clemens -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user
[Alsa-user] Problem: invalid UAC_FEATURE_UNIT descriptor / fireface UCX
Hi all, I have a soundcard problem which might be related to ALSA. I have been trying to connect a friend's soundcard (RME fireface UCX) to my linux computer (recent ubuntu 12.04 installation - NOT ubuntu studio, kernel 3.2.0-29-generic, ALSA version 1.0.25). RME claims that the device has a class compliance mode (which is working with a mac computer) so that it should be able to communicate with a linux system just using the USB-audio-2.0 standard. Pluging the device, I get the following messages from dmesg: [ 864.024093] usb 1-1: new high-speed USB device number 5 using ehci_hcd [ 864.162776] usbaudio: unit 2: invalid UAC_FEATURE_UNIT descriptor [ 864.162831] snd-usb-audio: probe of 1-1:1.0 failed with error -5 So it seems that the device is recognized but can not be properly connected. I was searching for "invalid UAC_FEATURE_UNIT descriptor" online and found some ALSA realted websites but could not really figure out whether the stuff discussed there can solve my problem. So if this is an ALSA problem: Am I missing some extra packages, libaries, ... to be able to have full USB-audio-2.0 support ? Do I have to change some kernel options ? Any other ideas ? Thanks a lot for any help, Florian -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user