diff options
author | Takashi Iwai <tiwai@suse.de> | 2007-12-17 14:32:49 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-01-31 17:29:37 +0100 |
commit | 48ecb7e879ea172a0b3fd432ad49a870d7be6a59 (patch) | |
tree | 748c4a6db3fe6cc05c063343cc4ae5592998618b | |
parent | [ALSA] hda: STAC927x DMIC Cleanup (diff) | |
download | linux-48ecb7e879ea172a0b3fd432ad49a870d7be6a59.tar.xz linux-48ecb7e879ea172a0b3fd432ad49a870d7be6a59.zip |
[ALSA] hda-codec - Avoid overload of PCM volume on Cx5045 codec
The PCM volume of Cx5045 codec has overload that isn't useful but
rather harmful. Add a hack to override the amp info to set the max
level 0 dB.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r-- | sound/pci/hda/patch_conexant.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 68f23b823e25..a6916da73c46 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -826,6 +826,17 @@ static int patch_cxt5045(struct hda_codec *codec) spec->init_verbs[0] = cxt5045_test_init_verbs; #endif } + + /* + * Fix max PCM level to 0 dB + * (originall it has 0x2b steps with 0dB offset 0x14) + */ + snd_hda_override_amp_caps(codec, 0x17, HDA_INPUT, + (0x14 << AC_AMPCAP_OFFSET_SHIFT) | + (0x14 << AC_AMPCAP_NUM_STEPS_SHIFT) | + (0x05 << AC_AMPCAP_STEP_SIZE_SHIFT) | + (1 << AC_AMPCAP_MUTE_SHIFT)); + return 0; } |