diff options
Diffstat (limited to 'arch/arm/plat-mxc/devices/platform-imx-dma.c')
-rw-r--r-- | arch/arm/plat-mxc/devices/platform-imx-dma.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/arm/plat-mxc/devices/platform-imx-dma.c b/arch/arm/plat-mxc/devices/platform-imx-dma.c index c64f015e031b..27104f581700 100644 --- a/arch/arm/plat-mxc/devices/platform-imx-dma.c +++ b/arch/arm/plat-mxc/devices/platform-imx-dma.c | |||
@@ -51,6 +51,11 @@ struct imx_imx_sdma_data imx51_imx_sdma_data __initconst = | |||
51 | imx_imx_sdma_data_entry_single(MX51, 2, "imx51", 1); | 51 | imx_imx_sdma_data_entry_single(MX51, 2, "imx51", 1); |
52 | #endif /* ifdef CONFIG_SOC_IMX51 */ | 52 | #endif /* ifdef CONFIG_SOC_IMX51 */ |
53 | 53 | ||
54 | #ifdef CONFIG_SOC_IMX53 | ||
55 | struct imx_imx_sdma_data imx53_imx_sdma_data __initconst = | ||
56 | imx_imx_sdma_data_entry_single(MX53, 2, "imx53", 0); | ||
57 | #endif /* ifdef CONFIG_SOC_IMX53 */ | ||
58 | |||
54 | static struct platform_device __init __maybe_unused *imx_add_imx_sdma( | 59 | static struct platform_device __init __maybe_unused *imx_add_imx_sdma( |
55 | const struct imx_imx_sdma_data *data) | 60 | const struct imx_imx_sdma_data *data) |
56 | { | 61 | { |
@@ -153,6 +158,22 @@ static struct sdma_script_start_addrs addr_imx51 = { | |||
153 | }; | 158 | }; |
154 | #endif | 159 | #endif |
155 | 160 | ||
161 | #ifdef CONFIG_SOC_IMX53 | ||
162 | static struct sdma_script_start_addrs addr_imx53 = { | ||
163 | .ap_2_ap_addr = 642, | ||
164 | .app_2_mcu_addr = 683, | ||
165 | .mcu_2_app_addr = 747, | ||
166 | .uart_2_mcu_addr = 817, | ||
167 | .shp_2_mcu_addr = 891, | ||
168 | .mcu_2_shp_addr = 960, | ||
169 | .uartsh_2_mcu_addr = 1032, | ||
170 | .spdif_2_mcu_addr = 1100, | ||
171 | .mcu_2_spdif_addr = 1134, | ||
172 | .firi_2_mcu_addr = 1193, | ||
173 | .mcu_2_firi_addr = 1290, | ||
174 | }; | ||
175 | #endif | ||
176 | |||
156 | static int __init imxXX_add_imx_dma(void) | 177 | static int __init imxXX_add_imx_dma(void) |
157 | { | 178 | { |
158 | struct platform_device *ret; | 179 | struct platform_device *ret; |
@@ -202,6 +223,13 @@ static int __init imxXX_add_imx_dma(void) | |||
202 | ret = imx_add_imx_sdma(&imx51_imx_sdma_data); | 223 | ret = imx_add_imx_sdma(&imx51_imx_sdma_data); |
203 | } else | 224 | } else |
204 | #endif | 225 | #endif |
226 | |||
227 | #if defined(CONFIG_SOC_IMX53) | ||
228 | if (cpu_is_mx53()) { | ||
229 | imx53_imx_sdma_data.pdata.script_addrs = &addr_imx53; | ||
230 | ret = imx_add_imx_sdma(&imx53_imx_sdma_data); | ||
231 | } else | ||
232 | #endif | ||
205 | ret = ERR_PTR(-ENODEV); | 233 | ret = ERR_PTR(-ENODEV); |
206 | 234 | ||
207 | if (IS_ERR(ret)) | 235 | if (IS_ERR(ret)) |