diff options
author | Chaithrika U S <chaithrika@ti.com> | 2009-08-11 17:03:25 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@deeprootsystems.com> | 2009-08-26 04:55:53 -0400 |
commit | 491214e1f8129844289869bb6c231dc4542b11e3 (patch) | |
tree | 44b52d050a3d34fc7281ff304840ee782224a10c /arch/arm/mach-davinci/devices-da8xx.c | |
parent | e33ef5e3b368b31705d3024ee6a326f2a85a78fb (diff) |
davinci: Audio support for DA850/OMAP-L138 EVM
Define resources for McASP used on DA850/OMAP-L138 EVM, add platform
device defintion and Pin Mux configurations.
Signed-off-by: Chaithrika U S <chaithrika@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/devices-da8xx.c')
-rw-r--r-- | arch/arm/mach-davinci/devices-da8xx.c | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c index fe0baafcf610..1882eef3aead 100644 --- a/arch/arm/mach-davinci/devices-da8xx.c +++ b/arch/arm/mach-davinci/devices-da8xx.c | |||
@@ -309,6 +309,34 @@ static struct platform_device da830_mcasp1_device = { | |||
309 | .resource = da830_mcasp1_resources, | 309 | .resource = da830_mcasp1_resources, |
310 | }; | 310 | }; |
311 | 311 | ||
312 | static struct resource da850_mcasp_resources[] = { | ||
313 | { | ||
314 | .name = "mcasp", | ||
315 | .start = DAVINCI_DA8XX_MCASP0_REG_BASE, | ||
316 | .end = DAVINCI_DA8XX_MCASP0_REG_BASE + (SZ_1K * 12) - 1, | ||
317 | .flags = IORESOURCE_MEM, | ||
318 | }, | ||
319 | /* TX event */ | ||
320 | { | ||
321 | .start = DAVINCI_DA8XX_DMA_MCASP0_AXEVT, | ||
322 | .end = DAVINCI_DA8XX_DMA_MCASP0_AXEVT, | ||
323 | .flags = IORESOURCE_DMA, | ||
324 | }, | ||
325 | /* RX event */ | ||
326 | { | ||
327 | .start = DAVINCI_DA8XX_DMA_MCASP0_AREVT, | ||
328 | .end = DAVINCI_DA8XX_DMA_MCASP0_AREVT, | ||
329 | .flags = IORESOURCE_DMA, | ||
330 | }, | ||
331 | }; | ||
332 | |||
333 | static struct platform_device da850_mcasp_device = { | ||
334 | .name = "davinci-mcasp", | ||
335 | .id = 0, | ||
336 | .num_resources = ARRAY_SIZE(da850_mcasp_resources), | ||
337 | .resource = da850_mcasp_resources, | ||
338 | }; | ||
339 | |||
312 | int __init da8xx_register_emac(void) | 340 | int __init da8xx_register_emac(void) |
313 | { | 341 | { |
314 | return platform_device_register(&da8xx_emac_device); | 342 | return platform_device_register(&da8xx_emac_device); |
@@ -316,8 +344,12 @@ int __init da8xx_register_emac(void) | |||
316 | 344 | ||
317 | void __init da8xx_init_mcasp(int id, struct snd_platform_data *pdata) | 345 | void __init da8xx_init_mcasp(int id, struct snd_platform_data *pdata) |
318 | { | 346 | { |
319 | if (id == 1) { /* DA830/OMAP-L137 has 3 instances of McASP */ | 347 | /* DA830/OMAP-L137 has 3 instances of McASP */ |
348 | if (cpu_is_davinci_da830() && id == 1) { | ||
320 | da830_mcasp1_device.dev.platform_data = pdata; | 349 | da830_mcasp1_device.dev.platform_data = pdata; |
321 | platform_device_register(&da830_mcasp1_device); | 350 | platform_device_register(&da830_mcasp1_device); |
351 | } else if (cpu_is_davinci_da850()) { | ||
352 | da850_mcasp_device.dev.platform_data = pdata; | ||
353 | platform_device_register(&da850_mcasp_device); | ||
322 | } | 354 | } |
323 | } | 355 | } |