diff options
Diffstat (limited to 'arch/arm/mach-omap1/board-h3.c')
-rw-r--r-- | arch/arm/mach-omap1/board-h3.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/board-h3.c b/arch/arm/mach-omap1/board-h3.c index 79d4ef4c54d4..4167f3480974 100644 --- a/arch/arm/mach-omap1/board-h3.c +++ b/arch/arm/mach-omap1/board-h3.c | |||
@@ -44,6 +44,8 @@ | |||
44 | #include <asm/arch/keypad.h> | 44 | #include <asm/arch/keypad.h> |
45 | #include <asm/arch/dma.h> | 45 | #include <asm/arch/dma.h> |
46 | #include <asm/arch/common.h> | 46 | #include <asm/arch/common.h> |
47 | #include <asm/arch/mcbsp.h> | ||
48 | #include <asm/arch/omap-alsa.h> | ||
47 | 49 | ||
48 | extern int omap_gpio_init(void); | 50 | extern int omap_gpio_init(void); |
49 | 51 | ||
@@ -351,11 +353,14 @@ static struct resource h3_irda_resources[] = { | |||
351 | }, | 353 | }, |
352 | }; | 354 | }; |
353 | 355 | ||
356 | static u64 irda_dmamask = 0xffffffff; | ||
357 | |||
354 | static struct platform_device h3_irda_device = { | 358 | static struct platform_device h3_irda_device = { |
355 | .name = "omapirda", | 359 | .name = "omapirda", |
356 | .id = 0, | 360 | .id = 0, |
357 | .dev = { | 361 | .dev = { |
358 | .platform_data = &h3_irda_data, | 362 | .platform_data = &h3_irda_data, |
363 | .dma_mask = &irda_dmamask, | ||
359 | }, | 364 | }, |
360 | .num_resources = ARRAY_SIZE(h3_irda_resources), | 365 | .num_resources = ARRAY_SIZE(h3_irda_resources), |
361 | .resource = h3_irda_resources, | 366 | .resource = h3_irda_resources, |
@@ -366,6 +371,41 @@ static struct platform_device h3_lcd_device = { | |||
366 | .id = -1, | 371 | .id = -1, |
367 | }; | 372 | }; |
368 | 373 | ||
374 | static struct omap_mcbsp_reg_cfg mcbsp_regs = { | ||
375 | .spcr2 = FREE | FRST | GRST | XRST | XINTM(3), | ||
376 | .spcr1 = RINTM(3) | RRST, | ||
377 | .rcr2 = RPHASE | RFRLEN2(OMAP_MCBSP_WORD_8) | | ||
378 | RWDLEN2(OMAP_MCBSP_WORD_16) | RDATDLY(1), | ||
379 | .rcr1 = RFRLEN1(OMAP_MCBSP_WORD_8) | RWDLEN1(OMAP_MCBSP_WORD_16), | ||
380 | .xcr2 = XPHASE | XFRLEN2(OMAP_MCBSP_WORD_8) | | ||
381 | XWDLEN2(OMAP_MCBSP_WORD_16) | XDATDLY(1) | XFIG, | ||
382 | .xcr1 = XFRLEN1(OMAP_MCBSP_WORD_8) | XWDLEN1(OMAP_MCBSP_WORD_16), | ||
383 | .srgr1 = FWID(15), | ||
384 | .srgr2 = GSYNC | CLKSP | FSGM | FPER(31), | ||
385 | |||
386 | .pcr0 = CLKRM | SCLKME | FSXP | FSRP | CLKXP | CLKRP, | ||
387 | //.pcr0 = CLKXP | CLKRP, /* mcbsp: slave */ | ||
388 | }; | ||
389 | |||
390 | static struct omap_alsa_codec_config alsa_config = { | ||
391 | .name = "H3 TSC2101", | ||
392 | .mcbsp_regs_alsa = &mcbsp_regs, | ||
393 | .codec_configure_dev = NULL, // tsc2101_configure, | ||
394 | .codec_set_samplerate = NULL, // tsc2101_set_samplerate, | ||
395 | .codec_clock_setup = NULL, // tsc2101_clock_setup, | ||
396 | .codec_clock_on = NULL, // tsc2101_clock_on, | ||
397 | .codec_clock_off = NULL, // tsc2101_clock_off, | ||
398 | .get_default_samplerate = NULL, // tsc2101_get_default_samplerate, | ||
399 | }; | ||
400 | |||
401 | static struct platform_device h3_mcbsp1_device = { | ||
402 | .name = "omap_alsa_mcbsp", | ||
403 | .id = 1, | ||
404 | .dev = { | ||
405 | .platform_data = &alsa_config, | ||
406 | }, | ||
407 | }; | ||
408 | |||
369 | static struct platform_device *devices[] __initdata = { | 409 | static struct platform_device *devices[] __initdata = { |
370 | &nor_device, | 410 | &nor_device, |
371 | &nand_device, | 411 | &nand_device, |
@@ -374,6 +414,7 @@ static struct platform_device *devices[] __initdata = { | |||
374 | &h3_irda_device, | 414 | &h3_irda_device, |
375 | &h3_kp_device, | 415 | &h3_kp_device, |
376 | &h3_lcd_device, | 416 | &h3_lcd_device, |
417 | &h3_mcbsp1_device, | ||
377 | }; | 418 | }; |
378 | 419 | ||
379 | static struct omap_usb_config h3_usb_config __initdata = { | 420 | static struct omap_usb_config h3_usb_config __initdata = { |