mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
ALSA: hda/hdmi: Fix breakage at probing nvhdmi-mcp driver
commit82420bd4e1upstream. 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a54ba4afb3
commit
d2aed6fac1
@@ -351,8 +351,8 @@ static int nvhdmi_mcp_probe(struct hda_codec *codec,
|
|||||||
static const struct hda_codec_ops nvhdmi_mcp_codec_ops = {
|
static const struct hda_codec_ops nvhdmi_mcp_codec_ops = {
|
||||||
.probe = nvhdmi_mcp_probe,
|
.probe = nvhdmi_mcp_probe,
|
||||||
.remove = snd_hda_hdmi_simple_remove,
|
.remove = snd_hda_hdmi_simple_remove,
|
||||||
.build_controls = nvhdmi_mcp_build_pcms,
|
.build_pcms = nvhdmi_mcp_build_pcms,
|
||||||
.build_pcms = nvhdmi_mcp_build_controls,
|
.build_controls = nvhdmi_mcp_build_controls,
|
||||||
.init = nvhdmi_mcp_init,
|
.init = nvhdmi_mcp_init,
|
||||||
.unsol_event = snd_hda_hdmi_simple_unsol_event,
|
.unsol_event = snd_hda_hdmi_simple_unsol_event,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user