brcm2708: switch to linux 4.4 and update patches
[openwrt.git] / target / linux / brcm2708 / patches-4.4 / 0021-dmaengine-bcm2835-set-residue_granularity-field.patch
1 From b6906312ccc7e18a0d8608c1d1bc318ab6f84656 Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= <noralf@tronnes.org>
3 Date: Sat, 3 Oct 2015 15:58:59 +0200
4 Subject: [PATCH 021/156] dmaengine: bcm2835: set residue_granularity field
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 bcm2835-dma supports residue reporting at burst level but didn't report
10 this via the residue_granularity field.
11
12 Without this field set properly we get playback issues with I2S cards.
13
14 [by HiassofT, taken from bcm2708-dmaengine]
15 Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
16 ---
17  drivers/dma/bcm2835-dma.c | 1 +
18  1 file changed, 1 insertion(+)
19
20 --- a/drivers/dma/bcm2835-dma.c
21 +++ b/drivers/dma/bcm2835-dma.c
22 @@ -802,6 +802,7 @@ static int bcm2835_dma_probe(struct plat
23         od->ddev.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
24         od->ddev.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
25         od->ddev.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
26 +       od->ddev.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
27         od->ddev.dev = &pdev->dev;
28         INIT_LIST_HEAD(&od->ddev.channels);
29         spin_lock_init(&od->lock);