Commit e9036c2a authored by Stephen Warren's avatar Stephen Warren Committed by Mark Brown

ASoC: dmaengine: fix deferred probe detection

Check the return value of dma_request_slave_channel_reason() to see if
deferred probe happens, not the variable the return value will be
assigned to later.
Reported-by: default avatarkbuild test robot <fengguang.wu@intel.com>
Fixes: 5eda87b8 ("ASoC: dmaengine: support deferred probe for DMA channels")
Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 5eda87b8
...@@ -321,7 +321,7 @@ static int dmaengine_pcm_request_chan_of(struct dmaengine_pcm *pcm, ...@@ -321,7 +321,7 @@ static int dmaengine_pcm_request_chan_of(struct dmaengine_pcm *pcm,
name = config->chan_names[i]; name = config->chan_names[i];
chan = dma_request_slave_channel_reason(dev, name); chan = dma_request_slave_channel_reason(dev, name);
if (IS_ERR(chan)) { if (IS_ERR(chan)) {
if (PTR_ERR(pcm->chan[i]) == -EPROBE_DEFER) if (PTR_ERR(chan) == -EPROBE_DEFER)
return -EPROBE_DEFER; return -EPROBE_DEFER;
pcm->chan[i] = NULL; pcm->chan[i] = NULL;
} else { } else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment