From: Takashi Iwai Date: Mon, 13 Feb 2012 10:55:02 +0000 (+0100) Subject: ALSA: hda - Add codec->no_jack_detect flag X-Git-Tag: v3.2.21~27 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=76c8103ac650773cc31f3de8713ea68919b357b8;p=karo-tx-linux.git ALSA: hda - Add codec->no_jack_detect flag commit 71b1e9e43d5199f57c109e20c0f4dffc5c048130 upstream. Add a new flag to indicate that the codec has no jack-detection cap. This flag should be set for hardwares that have no jack-detect implementation although the codec chip itself supports it. Signed-off-by: Takashi Iwai [bwh: Backported to 3.2: adjust filename and context for is_jack_detectable()] Signed-off-by: Ben Hutchings --- diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h index 71f67446c30f..78b22237050e 100644 --- a/sound/pci/hda/hda_codec.h +++ b/sound/pci/hda/hda_codec.h @@ -858,6 +858,7 @@ struct hda_codec { unsigned int pins_shutup:1; /* pins are shut up */ unsigned int no_trigger_sense:1; /* don't trigger at pin-sensing */ unsigned int ignore_misc_bit:1; /* ignore MISC_NO_PRESENCE bit */ + unsigned int no_jack_detect:1; /* Machine has no jack-detection */ #ifdef CONFIG_SND_HDA_POWER_SAVE unsigned int power_on :1; /* current (global) power-state */ unsigned int power_transition :1; /* power-state in transition */ diff --git a/sound/pci/hda/hda_local.h b/sound/pci/hda/hda_local.h index 368f0c513819..c78b753e0fc0 100644 --- a/sound/pci/hda/hda_local.h +++ b/sound/pci/hda/hda_local.h @@ -515,6 +515,8 @@ int snd_hda_jack_detect(struct hda_codec *codec, hda_nid_t nid); static inline bool is_jack_detectable(struct hda_codec *codec, hda_nid_t nid) { + if (codec->no_jack_detect) + return false; if (!(snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_PRES_DETECT)) return false; if (!codec->ignore_misc_bit &&