diff options
author | ximingc <ximingc@nvidia.com> | 2014-01-17 11:34:07 +0800 |
---|---|---|
committer | Martin Chi <mchi@nvidia.com> | 2014-01-19 21:03:16 -0800 |
commit | 16c5d4289ee983e8c52898401fdeb16b686c37cf (patch) | |
tree | 1f4728e57dafd50fab8b5672fcc8299768a27840 /arch | |
parent | 10000bf94e4826f054f1fc03da4126ab2a2c4092 (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.h | 4 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-tegranote7c-pinmux.c | 14 |
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; } |