summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiajun Cao <jjcao20@fudan.edu.cn>2021-06-22 16:19:42 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-20 17:02:12 +0300
commitae210c829331dd860834657839c623a714ec863a (patch)
tree5828fa015c6bf62dedcf0eba89997a5861173ca5
parent6edfd151ab447d2f034622afdb07c6a61dadf689 (diff)
downloadlinux-ae210c829331dd860834657839c623a714ec863a.tar.xz
ALSA: hda: Add IRQ check for platform_get_irq()
[ Upstream commit 8c13212443230d03ff25014514ec0d53498c0912 ] The function hda_tegra_first_init() neglects to check the return value after executing platform_get_irq(). hda_tegra_first_init() should check the return value (if negative error number) for errors so as to not pass a negative value to the devm_request_irq(). Fix it by adding a check for the return value irq_id. Signed-off-by: Jiajun Cao <jjcao20@fudan.edu.cn> Signed-off-by: Xin Tan <tanxin.ctf@gmail.com> Reviewed-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20210622131947.94346-1-jjcao20@fudan.edu.cn Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--sound/pci/hda/hda_tegra.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_tegra.c b/sound/pci/hda/hda_tegra.c
index 6f2b743b9d75..6c6dc3fcde60 100644
--- a/sound/pci/hda/hda_tegra.c
+++ b/sound/pci/hda/hda_tegra.c
@@ -262,6 +262,9 @@ static int hda_tegra_first_init(struct azx *chip, struct platform_device *pdev)
const char *sname, *drv_name = "tegra-hda";
struct device_node *np = pdev->dev.of_node;
+ if (irq_id < 0)
+ return irq_id;
+
err = hda_tegra_init_chip(chip, pdev);
if (err)
return err;