Browse Source

ALSA: hda/generic - Don't override power_filter when power_save_node is set

Currently the generic parser sets codec->power_filter when
power_save_node flag is set.  But this overrides the existing filter
that has been already set by the codec driver, thus it looses some
features.  Instead, set the default power_filter only when it's not
set yet.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 10 years ago
parent
commit
24fef9022a
1 changed files with 2 additions and 1 deletions
  1. 2 1
      sound/pci/hda/hda_generic.c

+ 2 - 1
sound/pci/hda/hda_generic.c

@@ -4918,7 +4918,8 @@ int snd_hda_gen_parse_auto_config(struct hda_codec *codec,
 	parse_digital(codec);
 
 	if (spec->power_down_unused || codec->power_save_node)
-		codec->power_filter = snd_hda_gen_path_power_filter;
+		if (!codec->power_filter)
+			codec->power_filter = snd_hda_gen_path_power_filter;
 
 	if (!spec->no_analog && spec->beep_nid) {
 		err = snd_hda_attach_beep_device(codec, spec->beep_nid);