Merge tag 'dmaengine-4.10-rc1' of git://git.infradead.org/users/vkoul/slave-dma
Pull dmaengine updates from Vinod Koul: "Fairly routine update this time around with all changes specific to drivers: - New driver for STMicroelectronics FDMA - Memory-to-memory transfers on dw dmac - Support for slave maps on pl08x devices - Bunch of driver fixes to use dma_pool_zalloc - Bunch of compile and warning fixes spread across drivers" [ The ST FDMA driver already came in earlier through the remoteproc tree ] * tag 'dmaengine-4.10-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (68 commits) dmaengine: sirf-dma: remove unused ‘sdesc’ dmaengine: pl330: remove unused ‘regs’ dmaengine: s3c24xx: remove unused ‘cdata’ dmaengine: stm32-dma: remove unused ‘src_addr’ dmaengine: stm32-dma: remove unused ‘dst_addr’ dmaengine: stm32-dma: remove unused ‘sfcr’ dmaengine: pch_dma: remove unused ‘cookie’ dmaengine: mic_x100_dma: remove unused ‘data’ dmaengine: img-mdc: remove unused ‘prev_phys’ dmaengine: usb-dmac: remove unused ‘uchan’ dmaengine: ioat: remove unused ‘res’ dmaengine: ioat: remove unused ‘ioat_dma’ dmaengine: ioat: remove unused ‘is_raid_device’ dmaengine: pl330: do not generate unaligned access dmaengine: k3dma: move to dma_pool_zalloc dmaengine: at_hdmac: move to dma_pool_zalloc dmaengine: at_xdmac: don't restore unsaved status dmaengine: ioat: set error code on failures dmaengine: ioat: set error code on failures dmaengine: DW DMAC: add multi-block property to device tree ...
This commit is contained in:
@@ -118,6 +118,7 @@
|
||||
block_size = <0xfff>;
|
||||
dma-masters = <2>;
|
||||
data-width = <8 8>;
|
||||
multi-block = <1 1 1 1 1 1 1 1>;
|
||||
};
|
||||
|
||||
dma@eb000000 {
|
||||
@@ -134,6 +135,7 @@
|
||||
chan_priority = <1>;
|
||||
block_size = <0xfff>;
|
||||
data-width = <8 8>;
|
||||
multi-block = <1 1 1 1 1 1 1 1>;
|
||||
};
|
||||
|
||||
fsmc: flash@b0000000 {
|
||||
|
@@ -117,6 +117,25 @@ static struct pl08x_channel_data s3c64xx_dma0_info[] = {
|
||||
}
|
||||
};
|
||||
|
||||
static const struct dma_slave_map s3c64xx_dma0_slave_map[] = {
|
||||
{ "s3c6400-uart.0", "tx", &s3c64xx_dma0_info[0] },
|
||||
{ "s3c6400-uart.0", "rx", &s3c64xx_dma0_info[1] },
|
||||
{ "s3c6400-uart.1", "tx", &s3c64xx_dma0_info[2] },
|
||||
{ "s3c6400-uart.1", "rx", &s3c64xx_dma0_info[3] },
|
||||
{ "s3c6400-uart.2", "tx", &s3c64xx_dma0_info[4] },
|
||||
{ "s3c6400-uart.2", "rx", &s3c64xx_dma0_info[5] },
|
||||
{ "s3c6400-uart.3", "tx", &s3c64xx_dma0_info[6] },
|
||||
{ "s3c6400-uart.3", "rx", &s3c64xx_dma0_info[7] },
|
||||
{ "samsung-pcm.0", "tx", &s3c64xx_dma0_info[8] },
|
||||
{ "samsung-pcm.0", "rx", &s3c64xx_dma0_info[9] },
|
||||
{ "samsung-i2s.0", "tx", &s3c64xx_dma0_info[10] },
|
||||
{ "samsung-i2s.0", "rx", &s3c64xx_dma0_info[11] },
|
||||
{ "s3c6410-spi.0", "tx", &s3c64xx_dma0_info[12] },
|
||||
{ "s3c6410-spi.0", "rx", &s3c64xx_dma0_info[13] },
|
||||
{ "samsung-i2s.2", "tx", &s3c64xx_dma0_info[14] },
|
||||
{ "samsung-i2s.2", "rx", &s3c64xx_dma0_info[15] },
|
||||
};
|
||||
|
||||
struct pl08x_platform_data s3c64xx_dma0_plat_data = {
|
||||
.memcpy_channel = {
|
||||
.bus_id = "memcpy",
|
||||
@@ -134,6 +153,8 @@ struct pl08x_platform_data s3c64xx_dma0_plat_data = {
|
||||
.put_xfer_signal = pl08x_put_xfer_signal,
|
||||
.slave_channels = s3c64xx_dma0_info,
|
||||
.num_slave_channels = ARRAY_SIZE(s3c64xx_dma0_info),
|
||||
.slave_map = s3c64xx_dma0_slave_map,
|
||||
.slave_map_len = ARRAY_SIZE(s3c64xx_dma0_slave_map),
|
||||
};
|
||||
|
||||
static AMBA_AHB_DEVICE(s3c64xx_dma0, "dma-pl080s.0", 0,
|
||||
@@ -207,6 +228,15 @@ static struct pl08x_channel_data s3c64xx_dma1_info[] = {
|
||||
},
|
||||
};
|
||||
|
||||
static const struct dma_slave_map s3c64xx_dma1_slave_map[] = {
|
||||
{ "samsung-pcm.1", "tx", &s3c64xx_dma1_info[0] },
|
||||
{ "samsung-pcm.1", "rx", &s3c64xx_dma1_info[1] },
|
||||
{ "samsung-i2s.1", "tx", &s3c64xx_dma1_info[2] },
|
||||
{ "samsung-i2s.1", "rx", &s3c64xx_dma1_info[3] },
|
||||
{ "s3c6410-spi.1", "tx", &s3c64xx_dma1_info[4] },
|
||||
{ "s3c6410-spi.1", "rx", &s3c64xx_dma1_info[5] },
|
||||
};
|
||||
|
||||
struct pl08x_platform_data s3c64xx_dma1_plat_data = {
|
||||
.memcpy_channel = {
|
||||
.bus_id = "memcpy",
|
||||
@@ -224,6 +254,8 @@ struct pl08x_platform_data s3c64xx_dma1_plat_data = {
|
||||
.put_xfer_signal = pl08x_put_xfer_signal,
|
||||
.slave_channels = s3c64xx_dma1_info,
|
||||
.num_slave_channels = ARRAY_SIZE(s3c64xx_dma1_info),
|
||||
.slave_map = s3c64xx_dma1_slave_map,
|
||||
.slave_map_len = ARRAY_SIZE(s3c64xx_dma1_slave_map),
|
||||
};
|
||||
|
||||
static AMBA_AHB_DEVICE(s3c64xx_dma1, "dma-pl080s.1", 0,
|
||||
|
@@ -1124,15 +1124,6 @@ void __init s3c64xx_spi0_set_platdata(int (*cfg_gpio)(void), int src_clk_nr,
|
||||
pd.num_cs = num_cs;
|
||||
pd.src_clk_nr = src_clk_nr;
|
||||
pd.cfg_gpio = (cfg_gpio) ? cfg_gpio : s3c64xx_spi0_cfg_gpio;
|
||||
pd.dma_tx = (void *)DMACH_SPI0_TX;
|
||||
pd.dma_rx = (void *)DMACH_SPI0_RX;
|
||||
#if defined(CONFIG_PL330_DMA)
|
||||
pd.filter = pl330_filter;
|
||||
#elif defined(CONFIG_S3C64XX_PL080)
|
||||
pd.filter = pl08x_filter_id;
|
||||
#elif defined(CONFIG_S3C24XX_DMAC)
|
||||
pd.filter = s3c24xx_dma_filter;
|
||||
#endif
|
||||
|
||||
s3c_set_platdata(&pd, sizeof(pd), &s3c64xx_device_spi0);
|
||||
}
|
||||
@@ -1169,14 +1160,6 @@ void __init s3c64xx_spi1_set_platdata(int (*cfg_gpio)(void), int src_clk_nr,
|
||||
pd.num_cs = num_cs;
|
||||
pd.src_clk_nr = src_clk_nr;
|
||||
pd.cfg_gpio = (cfg_gpio) ? cfg_gpio : s3c64xx_spi1_cfg_gpio;
|
||||
pd.dma_tx = (void *)DMACH_SPI1_TX;
|
||||
pd.dma_rx = (void *)DMACH_SPI1_RX;
|
||||
#if defined(CONFIG_PL330_DMA)
|
||||
pd.filter = pl330_filter;
|
||||
#elif defined(CONFIG_S3C64XX_PL080)
|
||||
pd.filter = pl08x_filter_id;
|
||||
#endif
|
||||
|
||||
|
||||
s3c_set_platdata(&pd, sizeof(pd), &s3c64xx_device_spi1);
|
||||
}
|
||||
@@ -1213,13 +1196,6 @@ void __init s3c64xx_spi2_set_platdata(int (*cfg_gpio)(void), int src_clk_nr,
|
||||
pd.num_cs = num_cs;
|
||||
pd.src_clk_nr = src_clk_nr;
|
||||
pd.cfg_gpio = (cfg_gpio) ? cfg_gpio : s3c64xx_spi2_cfg_gpio;
|
||||
pd.dma_tx = (void *)DMACH_SPI2_TX;
|
||||
pd.dma_rx = (void *)DMACH_SPI2_RX;
|
||||
#if defined(CONFIG_PL330_DMA)
|
||||
pd.filter = pl330_filter;
|
||||
#elif defined(CONFIG_S3C64XX_PL080)
|
||||
pd.filter = pl08x_filter_id;
|
||||
#endif
|
||||
|
||||
s3c_set_platdata(&pd, sizeof(pd), &s3c64xx_device_spi2);
|
||||
}
|
||||
|
Reference in New Issue
Block a user