ste_dma40: Move two assignments in d40_prep_sg()
authorMarkus Elfring <elfring@users.sourceforge.net>
Sat, 17 Sep 2016 13:40:05 +0000 (15:40 +0200)
committerVinod Koul <vinod.koul@intel.com>
Mon, 26 Sep 2016 17:36:18 +0000 (23:06 +0530)
Move assignments for two local variables so that their setting
will only be performed after corresponding data processing succeeded
by this function.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/ste_dma40.c

index d587fd3..43f4e25 100644 (file)
@@ -2238,8 +2238,8 @@ d40_prep_sg(struct dma_chan *dchan, struct scatterlist *sg_src,
            enum dma_transfer_direction direction, unsigned long dma_flags)
 {
        struct d40_chan *chan = container_of(dchan, struct d40_chan, chan);
-       dma_addr_t src_dev_addr = 0;
-       dma_addr_t dst_dev_addr = 0;
+       dma_addr_t src_dev_addr;
+       dma_addr_t dst_dev_addr;
        struct d40_desc *desc;
        unsigned long flags;
        int ret;
@@ -2258,6 +2258,8 @@ d40_prep_sg(struct dma_chan *dchan, struct scatterlist *sg_src,
        if (sg_next(&sg_src[sg_len - 1]) == sg_src)
                desc->cyclic = true;
 
+       src_dev_addr = 0;
+       dst_dev_addr = 0;
        if (direction == DMA_DEV_TO_MEM)
                src_dev_addr = chan->runtime_addr;
        else if (direction == DMA_MEM_TO_DEV)