aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/board-da830-evm.c
diff options
context:
space:
mode:
authorChaithrika U S <chaithrika@ti.com>2009-08-11 17:01:59 -0400
committerKevin Hilman <khilman@deeprootsystems.com>2009-08-26 04:55:52 -0400
commite33ef5e3b368b31705d3024ee6a326f2a85a78fb (patch)
treed42ede5148b7c4dd0a9245d12eaff33d46e2302f /arch/arm/mach-davinci/board-da830-evm.c
parent5a8d5441f4aac3ef0478d5de723422304c611926 (diff)
davinci: Audio support for DA830 EVM
Define resources for McASP1 used on DA830/OMAP-L137 EVM, add platform device defintion, initialization function. Additionally, this patch also adds version and FIFO related members to platform data structure. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/board-da830-evm.c')
-rw-r--r--arch/arm/mach-davinci/board-da830-evm.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c
index 90256693b8d8..a45340de7465 100644
--- a/arch/arm/mach-davinci/board-da830-evm.c
+++ b/arch/arm/mach-davinci/board-da830-evm.c
@@ -23,6 +23,7 @@
23#include <mach/irqs.h> 23#include <mach/irqs.h>
24#include <mach/cp_intc.h> 24#include <mach/cp_intc.h>
25#include <mach/da8xx.h> 25#include <mach/da8xx.h>
26#include <mach/asp.h>
26 27
27#define DA830_EVM_PHY_MASK 0x0 28#define DA830_EVM_PHY_MASK 0x0
28#define DA830_EVM_MDIO_FREQUENCY 2200000 /* PHY bus frequency */ 29#define DA830_EVM_MDIO_FREQUENCY 2200000 /* PHY bus frequency */
@@ -51,6 +52,25 @@ static struct davinci_uart_config da830_evm_uart_config __initdata = {
51 .enabled_uarts = 0x7, 52 .enabled_uarts = 0x7,
52}; 53};
53 54
55static u8 da830_iis_serializer_direction[] = {
56 RX_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
57 INACTIVE_MODE, TX_MODE, INACTIVE_MODE, INACTIVE_MODE,
58 INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE, INACTIVE_MODE,
59};
60
61static struct snd_platform_data da830_evm_snd_data = {
62 .tx_dma_offset = 0x2000,
63 .rx_dma_offset = 0x2000,
64 .op_mode = DAVINCI_MCASP_IIS_MODE,
65 .num_serializer = ARRAY_SIZE(da830_iis_serializer_direction),
66 .tdm_slots = 2,
67 .serial_dir = da830_iis_serializer_direction,
68 .eventq_no = EVENTQ_0,
69 .version = MCASP_VERSION_2,
70 .txnumevt = 1,
71 .rxnumevt = 1,
72};
73
54static __init void da830_evm_init(void) 74static __init void da830_evm_init(void)
55{ 75{
56 struct davinci_soc_info *soc_info = &davinci_soc_info; 76 struct davinci_soc_info *soc_info = &davinci_soc_info;
@@ -93,6 +113,13 @@ static __init void da830_evm_init(void)
93 davinci_serial_init(&da830_evm_uart_config); 113 davinci_serial_init(&da830_evm_uart_config);
94 i2c_register_board_info(1, da830_evm_i2c_devices, 114 i2c_register_board_info(1, da830_evm_i2c_devices,
95 ARRAY_SIZE(da830_evm_i2c_devices)); 115 ARRAY_SIZE(da830_evm_i2c_devices));
116
117 ret = da8xx_pinmux_setup(da830_mcasp1_pins);
118 if (ret)
119 pr_warning("da830_evm_init: mcasp1 mux setup failed: %d\n",
120 ret);
121
122 da8xx_init_mcasp(1, &da830_evm_snd_data);
96} 123}
97 124
98#ifdef CONFIG_SERIAL_8250_CONSOLE 125#ifdef CONFIG_SERIAL_8250_CONSOLE