diff options
Diffstat (limited to 'drivers/dma/sh/shdma.c')
-rw-r--r-- | drivers/dma/sh/shdma.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/dma/sh/shdma.c b/drivers/dma/sh/shdma.c index 9f0a2e507ac3..9a10d8bbdef2 100644 --- a/drivers/dma/sh/shdma.c +++ b/drivers/dma/sh/shdma.c | |||
@@ -285,12 +285,12 @@ static bool sh_dmae_channel_busy(struct shdma_chan *schan) | |||
285 | } | 285 | } |
286 | 286 | ||
287 | static void sh_dmae_setup_xfer(struct shdma_chan *schan, | 287 | static void sh_dmae_setup_xfer(struct shdma_chan *schan, |
288 | struct shdma_slave *sslave) | 288 | int slave_id) |
289 | { | 289 | { |
290 | struct sh_dmae_chan *sh_chan = container_of(schan, struct sh_dmae_chan, | 290 | struct sh_dmae_chan *sh_chan = container_of(schan, struct sh_dmae_chan, |
291 | shdma_chan); | 291 | shdma_chan); |
292 | 292 | ||
293 | if (sslave) { | 293 | if (slave_id >= 0) { |
294 | const struct sh_dmae_slave_config *cfg = | 294 | const struct sh_dmae_slave_config *cfg = |
295 | sh_chan->config; | 295 | sh_chan->config; |
296 | 296 | ||
@@ -302,7 +302,7 @@ static void sh_dmae_setup_xfer(struct shdma_chan *schan, | |||
302 | } | 302 | } |
303 | 303 | ||
304 | static const struct sh_dmae_slave_config *dmae_find_slave( | 304 | static const struct sh_dmae_slave_config *dmae_find_slave( |
305 | struct sh_dmae_chan *sh_chan, unsigned int slave_id) | 305 | struct sh_dmae_chan *sh_chan, int slave_id) |
306 | { | 306 | { |
307 | struct sh_dmae_device *shdev = to_sh_dev(sh_chan); | 307 | struct sh_dmae_device *shdev = to_sh_dev(sh_chan); |
308 | struct sh_dmae_pdata *pdata = shdev->pdata; | 308 | struct sh_dmae_pdata *pdata = shdev->pdata; |
@@ -320,11 +320,11 @@ static const struct sh_dmae_slave_config *dmae_find_slave( | |||
320 | } | 320 | } |
321 | 321 | ||
322 | static int sh_dmae_set_slave(struct shdma_chan *schan, | 322 | static int sh_dmae_set_slave(struct shdma_chan *schan, |
323 | struct shdma_slave *sslave) | 323 | int slave_id) |
324 | { | 324 | { |
325 | struct sh_dmae_chan *sh_chan = container_of(schan, struct sh_dmae_chan, | 325 | struct sh_dmae_chan *sh_chan = container_of(schan, struct sh_dmae_chan, |
326 | shdma_chan); | 326 | shdma_chan); |
327 | const struct sh_dmae_slave_config *cfg = dmae_find_slave(sh_chan, sslave->slave_id); | 327 | const struct sh_dmae_slave_config *cfg = dmae_find_slave(sh_chan, slave_id); |
328 | if (!cfg) | 328 | if (!cfg) |
329 | return -ENODEV; | 329 | return -ENODEV; |
330 | 330 | ||
@@ -579,7 +579,7 @@ static int sh_dmae_resume(struct device *dev) | |||
579 | if (!sh_chan->shdma_chan.desc_num) | 579 | if (!sh_chan->shdma_chan.desc_num) |
580 | continue; | 580 | continue; |
581 | 581 | ||
582 | if (sh_chan->shdma_chan.slave) { | 582 | if (sh_chan->shdma_chan.slave_id >= 0) { |
583 | const struct sh_dmae_slave_config *cfg = sh_chan->config; | 583 | const struct sh_dmae_slave_config *cfg = sh_chan->config; |
584 | dmae_set_dmars(sh_chan, cfg->mid_rid); | 584 | dmae_set_dmars(sh_chan, cfg->mid_rid); |
585 | dmae_set_chcr(sh_chan, cfg->chcr); | 585 | dmae_set_chcr(sh_chan, cfg->chcr); |