dmaengine: bcm2835: set residue_granularity field
authorMartin Sperl <kernel@martin.sperl.org>
Wed, 16 Mar 2016 19:24:55 +0000 (12:24 -0700)
committerVinod Koul <vinod.koul@intel.com>
Fri, 15 Apr 2016 04:27:21 +0000 (09:57 +0530)
bcm2835-dma supports residue reporting at burst level but didn't report
this via the residue_granularity field.

See also:
https://github.com/raspberrypi/linux/commit/b015555327afa402f70ddc86e3632f59df1cd9d7
for the downstream patch.

Signed-off-by: Matthias Reichl <hias@horus.com>
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/bcm2835-dma.c

index 996c4b0..2d72fe8 100644 (file)
@@ -625,6 +625,7 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
        od->ddev.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
        od->ddev.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
        od->ddev.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
+       od->ddev.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
        od->ddev.dev = &pdev->dev;
        INIT_LIST_HEAD(&od->ddev.channels);
        spin_lock_init(&od->lock);