ARM: Tegra: Roth: Enable 1v8 Touch Regulator
Matt Wagner [Thu, 10 Jan 2013 22:47:12 +0000 (14:47 -0800)]
Set up 1v8 Touch regulator dvdd_ts as a fixed_regulator

Set up Pinmux to work correctly for this new use

Bug 1216507

Reviewed-on: http://git-master/r/190412
(cherry picked from commit b51a0a50a2c2de8be4ba6e7920a757c4575dc7f1)

Change-Id: Ibb8266327a212f527c8c3076cfc4f30eeaf46f06
Signed-off-by: Matt Wagner <mwagner@nvidia.com>
Reviewed-on: http://git-master/r/192566
GVS: Gerrit_Virtual_Submit
Reviewed-by: David Jung <djung@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Robert Collins <rcollins@nvidia.com>

arch/arm/mach-tegra/board-roth-pinmux-t11x.h
arch/arm/mach-tegra/board-roth-pinmux.c
arch/arm/mach-tegra/board-roth-power.c

index 173fa33..41ed908 100644 (file)
@@ -261,7 +261,7 @@ static struct gpio_init_pin_info init_gpio_mode_roth_common[] = {
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PG4, false, 0),
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PH0, false, 0),
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PK1, false, 0),
-       GPIO_INIT_PIN_MODE(TEGRA_GPIO_PK3, true, 0),
+       GPIO_INIT_PIN_MODE(TEGRA_GPIO_PK3, false, 0),
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PK4, false, 0),
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PK2, true, 0),
        GPIO_INIT_PIN_MODE(TEGRA_GPIO_PI6, true, 0),
index b0b3b5c..3fb8f94 100644 (file)
@@ -217,7 +217,7 @@ static __initdata struct tegra_pingroup_config roth_pinmux_set_nontristate[] = {
        DEFAULT_PINMUX(GMI_ADV_N,       GMI,    PULL_UP,      NORMAL,    INPUT),
        DEFAULT_PINMUX(GMI_CLK,         GMI,    PULL_DOWN,    NORMAL,    OUTPUT),
        DEFAULT_PINMUX(GMI_CS0_N,       GMI,    PULL_UP,      NORMAL,    INPUT),
-       DEFAULT_PINMUX(GMI_CS2_N,       GMI,    PULL_UP,      NORMAL,    INPUT),
+       DEFAULT_PINMUX(GMI_CS2_N,       GMI,    PULL_DOWN,    NORMAL,    OUTPUT),
        DEFAULT_PINMUX(GMI_CS3_N,       GMI,    PULL_UP,      NORMAL,    OUTPUT),
        DEFAULT_PINMUX(GMI_CS4_N,       GMI,    PULL_UP,      NORMAL,    INPUT),
        DEFAULT_PINMUX(GMI_CS7_N,       GMI,    PULL_UP,      NORMAL,    INPUT),
index 1576769..ce5a828 100644 (file)
@@ -210,7 +210,6 @@ static struct regulator_consumer_supply palmas_smps3_supply[] = {
        REGULATOR_SUPPLY("dbvdd", NULL),
        REGULATOR_SUPPLY("dvdd_lcd", NULL),
        REGULATOR_SUPPLY("vlogic", "0-0068"),
-       REGULATOR_SUPPLY("dvdd", "spi3.2"),
 };
 
 static struct regulator_consumer_supply palmas_smps45_supply[] = {
@@ -489,6 +488,11 @@ static struct regulator_consumer_supply fixed_reg_avdd_ts_supply[] = {
        REGULATOR_SUPPLY("avdd", "spi3.2"),
 };
 
+/* EN_1V8_TS From TEGRA_GPIO_PK3 */
+static struct regulator_consumer_supply fixed_reg_dvdd_ts_supply[] = {
+       REGULATOR_SUPPLY("dvdd", "spi3.2"),
+};
+
 /* Macro for defining fixed regulator sub device data */
 #define FIXED_SUPPLY(_name) "fixed_reg_"#_name
 #define FIXED_REG(_id, _var, _name, _in_supply, _always_on, _boot_on,  \
@@ -543,15 +547,19 @@ FIXED_REG(3,      avdd_ts,        avdd_ts,
        palmas_rails(regen1),   0,      0,
        TEGRA_GPIO_PH5, false,  true,   0,      3300);
 
-FIXED_REG(4,   com_3v3,        com_3v3,
+FIXED_REG(4,   dvdd_ts,        dvdd_ts,
+       palmas_rails(smps3),    0,      0,
+       TEGRA_GPIO_PK3, false,  true,   0,      1800);
+
+FIXED_REG(5,   com_3v3,        com_3v3,
        palmas_rails(regen1),   0,      0,
        TEGRA_GPIO_PX7, false,  true,   0,      3300);
 
-FIXED_REG(5,   sd_3v3, sd_3v3,
+FIXED_REG(6,   sd_3v3, sd_3v3,
        palmas_rails(regen1),   0,      0,
        TEGRA_GPIO_PH0, false,  true,   0,      3300);
 
-FIXED_REG(6,   com_1v8,        com_1v8,
+FIXED_REG(7,   com_1v8,        com_1v8,
        palmas_rails(smps3),    0,      0,
        TEGRA_GPIO_PX1, false,  true,   0,      1800);
 
@@ -580,6 +588,7 @@ static struct platform_device *fixed_reg_devs_roth[] = {
        ADD_FIXED_REG(vdd_hdmi_5v0),
        ADD_FIXED_REG(lcd_bl_en),
        ADD_FIXED_REG(avdd_ts),
+       ADD_FIXED_REG(dvdd_ts),
        ADD_FIXED_REG(com_3v3),
        ADD_FIXED_REG(sd_3v3),
        ADD_FIXED_REG(com_1v8),