No line-in/mic capture Realtek ALC883

Reported by Reuben Bailey on 2010-03-15
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Daniel T Chen

Bug Description

This bug is similar to the following, but affects the REALTek ALC883 chip set.
In brief: before adding the line "options snd-hda-intel power_save=0 power_save_controller=N position_fix=1 enable=yes" to my /etc/modprobe.d/alsa-base.conf file, I could hear sound from the mic and line-in jacks through my speakers and control it with the GNOME-alsamixer (both muting and volume) but I could not record that sound stream with any software. Adding the position fix seems to have done the trick.
Please let me know if you need more info that is provided below.
All the best,

$ grep "^Codec\|^Vendor Id\|^Subsystem Id\|^Revision Id" /proc/asound/card*/*codec*{,/*} | grep -B2 -A1 $(lspci -nv | grep -A1 0403 | grep Subsystem | sed 's/://g' | awk '{ print $2 }')
grep: /proc/asound/card*/*codec*/*: No such file or directory
/proc/asound/card0/codec#3:Codec: Realtek ALC883
/proc/asound/card0/codec#3:Vendor Id: 0x10ec0883
/proc/asound/card0/codec#3:Subsystem Id: 0x8086d601
/proc/asound/card0/codec#3:Revision Id: 0x100002

$ sudo lspci -vvnn

00:14.2 Audio device [0403]: ATI Technologies Inc IXP SB4x0 High Definition Audio Controller [1002:437b] (rev 01)
 Subsystem: Intel Corporation Device [8086:d601]
 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
 Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
 Latency: 64, Cache Line Size: 32 bytes
 Interrupt: pin ? routed to IRQ 16
 Region 0: Memory at 63100000 (64-bit, non-prefetchable) [size=16K]
 Capabilities: [50] Power Management version 2
  Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
  Status: D0 PME-Enable- DSel=0 DScale=0 PME-
 Capabilities: [60] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
  Address: 0000000000000000 Data: 0000
 Kernel driver in use: HDA Intel
 Kernel modules: snd-hda-intel

$ lsb_release -rd

Description: Ubuntu 9.10
Release: 9.10

Package Version:
alsa-base: 1.0.20+dfsg-1ubuntu5
linux-backports-modules-alsa-2.6.31-20-generic: 2.6.31-20.22

$ cat /proc/asound/cards
 0 [SB ]: HDA-Intel - HDA ATI SB
                      HDA ATI SB at 0x63100000 irq 16
 1 [Headset ]: USB-Audio - Logitech USB Headset
                      Logitech Logitech USB Headset at usb-0000:00:13.1-4, full speed
 2 [U0x46d0x89d ]: USB-Audio - USB Device 0x46d:0x89d
                      USB Device 0x46d:0x89d at usb-0000:00:13.0-2, full speed

The following thread on the Ubuntu forums further describes the problem and is how I found the solution:

wget -O alsa-info.sh http://alsa-project.org/alsa-info.sh && bash ./alsa-info.sh
Info before the fix:
Info after the fix:

Daniel T Chen (crimsun) on 2010-03-15
Changed in alsa-driver (Ubuntu):
assignee: nobody → Daniel T Chen (crimsun)
status: New → Triaged

This is an Intel motherboard, model Intel Desktop Board (?) Rev. 1.02

Specs from the E-machines spec page:
T5212 Support Information


CPU : Intel® Pentium® D Processor 805 (dual-core)
(2 x 1MB L2 cache, 2.66GHz, 533MHz FSB)
Operating System : Genuine
Microsoft® Windows® XP Media Center Edition 2005
Chipset : ATI Radeon™ Xpress 200
Memory : 1024MB DDR2 (2 × 512MB), 533MHz (PC4200)
Expandable to 2GB
Hard Drive : 200GB (7200rpm, 2MB cache)
Optical Drives : 16x multiformat dual-layer DVD±RW
(Up to 8.5GB with dual-layer media)
Write max: 16x DVD±R, 6x DVD-RW, 8x DVD+RW, 4x DVD+R DL, 40x CD-R, 24x CD-RW
Read max: 16x DVD-ROM, 40x CD-ROM
Media Reader : 9-in-1 Digital Media Manager™ (Memory Stick®, Memory
Stick Pro®, MultiMediaCard™, Secure Digital™, CompactFlash®, MicroDrive,
SmartMedia, xD-Picture Card™, USB 2.0)
Video : ATI Radeon™ Xpress 200 integrated graphics solution
Up to 128MB of shared video memory
PCI-Express® (PCI-E x16) slot available
Sound : 6-channel (5.1) high-definition audio
Network : 10/100Mbps integrated Ethernet LAN (RJ-45 port)
Modem : 56K ITU V.92-ready fax/modem (RJ-11 port)
Peripherals : Premium multimedia keyboard, 2-button wheel mouse,
amplified stereo speakers (USB powered)
Ports/Other : 5 USB 2.0 (1 in front, 4 in back), VGA external
connector, parallel port, serial port, 2 PS/2 ports (keyboard and
mouse), 5 audio ports (2 in front, 3 in back)

Daniel T Chen (crimsun) wrote :

On Sun, Mar 14, 2010 at 11:32 PM, Reuben Bailey
<email address hidden> wrote:
> Specs from the E-machines spec page:
> T5212 Support Information

Can you verify that *only* position_fix=1 is necessary? You seem to be
using a model quirk, too:

model : 6stack-dig,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>

Reuben Bailey (reuben-e-bailey) wrote :

Seems that the quirk is not necessary. I had been trying fixes for other
problems and that was an artifact of that.
Here is what my alsa-base.conf file looks like now with things
functioning properly:

# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7

# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && {
/sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe
--quiet --use-blacklist snd-seq ; }
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS &&
{ /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer
$CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss
; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS &&
{ /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe
--quiet --use-blacklist snd-seq-oss ; : ; }
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi
$CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ;
: ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1
$CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist
snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx
$CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }

# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS &&
{ /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
options snd-usb-caiaq index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
# Power down HDA controllers after 10 idle seconds
# options snd-hda-intel power_save=10 power_save_controller=N

# alias snd-card-0 snd-hda-intel
# alias sound-slot-0 snd-hda-intel
# options snd-hda-intel model=3stack-6ch
options snd-hda-intel power_save=0 power_save_controller=N
position_fix=1 enable=yes

Reuben Bailey (reuben-e-bailey) wrote :

Looking at the reports from the alsa-info.sh script, it seems that the model 6stack-dig is automatically assigned by the software. I had tried to set it to 3stack-6ch and it was showing both that and the 6stack-dig in the Modprobe options (sound related) section, but was only loading the 6stack-dig module options. Even with the option commented out, the 6stack-dig is still showing up (report here: http://www.alsa-project.org/db/?f=8f26603b8310fd248ad950b835cd0f363748fd45 ).

Daniel T Chen (crimsun) wrote :

"automatically assigned by the software" isn't the case; generally this means that you've left a configuration file in /etc/modprobe.d with the option active.

grep -n 6stack /etc/modprobe.d/*

Reuben Bailey (reuben-e-bailey) wrote :

Well, so I did. I had made a copy as a backup, but (not realizing how things work) had left it as a .conf file... Anyhow, the model quirk of 6stack-dig is required to activate the inputs. The 3stack-6ch does not work, and leaving it blank also does not work.

Reuben Bailey (reuben-e-bailey) wrote :

blank as in commented out or deleted.

Daniel T Chen (crimsun) wrote :

So, just to be clear, you need both model=6stack-dig *and* position_fix=1?

Reuben Bailey (reuben-e-bailey) wrote :

link to Ubuntu forums above is incorrect. Here is the correct one...
seems as though the "t" got changed to a "p" in the first one I posted.

     That is what it has needed for me, yes. If the position fix is not there, the data stream from the sound inputs is not picked up by anything beyond ALSA. If the model is not there, no sound comes through at all.

Hmm. Let me restate that a little more clearly:

If neither the position fix or the model are present, no sound comes
through the speakers (plugged ito the speaker out jack) when there is input.
If the position fix is there but the model is not, the result is the same.
If the model is there but no position fix, I can hear sound from the
speakers and control the volume with the ALSA mixer, but no other
software picks up the stream.
If both model and position fix are present, I can hear the sound
directly from the speakers and all software picks up the stream.

Reuben Bailey wrote:
> Daniel,
> That is what it has needed for me, yes. If the position fix is not there, the data stream from the sound inputs is not picked up by anything beyond ALSA. If the model is not there, no sound comes through at all.
> Reuben

Daniel T Chen (crimsun) wrote :

Please note that there is an existing quirk for your hardware: model=3stack-6ch

Daniel T Chen (crimsun) wrote :

Please verify with linux-alsa-driver-modules from ppa:ubuntu-audio-dev after a reboot that the existing quirk (which you also noted above) is incorrect.

Added the repository and installed the package, replacing the backports
module. Could not boot into the most recent kernel (2.6.30-20) in either
regular or recovery modes - one CPU would hang (soft lockup - CPU#1
hangs for 61s modprobe 622). Booted into 2.6.30-19, removed
linux-alsa-driver-modules and reinstalled equivalent backports. I can
now boot 2.6.30-29 with no problem. I was not able to find a
meta-package for the linux-alsa-driver-modules package - I don't know if
that makes a difference or not.

On the motherboard there are contacts where an SPDIF connector could be
located - there is no connector present.

Daniel T Chen wrote:
> Please verify with linux-alsa-driver-modules from ppa:ubuntu-audio-dev
> after a reboot that the existing quirk (which you also noted above) is
> incorrect.

Daniel T Chen (crimsun) wrote :

Hmm, do you mean Karmic's most recent released kernel, 2.6.31-20? (I think you may have meant 2.6.31 instead of 2.6.30.)

Yes, I did mean 2.6.31-20. Sorry about that.

Brad Figg (brad-figg) on 2010-03-31
tags: added: karmic
Andy Whitcroft (apw) on 2010-04-08
Changed in alsa-driver (Ubuntu):
status: Triaged → Fix Committed
affects: alsa-driver (Ubuntu) → linux (Ubuntu)
Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers