Bug 678074

Summary: [usb-audio] unable to set capture mixer levels
Product: Red Hat Enterprise Linux 5 Reporter: Dave Maley <dmaley>
Component: kernelAssignee: Don Zickus <dzickus>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 5.6CC: anton, cmeadors, dhoward, jarod, jcapel, jiajyang, jkysela, jwest, qcai, tpelka
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Setting the capture levels on the Line-In capture channel when using an ARX USB I/O sound card for recording and playback did not work properly. The set values were not persistent. With this update, the capture values are now cached in the usb-audio driver leaving the set capture levels unchanged.
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-21 09:25:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 680043    
Attachments:
Description Flags
2.6.18-238 based patch none

Description Dave Maley 2011-02-16 16:50:37 UTC
Created attachment 479163 [details]
2.6.18-238 based patch

Description of problem:
Customer is using ARX USB I/O[1] soundcards for recording/playback however they're unable to set the mixer levels on the Line-In capture channel.  From alsamixer the capture levels cannot be adjusted, and when adjusted from gnome-volume-control the settings do not persist.  Using amixer we can see that the levels are not being set properly:

   # amixer --debug -c 0 set PCM,0 25% cap
   Simple mixer control 'PCM',0
     Capabilities: cvolume cswitch cswitch-joined
     Capture channels: Front Left - Front Right
     Limits: Capture 0 - 128
     Front Left: Capture 32 [25%] [5.58dB] [on]
     Front Right: Capture 32 [25%] [5.58dB] [on]
   # amixer --debug -c 0 get PCM,0
   Simple mixer control 'PCM',0
     Capabilities: cvolume cswitch cswitch-joined
     Capture channels: Front Left - Front Right
     Limits: Capture 0 - 128
     Front Left: Capture 1 [1%] [0.00dB] [on]
     Front Right: Capture 1 [1%] [0.00dB] [on]

jkysela pointed me to upstream commit:
http://git.alsa-project.org/?p=alsa-kernel.git;a=commit;h=641b4879444c0edb276fedca5c2fcbd2e5c70044

..which caches mixer values in the usb-audio driver.  I've built a test kernel (2.6.18-238 + this patch) which has been confirmed to resolve the issue:
https://brewweb.devel.redhat.com/taskinfo?taskID=3114025

Attaching backported patch which applies against 2.6.18-238.


Version-Release number of selected component (if applicable):
2.6.18-238.el5


How reproducible:
always


Steps to Reproduce:
1. amixer --debug -c 0 set PCM,0 25% cap
2. amixer --debug -c 0 get PCM,0

  
Actual results:
capture levels unchanged


Expected results:
capture levels adjusted


Additional info:
[1] http://www.arx.com.au/International/audibox_usb_io.htm

Comment 2 Don Zickus 2011-02-18 19:46:31 UTC
Seems reasonable.  I'll try to put that together next week.

Cheers,
Don

Comment 12 Jarod Wilson 2011-03-03 20:34:48 UTC
in kernel-2.6.18-246.el5
You can download this test kernel (or newer) from http://people.redhat.com/jwilson/el5

Detailed testing feedback is always welcomed.

Comment 15 Martin Prpič 2011-04-14 10:30:56 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Setting the capture levels on the Line-In capture channel when using an ARX USB I/O sound card for recording and playback did not work properly. The set values were not persistent. With this update, the capture values are now cached in the usb-audio driver leaving the set capture levels unchanged.

Comment 17 errata-xmlrpc 2011-07-21 09:25:11 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-1065.html