diff options
author | Vijendar Mukunda <Vijendar.Mukunda@amd.com> | 2024-06-17 10:28:34 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-07-05 10:37:51 +0300 |
commit | b0c39ae1cc86afe74aa2f6273ccb514f8d180cf6 (patch) | |
tree | 0eb51971527278d036fbf09ea6ef315c56dfd605 | |
parent | 87496a1b01e8e2e399428c0db25e106f7961d01e (diff) | |
download | linux-b0c39ae1cc86afe74aa2f6273ccb514f8d180cf6.tar.xz |
ASoC: amd: acp: add a null check for chip_pdev structure
[ Upstream commit 98d919dfee1cc402ca29d45da642852d7c9a2301 ]
When acp platform device creation is skipped, chip->chip_pdev value will
remain NULL. Add NULL check for chip->chip_pdev structure in
snd_acp_resume() function to avoid null pointer dereference.
Fixes: 088a40980efb ("ASoC: amd: acp: add pm ops support for acp pci driver")
Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://msgid.link/r/20240617072844.871468-1-Vijendar.Mukunda@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | sound/soc/amd/acp/acp-pci.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sound/soc/amd/acp/acp-pci.c b/sound/soc/amd/acp/acp-pci.c index ad320b29e87d..aa3e72d13451 100644 --- a/sound/soc/amd/acp/acp-pci.c +++ b/sound/soc/amd/acp/acp-pci.c @@ -199,10 +199,12 @@ static int __maybe_unused snd_acp_resume(struct device *dev) ret = acp_init(chip); if (ret) dev_err(dev, "ACP init failed\n"); - child = chip->chip_pdev->dev; - adata = dev_get_drvdata(&child); - if (adata) - acp_enable_interrupts(adata); + if (chip->chip_pdev) { + child = chip->chip_pdev->dev; + adata = dev_get_drvdata(&child); + if (adata) + acp_enable_interrupts(adata); + } return ret; } |