0021-dmaengine-bcm2835-set-residue_granularity-field.patch 1.1 KB

1234567891011121314151617181920212223242526272829
  1. From b289e31cd9ba63bfa054ec6584204e8ca6ee1019 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] 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. bcm2835-dma supports residue reporting at burst level but didn't report
  9. this via the residue_granularity field.
  10. Without this field set properly we get playback issues with I2S cards.
  11. [by HiassofT, taken from bcm2708-dmaengine]
  12. Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
  13. ---
  14. drivers/dma/bcm2835-dma.c | 1 +
  15. 1 file changed, 1 insertion(+)
  16. --- a/drivers/dma/bcm2835-dma.c
  17. +++ b/drivers/dma/bcm2835-dma.c
  18. @@ -802,6 +802,7 @@ static int bcm2835_dma_probe(struct plat
  19. od->ddev.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
  20. od->ddev.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
  21. od->ddev.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
  22. + od->ddev.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
  23. od->ddev.dev = &pdev->dev;
  24. INIT_LIST_HEAD(&od->ddev.channels);
  25. spin_lock_init(&od->lock);