Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'dmaengine-fix-4.18-rc4' of git://git.infradead.org/users/vkoul/slave-dma

Pull dmaengine fixes from Vinod Koul:
"We have few odd driver fixes and one email update change for you this
time:

- Driver fixes for k3dma (off by one), pl330 (burst residue
granularity) and omap-dma (incorrect residue_granularity)

- Sinan's email update"

* tag 'dmaengine-fix-4.18-rc4' of git://git.infradead.org/users/vkoul/slave-dma:
dmaengine: k3dma: Off by one in k3_of_dma_simple_xlate()
dmaengine: pl330: report BURST residue granularity
MAINTAINERS: Update email-id of Sinan Kaya
dmaengine: ti: omap-dma: Fix OMAP1510 incorrect residue_granularity

+8 -4
+1 -1
MAINTAINERS
··· 11835 11835 F: arch/hexagon/ 11836 11836 11837 11837 QUALCOMM HIDMA DRIVER 11838 - M: Sinan Kaya <okaya@codeaurora.org> 11838 + M: Sinan Kaya <okaya@kernel.org> 11839 11839 L: linux-arm-kernel@lists.infradead.org 11840 11840 L: linux-arm-msm@vger.kernel.org 11841 11841 L: dmaengine@vger.kernel.org
+1 -1
drivers/dma/k3dma.c
··· 794 794 struct k3_dma_dev *d = ofdma->of_dma_data; 795 795 unsigned int request = dma_spec->args[0]; 796 796 797 - if (request > d->dma_requests) 797 + if (request >= d->dma_requests) 798 798 return NULL; 799 799 800 800 return dma_get_slave_channel(&(d->chans[request].vc.chan));
+1 -1
drivers/dma/pl330.c
··· 3033 3033 pd->src_addr_widths = PL330_DMA_BUSWIDTHS; 3034 3034 pd->dst_addr_widths = PL330_DMA_BUSWIDTHS; 3035 3035 pd->directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV); 3036 - pd->residue_granularity = DMA_RESIDUE_GRANULARITY_SEGMENT; 3036 + pd->residue_granularity = DMA_RESIDUE_GRANULARITY_BURST; 3037 3037 pd->max_burst = ((pl330->quirks & PL330_QUIRK_BROKEN_NO_FLUSHP) ? 3038 3038 1 : PL330_MAX_BURST); 3039 3039
+5 -1
drivers/dma/ti/omap-dma.c
··· 1485 1485 od->ddev.src_addr_widths = OMAP_DMA_BUSWIDTHS; 1486 1486 od->ddev.dst_addr_widths = OMAP_DMA_BUSWIDTHS; 1487 1487 od->ddev.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV); 1488 - od->ddev.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST; 1488 + if (__dma_omap15xx(od->plat->dma_attr)) 1489 + od->ddev.residue_granularity = 1490 + DMA_RESIDUE_GRANULARITY_DESCRIPTOR; 1491 + else 1492 + od->ddev.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST; 1489 1493 od->ddev.max_burst = SZ_16M - 1; /* CCEN: 24bit unsigned */ 1490 1494 od->ddev.dev = &pdev->dev; 1491 1495 INIT_LIST_HEAD(&od->ddev.channels);