At Sun, 17 Aug 2008 22:07:19 +0300, ikke wrote:
Hi,
I'm having mic problems with snd_maestro3 and es1988 allegro hw. The laptop is HP OmniBook Xe3. The mic is way too silent (unusable) even with 20db boost option on. I found this seems to have been really common problem, but only one came with a fix [1] to the problem, enabling one more bit to volume control. Could someone please help me apply that fix to current alsa?
I tried compiling 2.6.26.2 kernel and made the first change of the patch from mail [1] attachement [2]. No change. The second part of patch I did not find anymore from the code. There are similar parts in ac97_patch.c. Any hint what should be added there?
Note that "Mic Playback Volume" controls only the volume of analog playback. It doesn't change the recording level at all.
The original patched code is somewhat outdated compared to modern one... But the reasoning for the original patch sounds reasonable. The mic volume is tunable, only at the very low range. I recall the laptop came with Win98, and there was no problem then with the sound -> not a HW problem. I have never got this laptop mic working with linux, so this is not anything that broke recently. I see there is check_volume_resolution function which tries to guess some of the register ranges, but maybe it get's it wrong with this HW.
Maybe, maybe not. You should check rather ac97 registers in /proc/asound/card0/codec97#0/ac97#0-0+regs. If build with CONFIG_SND_DEBUG=y, you can write to the register directly, too. See Documentaiton[/sound/alsa]/Procfile.txt.
Takashi