aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ux500
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2013-05-03 10:32:13 -0400
committerLinus Walleij <linus.walleij@linaro.org>2013-05-23 15:13:12 -0400
commit252f27b0f21a875601ced115893f34f37e37ecbf (patch)
tree3ec98f30421668b39016eec11e4fef0a7497c089 /arch/arm/mach-ux500
parentfa332de5c6b3891485798adfe3252125457e5377 (diff)
ARM: ux500: Pass remnant platform data though to DMA40 driver
Ironically, in order to remove lots of the auxdata assignments, we have to add just one more. A lot of them require DMA information to be passed into clients for DMA channel allocation, but we now have this capability in Device Tree. However, the DMA40 driver still relies on a reverse table look-up to obtain DMA addresses. Until all of the clients are converted, over to the new API, we're stuck with this. Also, now the DMA40 has been DT:ed, there's no requirement to register it using traditional methods, so let's remove it. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm/mach-ux500')
-rw-r--r--arch/arm/mach-ux500/board-mop500.h1
-rw-r--r--arch/arm/mach-ux500/cpu-db8500.c13
-rw-r--r--arch/arm/mach-ux500/devices-db8500.c2
3 files changed, 5 insertions, 11 deletions
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 49514b825034..6f0bfcb08907 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -93,6 +93,7 @@ extern struct amba_pl011_data uart0_plat;
93extern struct amba_pl011_data uart1_plat; 93extern struct amba_pl011_data uart1_plat;
94extern struct amba_pl011_data uart2_plat; 94extern struct amba_pl011_data uart2_plat;
95extern struct pl022_ssp_controller ssp0_plat; 95extern struct pl022_ssp_controller ssp0_plat;
96extern struct stedma40_platform_data dma40_plat_data;
96 97
97extern void mop500_sdi_init(struct device *parent); 98extern void mop500_sdi_init(struct device *parent);
98extern void snowball_sdi_init(struct device *parent); 99extern void snowball_sdi_init(struct device *parent);
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 5f0b2ed55df6..648fa0cd0123 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -225,16 +225,6 @@ static struct device * __init u8500_of_init_devices(void)
225 225
226 db8500_add_usb(parent, usb_db8500_dma_cfg, usb_db8500_dma_cfg); 226 db8500_add_usb(parent, usb_db8500_dma_cfg, usb_db8500_dma_cfg);
227 227
228 u8500_dma40_device.dev.parent = parent;
229
230 /*
231 * Devices to be DT:ed:
232 * u8500_dma40_device = todo
233 * db8500_pmu_device = done
234 * db8500_prcmu_device = done
235 */
236 platform_device_register(&u8500_dma40_device);
237
238 return parent; 228 return parent;
239} 229}
240 230
@@ -280,6 +270,9 @@ static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = {
280 "ux500-msp-i2s.2", &msp2_platform_data), 270 "ux500-msp-i2s.2", &msp2_platform_data),
281 OF_DEV_AUXDATA("stericsson,ux500-msp-i2s", 0x80125000, 271 OF_DEV_AUXDATA("stericsson,ux500-msp-i2s", 0x80125000,
282 "ux500-msp-i2s.3", &msp3_platform_data), 272 "ux500-msp-i2s.3", &msp3_platform_data),
273 /* Requires clock name bindings and channel address lookup table. */
274 OF_DEV_AUXDATA("stericsson,db8500-dma40", 0x801C0000,
275 "dma40.0", &dma40_plat_data),
283 {}, 276 {},
284}; 277};
285 278
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 130f3d9917e7..bed25a39e68b 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -120,7 +120,7 @@ static const dma_addr_t dma40_rx_map[DB8500_DMA_NR_DEV] = {
120 [DB8500_DMA_DEV48_CAC1] = U8500_CRYP1_BASE + CRYP1_RX_REG_OFFSET, 120 [DB8500_DMA_DEV48_CAC1] = U8500_CRYP1_BASE + CRYP1_RX_REG_OFFSET,
121}; 121};
122 122
123static struct stedma40_platform_data dma40_plat_data = { 123struct stedma40_platform_data dma40_plat_data = {
124 .dev_rx = dma40_rx_map, 124 .dev_rx = dma40_rx_map,
125 .dev_tx = dma40_tx_map, 125 .dev_tx = dma40_tx_map,
126 .disabled_channels = {-1}, 126 .disabled_channels = {-1},