mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 11:06:41 -05:00
ALSA: hda/hdmi: Fix breakage at probing nvhdmi-mcp driver
After restructuring and splitting the HDMI codec driver code, each
HDMI codec driver contains the own build_controls and build_pcms ops.
A copy-n-paste error put the wrong entries for nvhdmi-mcp driver; both
build_controls and build_pcms are swapped. Unfortunately both
callbacks have the very same form, and the compiler didn't complain
it, either. This resulted in a NULL dereference because the PCM
instance hasn't been initialized at calling the build_controls
callback.
Fix it by passing the proper entries.
Fixes: ad781b550f ("ALSA: hda/hdmi: Rewrite to new probe method")
Cc: <stable@vger.kernel.org>
Link: https://bugzilla.kernel.org/show_bug.cgi?id=220743
Link: https://patch.msgid.link/20251106104647.25805-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -350,8 +350,8 @@ static int nvhdmi_mcp_probe(struct hda_codec *codec,
|
||||
static const struct hda_codec_ops nvhdmi_mcp_codec_ops = {
|
||||
.probe = nvhdmi_mcp_probe,
|
||||
.remove = snd_hda_hdmi_simple_remove,
|
||||
.build_controls = nvhdmi_mcp_build_pcms,
|
||||
.build_pcms = nvhdmi_mcp_build_controls,
|
||||
.build_pcms = nvhdmi_mcp_build_pcms,
|
||||
.build_controls = nvhdmi_mcp_build_controls,
|
||||
.init = nvhdmi_mcp_init,
|
||||
.unsol_event = snd_hda_hdmi_simple_unsol_event,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user