aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/devices-da8xx.c
diff options
context:
space:
mode:
authorChaithrika U S <chaithrika@ti.com>2009-08-11 17:03:25 -0400
committerKevin Hilman <khilman@deeprootsystems.com>2009-08-26 04:55:53 -0400
commit491214e1f8129844289869bb6c231dc4542b11e3 (patch)
tree44b52d050a3d34fc7281ff304840ee782224a10c /arch/arm/mach-davinci/devices-da8xx.c
parente33ef5e3b368b31705d3024ee6a326f2a85a78fb (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.c34
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
312static 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
333static 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
312int __init da8xx_register_emac(void) 340int __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
317void __init da8xx_init_mcasp(int id, struct snd_platform_data *pdata) 345void __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}