summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_local.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-01-10 08:56:46 +0100
committerTakashi Iwai <tiwai@suse.de>2013-01-12 08:44:27 +0100
commit62f3a2f718131e6f42746ccd26dbf4eb5eab677a (patch)
treec578dd9728ee29fde924c8e957c4c3cef30e1f93 /sound/pci/hda/hda_local.h
parentALSA: hda - Add helper functions to cache the current pinctl target (diff)
downloadlinux-62f3a2f718131e6f42746ccd26dbf4eb5eab677a.tar.xz
linux-62f3a2f718131e6f42746ccd26dbf4eb5eab677a.zip
ALSA: hda - More strict correction of invalid pinctl bits
Check more strictly about the validity of pinctl values in snd_hda_set_pin_ctl() and correct the wrong bits automatically. Also provide the helper function to correct pinctl bits to codec drivers. This automatically fixes the invalid pinctl writes that are found in a few Realtek fixups for NID 0x0f amp like ASUS A6Rp. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_local.h')
-rw-r--r--sound/pci/hda/hda_local.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_local.h b/sound/pci/hda/hda_local.h
index 655a40f93020..aa721aa1921a 100644
--- a/sound/pci/hda/hda_local.h
+++ b/sound/pci/hda/hda_local.h
@@ -490,6 +490,8 @@ struct hda_bus_unsolicited {
#define PIN_HP_AMP (AC_PINCTL_HP_EN)
unsigned int snd_hda_get_default_vref(struct hda_codec *codec, hda_nid_t pin);
+unsigned int snd_hda_correct_pin_ctl(struct hda_codec *codec,
+ hda_nid_t pin, unsigned int val);
int _snd_hda_set_pin_ctl(struct hda_codec *codec, hda_nid_t pin,
unsigned int val, bool cached);