summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-kai-pinmux.c
diff options
context:
space:
mode:
authorManoj Gangwal <mgangwal@nvidia.com>2012-02-11 15:37:10 +0530
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-02-13 22:20:05 -0800
commitf422f8a0f03d4bcdc4af8036010410c8429c5df2 (patch)
treed4c1f637dc971ea1fc58fc0a8c2a77e50bf63cfe /arch/arm/mach-tegra/board-kai-pinmux.c
parentafe3f5978373561b7893afec9e1008316683f851 (diff)
arm: tegra: kai: Add ALC5640 audio codec.
Changes made to add support of ALC5640 codec for kai. Bug 910788 Signed-off-by: Manoj Gangwal <mgangwal@nvidia.com> Reviewed-on: http://git-master/r/75958 (cherry picked from commit 2f3e38e34ae7391b9bca74e49f53e20323207f47) Change-Id: I4f58d29fdaa33f7953373c9a1ebaecc9bd0e49a7 Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com> Reviewed-on: http://git-master/r/82735 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-kai-pinmux.c')
-rw-r--r--arch/arm/mach-tegra/board-kai-pinmux.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-kai-pinmux.c b/arch/arm/mach-tegra/board-kai-pinmux.c
index d5489fc61c54..713ecf9d988d 100644
--- a/arch/arm/mach-tegra/board-kai-pinmux.c
+++ b/arch/arm/mach-tegra/board-kai-pinmux.c
@@ -447,6 +447,17 @@ static __initdata struct tegra_pingroup_config unused_pins_lowpower[] = {
};
+static void __init kai_pinmux_audio_init(void)
+{
+ tegra_gpio_enable(TEGRA_GPIO_CDC_IRQ);
+ gpio_request(TEGRA_GPIO_CDC_IRQ, "rt5640");
+ gpio_direction_input(TEGRA_GPIO_CDC_IRQ);
+
+ tegra_gpio_enable(TEGRA_GPIO_HP_DET);
+ tegra_gpio_enable(TEGRA_GPIO_INT_MIC_EN);
+ tegra_gpio_enable(TEGRA_GPIO_EXT_MIC_EN);
+}
+
/* We are disabling this code for now. */
#define GPIO_INIT_PIN_MODE(_gpio, _is_input, _value) \
{ \
@@ -478,6 +489,9 @@ static void __init kai_gpio_init_configure(void)
int __init kai_pinmux_init(void)
{
+ struct board_info board_info;
+ tegra_get_board_info(&board_info);
+ BUG_ON(board_info.board_id != BOARD_E1565);
kai_gpio_init_configure();
tegra_pinmux_config_table(kai_pinmux_common, ARRAY_SIZE(kai_pinmux_common));
@@ -486,6 +500,7 @@ int __init kai_pinmux_init(void)
tegra_pinmux_config_table(unused_pins_lowpower,
ARRAY_SIZE(unused_pins_lowpower));
+ kai_pinmux_audio_init();
return 0;
}