diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-02-13 11:41:42 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-02-13 12:06:03 +0100 |
commit | a9c74173f4be2a536ef8d8c88642e41527f2d8b4 (patch) | |
tree | 584001114cbde583e4628b0d1259f0b9f57288d3 /sound/pci/hda/hda_jack.c | |
parent | 374a69e76effdb84ef068d63759d8f990710432f (diff) |
ALSA: hda - Make is_jack_detectable() as non-inlined
It's a bit too big and used too often as an inline function.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_jack.c')
-rw-r--r-- | sound/pci/hda/hda_jack.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_jack.c b/sound/pci/hda/hda_jack.c index 9d819c4b4923..ac7e57c40398 100644 --- a/sound/pci/hda/hda_jack.c +++ b/sound/pci/hda/hda_jack.c @@ -19,6 +19,20 @@ #include "hda_local.h" #include "hda_jack.h" +bool is_jack_detectable(struct hda_codec *codec, hda_nid_t nid) +{ + if (!(snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_PRES_DETECT)) + return false; + if (!codec->ignore_misc_bit && + (get_defcfg_misc(snd_hda_codec_get_pincfg(codec, nid)) & + AC_DEFCFG_MISC_NO_PRESENCE)) + return false; + if (!(get_wcaps(codec, nid) & AC_WCAP_UNSOL_CAP)) + return false; + return true; +} +EXPORT_SYMBOL_HDA(is_jack_detectable); + /* execute pin sense measurement */ static u32 read_pin_sense(struct hda_codec *codec, hda_nid_t nid) { |