forked from Minki/linux
dma: sh: Don't use ENODEV for failing slave lookup
If dmaengine driver's .device_alloc_chan_resources() method returns -ENODEV, dma_request_channel() will decide, that the driver has been removed and will remove the device from its list. To prevent this use ENXIO if a slave lookup fails. Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: stable@vger.kernel.org Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
This commit is contained in:
parent
944ea4dd38
commit
7c1119bdd6
@ -326,7 +326,7 @@ static int sh_dmae_set_slave(struct shdma_chan *schan,
|
||||
shdma_chan);
|
||||
const struct sh_dmae_slave_config *cfg = dmae_find_slave(sh_chan, slave_id);
|
||||
if (!cfg)
|
||||
return -ENODEV;
|
||||
return -ENXIO;
|
||||
|
||||
if (!try)
|
||||
sh_chan->config = cfg;
|
||||
|
Loading…
Reference in New Issue
Block a user