summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorbui duc phuc <phucduc.bui@gmail.com>2026-08-25 15:19:49 +0700
committerMark Brown <broonie@kernel.org>2026-08-26 14:14:09 +0100
commit84d2d96ac3f1bb467aca65adf2c19431e6eeb151 (patch)
tree5c7610e55a918b415d8c6081bebe847686a8c8ac /sound
parentfd8ed52ecea6b93e23d52cb2758fb4fb4029067f (diff)
downloadlinux-84d2d96ac3f1bb467aca65adf2c19431e6eeb151.tar.gz
linux-84d2d96ac3f1bb467aca65adf2c19431e6eeb151.zip
ASoC: soc-generic-dmaengine: Fix DMA channel request warning
The DMA channel request code currently warns about legacy DMA failures when the channel name is not present in dma-names. This can report a firmware lookup failure as a legacy DMA failure. Furthermore, failures from the legacy DMA path are already reported by find_candidate(), making these warnings redundant. Only warn when the channel name is present in dma-names but the request fails, avoiding misleading and duplicate error messages. Fixes: 9167f260477b ("ASoC: soc-generic-dmaengine: Handle DMA channel request failures correctly") Reported-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/all/aoyBuho270dTWYBL@jupiter.universe/ Signed-off-by: bui duc phuc <phucduc.bui@gmail.com> Link: https://patch.msgid.link/20260825081949.55537-1-phucduc.bui@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/soc-generic-dmaengine-pcm.c20
1 files changed, 2 insertions, 18 deletions
diff --git a/sound/soc/soc-generic-dmaengine-pcm.c b/sound/soc/soc-generic-dmaengine-pcm.c
index 3b18d90e81c3..65b7ec52a054 100644
--- a/sound/soc/soc-generic-dmaengine-pcm.c
+++ b/sound/soc/soc-generic-dmaengine-pcm.c
@@ -397,24 +397,8 @@ static int dmaengine_pcm_request_chan_of(struct dmaengine_pcm *pcm,
if (PTR_ERR(chan) == -EPROBE_DEFER)
return -EPROBE_DEFER;
- bool has_fw_node = dev->of_node || is_acpi_device_node(dev->fwnode);
- bool name_exists_in_fw = false;
-
- if (has_fw_node)
- name_exists_in_fw = device_property_match_string(dev,
- "dma-names",
- name) >= 0;
-
- if (has_fw_node && name_exists_in_fw)
- dev_warn(dev, "DTS/ACPI DMA channel '%s' request failed (%ld)\n",
- name, PTR_ERR(chan));
-
- if (has_fw_node && !name_exists_in_fw)
- dev_warn(dev, "DTS/ACPI name '%s' not found, legacy failed (%ld)\n",
- name, PTR_ERR(chan));
-
- if (!has_fw_node)
- dev_warn(dev, "Legacy DMA channel '%s' request failed (%ld)\n",
+ if (device_property_match_string(dev, "dma-names", name) >= 0)
+ dev_warn(dev, "dma-names has '%s' but request failed (%ld)\n",
name, PTR_ERR(chan));
pcm->chan[i] = NULL;