diff options
author | Laxman Dewangan <ldewangan@nvidia.com> | 2011-07-01 20:35:49 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:47:18 -0800 |
commit | 413b6c91405e5f72ad4048c61e74521d21e30403 (patch) | |
tree | 8105f19efafaa458cc330ed1736dc91133706e88 /arch/arm/mach-tegra/board-cardhu-pinmux.c | |
parent | 524a1168d335d4c9e21fad1249777822d576aa00 (diff) |
arm: tegra: pm269: Low power mode to unused vddio-gmi pins
Putting the unused vddio_gmi pins into the low power mode.
bug 833087
Original-Change-Id: I7595d011a61d5993fee167e89ed7eb204d5cb6b6
Reviewed-on: http://git-master/r/37877
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Matthew Longnecker <mlongnecker@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Rebase-Id: R3fa74a5ebc7720b95f91f8da7b665e634522f210
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-pinmux.c')
-rw-r--r-- | arch/arm/mach-tegra/board-cardhu-pinmux.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-pinmux.c b/arch/arm/mach-tegra/board-cardhu-pinmux.c index 14c2d5a787c5..3fc317b1fa93 100644 --- a/arch/arm/mach-tegra/board-cardhu-pinmux.c +++ b/arch/arm/mach-tegra/board-cardhu-pinmux.c @@ -453,6 +453,29 @@ static __initdata struct tegra_pingroup_config unused_pins_lowpower[] = { DEFAULT_PINMUX(GMI_DQS, NAND, NORMAL, TRISTATE, OUTPUT), }; +static __initdata struct tegra_pingroup_config gmi_pins_269[] = { + /* Continuation of table unused_pins_lowpower only for PM269 */ + DEFAULT_PINMUX(GMI_CS0_N, NAND, PULL_UP, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_CS1_N, NAND, PULL_UP, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_CS2_N, RSVD1, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_CS3_N, NAND, NORMAL, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_CS4_N, NAND, PULL_UP, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_CS6_N, SATA, NORMAL, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_CS7_N, NAND, PULL_UP, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_AD8, PWM0, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_AD9, PWM1, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_AD10, NAND, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_AD11, NAND, NORMAL, NORMAL, OUTPUT), + DEFAULT_PINMUX(GMI_AD13, NAND, PULL_UP, TRISTATE, OUTPUT), + DEFAULT_PINMUX(GMI_AD15, NAND, PULL_UP, TRISTATE, INPUT), + DEFAULT_PINMUX(GMI_A16, SPI4, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_A17, SPI4, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_A18, SPI4, PULL_UP, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_A19, SPI4, NORMAL, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_RST_N, NAND, PULL_UP, NORMAL, INPUT), + DEFAULT_PINMUX(GMI_WP_N, NAND, NORMAL, NORMAL, INPUT), +}; + static void __init cardhu_pinmux_audio_init(void) { tegra_gpio_enable(TEGRA_GPIO_CDC_IRQ); @@ -490,6 +513,15 @@ int __init cardhu_pinmux_init(void) ARRAY_SIZE(cardhu_pinmux_cardhu_a03)); } break; + + case BOARD_PM269: + tegra_pinmux_config_table(cardhu_pinmux_e118x, + ARRAY_SIZE(cardhu_pinmux_e118x)); + tegra_pinmux_config_table(unused_pins_lowpower, + ARRAY_SIZE(unused_pins_lowpower)); + tegra_pinmux_config_table(gmi_pins_269, + ARRAY_SIZE(gmi_pins_269)); + break; default: tegra_pinmux_config_table(cardhu_pinmux_e118x, ARRAY_SIZE(cardhu_pinmux_e118x)); @@ -528,6 +560,21 @@ struct pin_info_low_power_mode pin_lpm_cardhu_common[] = { PIN_GPIO_LPM("GMI_WP_N", TEGRA_GPIO_PC7, 1, 0), }; +struct pin_info_low_power_mode vddio_gmi_pins_pm269[] = { + PIN_GPIO_LPM("GMI_CS2", TEGRA_GPIO_PK3, 0, 0), + PIN_GPIO_LPM("GMI_CS3_N", TEGRA_GPIO_PK4, 0, 0), + PIN_GPIO_LPM("GMI_CS4_N", TEGRA_GPIO_PK2, 1, 0), + PIN_GPIO_LPM("GMI_AD9", TEGRA_GPIO_PH1, 0, 0), + PIN_GPIO_LPM("GMI_CS7", TEGRA_GPIO_PI6, 1, 0), + PIN_GPIO_LPM("GMI_CS0", TEGRA_GPIO_PJ0, 1, 0), + PIN_GPIO_LPM("GMI_CS1", TEGRA_GPIO_PJ2, 1, 0), + PIN_GPIO_LPM("GMI_WP_N", TEGRA_GPIO_PC7, 1, 0), + PIN_GPIO_LPM("GMI_A16", TEGRA_GPIO_PJ7, 0, 0), + PIN_GPIO_LPM("GMI_A17", TEGRA_GPIO_PB0, 0, 0), + PIN_GPIO_LPM("GMI_A18", TEGRA_GPIO_PB1, 1, 0), + PIN_GPIO_LPM("GMI_A19", TEGRA_GPIO_PK7, 0, 0), +}; + static void set_unused_pin_gpio(struct pin_info_low_power_mode *lpm_pin_info, int list_count) { @@ -572,5 +619,9 @@ int __init cardhu_pins_state_init(void) (board_info.board_id == BOARD_E1198)) set_unused_pin_gpio(&pin_lpm_cardhu_common[0], ARRAY_SIZE(pin_lpm_cardhu_common)); + + if (board_info.board_id == BOARD_PM269) + set_unused_pin_gpio(&vddio_gmi_pins_pm269[0], + ARRAY_SIZE(vddio_gmi_pins_pm269)); return 0; } |