summaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-01-22 15:37:13 +0100
committerJaroslav Kysela <perex@perex.cz>2008-01-31 17:30:10 +0100
commitdca008f367586f73bd1c766836e4f7a38ce9814f (patch)
tree174bdb00bf674b21251df8e6c1a2ecc30f08ddd5 /sound/pci
parent[ALSA] hda-codec - Optimize snd_hda_pser_pin_def_config() (diff)
downloadlinux-dca008f367586f73bd1c766836e4f7a38ce9814f.tar.xz
linux-dca008f367586f73bd1c766836e4f7a38ce9814f.zip
[ALSA] hda-codec - Don't query widget parameter for invalid NID
Don't query a widget parameter for an invalid NID in get_wcaps() but rather returns zero (i.e. no attribute). The read to an non-existing widget may result in a fatal codec communication error. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/hda_local.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_local.h b/sound/pci/hda/hda_local.h
index ddc61a1d1153..448c4ce816c3 100644
--- a/sound/pci/hda/hda_local.h
+++ b/sound/pci/hda/hda_local.h
@@ -370,7 +370,7 @@ static inline u32 get_wcaps(struct hda_codec *codec, hda_nid_t nid)
{
if (nid < codec->start_nid ||
nid >= codec->start_nid + codec->num_nodes)
- return snd_hda_param_read(codec, nid, AC_PAR_AUDIO_WIDGET_CAP);
+ return 0;
return codec->wcaps[nid - codec->start_nid];
}