At Fri, 11 Jan 2008 15:47:56 +0100, Markus Rechberger wrote:
Hi,
there seems to be an issue with this ATI SBx00 Azalia driver.
It's rather about the codec than the controller.
nmixer (which uses the oss emulated interface shows up 4 controls) Vol (volume which seems to control the whole output volume) PCM2 (maybe not routed on that notebook, it practically has no effect) IGain (guess for the microphone which I haven't tested yet) Digital1 (don't know)
if I try to start alsamixer, it doesn't seem to work and I get an entry in dmesg whenever I try to run it: $ alsamixer alsamixer: function snd_mixer_load failed: Invalid argument
$ dmesg ... [ 1269.997724] hda_codec: num_steps = 0 for NID=0x12
Looks like the invalid access to HD-audio codec occurs. Since it's an unknown device, the driver tries to probe the BIOS setting. Maybe there is some bug there.
Anyway, try the latest ALSA HG version if you still didn't. There are some recent fixes regarding the realtek auto-probe routine.
Also, use the patch below. This will show which control element is affected.
Takashi
--- diff -r a8bb645ff3a1 -r 80b452643ca6 pci/hda/hda_codec.c --- a/pci/hda/hda_codec.c Fri Jan 11 11:39:06 2008 +0100 +++ b/pci/hda/hda_codec.c Fri Jan 11 16:12:23 2008 +0100 @@ -933,7 +933,8 @@ int snd_hda_mixer_amp_volume_info(struct caps = (caps & AC_AMPCAP_NUM_STEPS) >> AC_AMPCAP_NUM_STEPS_SHIFT; if (!caps) { printk(KERN_WARNING "hda_codec: " - "num_steps = 0 for NID=0x%x\n", nid); + "num_steps = 0 for NID=0x%x (ctl = %s)\n", nid, + kcontrol->id.name); return -EINVAL; } uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;