diff options
author | Takashi Iwai <tiwai@suse.de> | 2013-03-13 14:47:21 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-03-13 18:07:05 +0100 |
commit | ba615b86d6a3ba6e244973672c63903c8b2831a3 (patch) | |
tree | a519ed1086a43f33036e3dc3d30b4892a1289835 /sound/pci/hda/patch_conexant.c | |
parent | bce0d2a80e428aac3b39bf19675f1f57126f9cb6 (diff) | |
download | linux-ba615b86d6a3ba6e244973672c63903c8b2831a3.tar.gz linux-ba615b86d6a3ba6e244973672c63903c8b2831a3.tar.bz2 linux-ba615b86d6a3ba6e244973672c63903c8b2831a3.zip |
ALSA: hda - Don't apply EAPD power filter as default
So far, the driver doesn't power down the widget at going down to D3
when the widget node has an EAPD capability and EAPD is actually set
on all codecs unless codec->power_filter is set explicitly.
This caused a problem on some Conexant codecs, leading to click
noises, and we set it as NULL there. But it is very unlikely that the
problem hits only these codecs.
Looking back at the development history, this workaround for EAPD was
introduced just for some laptops with STAC9200 codec, then we applied
it blindly for all. Now, since it's revealed to have an ill effect,
we should disable this workaround per default and apply only for the
known requiring systems.
The EAPD workaround is implemented now as snd_hda_codec_eapd_power_filter(),
and this has to be set explicitly by the codec driver when needed.
As of now, only patch_stac9200() sets this one.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_conexant.c')
-rw-r--r-- | sound/pci/hda/patch_conexant.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 941bf6c766ec..7d941ef54172 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c @@ -3350,7 +3350,6 @@ static int patch_conexant_auto(struct hda_codec *codec) switch (codec->vendor_id) { case 0x14f15045: codec->single_adc_amp = 1; - codec->power_filter = NULL; /* Needs speaker amp to D3 to avoid click */ break; case 0x14f15047: codec->pin_amp_workaround = 1; |