summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorximingc <ximingc@nvidia.com>2014-01-17 11:34:07 +0800
committerMartin Chi <mchi@nvidia.com>2014-01-19 21:03:16 -0800
commit16c5d4289ee983e8c52898401fdeb16b686c37cf (patch)
tree1f4728e57dafd50fab8b5672fcc8299768a27840 /arch
parent10000bf94e4826f054f1fc03da4126ab2a2c4092 (diff)
ARM:Tegra:tn7c: config KB_COL1 in LP0
In LP0, configure GPIO KB_COL1 pull-down In other states, configure KB_COL1 pull-up Bug 1439735 Change-Id: Ifd35b3d77f631f32a66d36b0e92afe65cb2813df Signed-off-by: ximingc <ximingc@nvidia.com> Reviewed-on: http://git-master/r/356864 Reviewed-by: Martin Chi <mchi@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/board-tegranote7c-pinmux-t11x.h4
-rw-r--r--arch/arm/mach-tegra/board-tegranote7c-pinmux.c14
2 files changed, 15 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-tegranote7c-pinmux-t11x.h b/arch/arm/mach-tegra/board-tegranote7c-pinmux-t11x.h
index 470996b15681..3074759fa95b 100644
--- a/arch/arm/mach-tegra/board-tegranote7c-pinmux-t11x.h
+++ b/arch/arm/mach-tegra/board-tegranote7c-pinmux-t11x.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved.
+ * Copyright (c) 2014, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
@@ -176,6 +176,7 @@ static __initdata struct tegra_pingroup_config tegranote7c_pinmux_common[] = {
GPIO_PINMUX(SDMMC1_WP_N, NORMAL, NORMAL, OUTPUT, DISABLE),
GPIO_PINMUX(CLK_32K_OUT, NORMAL, NORMAL, INPUT, DISABLE),
GPIO_PINMUX(KB_COL0, PULL_UP, NORMAL, INPUT, DISABLE),
+ GPIO_PINMUX(KB_COL1, PULL_UP, NORMAL, OUTPUT, DISABLE),
GPIO_PINMUX(KB_COL2, PULL_UP, NORMAL, INPUT, DISABLE),
GPIO_PINMUX(KB_COL5, PULL_UP, NORMAL, INPUT, DISABLE),
GPIO_PINMUX(KB_ROW0, NORMAL, NORMAL, OUTPUT, DISABLE),
@@ -222,7 +223,6 @@ struct tegra_pingroup_config tegranote7c_unused_pins_lowpower[] = {
UNUSED_PINMUX(GMI_WAIT),
UNUSED_PINMUX(GMI_WR_N),
UNUSED_PINMUX(CLK2_OUT),
- UNUSED_PINMUX(KB_COL1),
UNUSED_PINMUX(KB_COL3),
UNUSED_PINMUX(KB_COL4),
UNUSED_PINMUX(KB_COL6),
diff --git a/arch/arm/mach-tegra/board-tegranote7c-pinmux.c b/arch/arm/mach-tegra/board-tegranote7c-pinmux.c
index 022f12daf0ee..84bc78a9193f 100644
--- a/arch/arm/mach-tegra/board-tegranote7c-pinmux.c
+++ b/arch/arm/mach-tegra/board-tegranote7c-pinmux.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved.
+ * Copyright (c) 2014, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
@@ -77,6 +77,14 @@ static void __init tegranote7c_gpio_init_configure(void)
}
}
+#ifdef CONFIG_PM_SLEEP
+/* pinmux settings during low power mode for power saving purpose */
+static struct tegra_pingroup_config tegranote7c_sleep_pinmux[] = {
+ /* Config RT6154 to PSM mode to save modem power */
+ GPIO_PINMUX(KB_COL1, PULL_DOWN, NORMAL, OUTPUT, DISABLE),
+};
+#endif
+
int __init tegranote7c_pinmux_init(void)
{
tegranote7c_gpio_init_configure();
@@ -94,6 +102,10 @@ int __init tegranote7c_pinmux_init(void)
if (get_tegra_uart_debug_port_id() == UART_FROM_SDCARD)
tegra_pinmux_config_table(e2542_uart_config_pinmux,
ARRAY_SIZE(e2542_uart_config_pinmux));
+#ifdef CONFIG_PM_SLEEP
+ tegra11x_set_sleep_pinmux(tegranote7c_sleep_pinmux,
+ ARRAY_SIZE(tegranote7c_sleep_pinmux));
+#endif
return 0;
}