]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/dma/fsldma.c
Merge branch 'misc.compat' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[mirror_ubuntu-artful-kernel.git] / drivers / dma / fsldma.c
index 51c75bf2b9b6840dbd32e05215638ffc1897dad2..3b8b752ede2d2db82a045ccb3434c4508a7e5004 100644 (file)
@@ -269,6 +269,7 @@ static void fsl_chan_set_src_loop_size(struct fsldma_chan *chan, int size)
        case 2:
        case 4:
        case 8:
+               mode &= ~FSL_DMA_MR_SAHTS_MASK;
                mode |= FSL_DMA_MR_SAHE | (__ilog2(size) << 14);
                break;
        }
@@ -301,6 +302,7 @@ static void fsl_chan_set_dst_loop_size(struct fsldma_chan *chan, int size)
        case 2:
        case 4:
        case 8:
+               mode &= ~FSL_DMA_MR_DAHTS_MASK;
                mode |= FSL_DMA_MR_DAHE | (__ilog2(size) << 16);
                break;
        }
@@ -327,7 +329,8 @@ static void fsl_chan_set_request_count(struct fsldma_chan *chan, int size)
        BUG_ON(size > 1024);
 
        mode = get_mr(chan);
-       mode |= (__ilog2(size) << 24) & 0x0f000000;
+       mode &= ~FSL_DMA_MR_BWC_MASK;
+       mode |= (__ilog2(size) << 24) & FSL_DMA_MR_BWC_MASK;
 
        set_mr(chan, mode);
 }