ARM: Tegra: Roth: Dalmore: Resolve Backlight Conflicts
[linux-3.10.git] / arch / arm / mach-tegra / board-roth-power.c
index b3b0364..2fe289c 100644 (file)
@@ -112,12 +112,15 @@ static struct regulator_consumer_supply palmas_smps3_supply[] = {
        REGULATOR_SUPPLY("vddio_uart", NULL),
        REGULATOR_SUPPLY("pwrdet_uart", NULL),
        REGULATOR_SUPPLY("dbvdd", NULL),
+       REGULATOR_SUPPLY("dvdd_lcd", NULL),
 };
 
 static struct regulator_consumer_supply palmas_smps45_supply[] = {
        REGULATOR_SUPPLY("vdd_core", NULL),
 };
 
+#define palmas_smps457_supply palmas_smps45_supply
+
 static struct regulator_consumer_supply palmas_smps8_supply[] = {
        REGULATOR_SUPPLY("avdd_plla_p_c", NULL),
        REGULATOR_SUPPLY("avdd_pllx", NULL),
@@ -140,12 +143,11 @@ static struct regulator_consumer_supply palmas_smps9_supply[] = {
 static struct regulator_consumer_supply palmas_smps10_supply[] = {
        REGULATOR_SUPPLY("usb_vbus", "tegra-ehci.0"),
        REGULATOR_SUPPLY("vdd_vbrtr", NULL),
-       REGULATOR_SUPPLY("vdd_lcd", NULL),
        REGULATOR_SUPPLY("vdd_5v0", NULL),
 };
 
 static struct regulator_consumer_supply palmas_ldo2_supply[] = {
-       REGULATOR_SUPPLY("vdd_2v8_display", NULL),
+       REGULATOR_SUPPLY("avdd_lcd", NULL),
        REGULATOR_SUPPLY("vci_2v8", NULL),
 };
 
@@ -158,6 +160,9 @@ static struct regulator_consumer_supply palmas_ldo3_supply[] = {
 
 static struct regulator_consumer_supply palmas_ldo6_supply[] = {
        REGULATOR_SUPPLY("vdd_sensor_2v85", NULL),
+       REGULATOR_SUPPLY("vdd", "0-004c"),
+       REGULATOR_SUPPLY("vdd", "1-004c"),
+       REGULATOR_SUPPLY("vdd", "1-004d"),
 };
 
 static struct regulator_consumer_supply palmas_ldo8_supply[] = {
@@ -181,8 +186,8 @@ static struct regulator_consumer_supply palmas_ldousb_supply[] = {
 static struct regulator_consumer_supply palmas_regen1_supply[] = {
        REGULATOR_SUPPLY("vdd_3v3_sys", NULL),
        REGULATOR_SUPPLY("vdd", "4-004c"),
-       REGULATOR_SUPPLY("vdd", "0-004c"),
        REGULATOR_SUPPLY("vdd", "0-004d"),
+       REGULATOR_SUPPLY("usb_vbus", "tegra-ehci.2"),
 };
 
 static struct regulator_consumer_supply palmas_regen2_supply[] = {
@@ -214,11 +219,12 @@ static struct regulator_consumer_supply palmas_regen2_supply[] = {
 PALMAS_PDATA_INIT(smps12, 1200,  1500, NULL, 0, 0, 0);
 PALMAS_PDATA_INIT(smps3, 1800,  1800, NULL, 0, 0, 0);
 PALMAS_PDATA_INIT(smps45, 900,  1400, NULL, 1, 1, 0);
-PALMAS_PDATA_INIT(smps8, 1050,  1050, NULL, 0, 1, 1);
-PALMAS_PDATA_INIT(smps9, 2850,  2850, NULL, 0, 0, 0);
+PALMAS_PDATA_INIT(smps457, 900,  1400, NULL, 1, 1, 0);
+PALMAS_PDATA_INIT(smps8, 1050,  1050, NULL, 1, 1, 1);
+PALMAS_PDATA_INIT(smps9, 2800,  2800, NULL, 0, 0, 0);
 PALMAS_PDATA_INIT(smps10, 5000,  5000, NULL, 0, 0, 0);
 PALMAS_PDATA_INIT(ldo2, 2800,  2800, NULL, 0, 0, 1);
-PALMAS_PDATA_INIT(ldo3, 1200,  1200, NULL, 0, 0, 1);
+PALMAS_PDATA_INIT(ldo3, 1200,  1200, NULL, 1, 1, 1);
 PALMAS_PDATA_INIT(ldo6, 2850,  2850, NULL, 0, 0, 1);
 PALMAS_PDATA_INIT(ldo8, 900,  900, NULL, 1, 1, 1);
 PALMAS_PDATA_INIT(ldo9, 1800,  3300, NULL, 0, 0, 1);
@@ -232,7 +238,7 @@ static struct regulator_init_data *roth_reg_data[PALMAS_NUM_REGS] = {
        NULL,
        PALMAS_REG_PDATA(smps3),
        PALMAS_REG_PDATA(smps45),
-       NULL,
+       PALMAS_REG_PDATA(smps457),
        NULL,
        NULL,
        PALMAS_REG_PDATA(smps8),
@@ -270,7 +276,7 @@ PALMAS_REG_INIT(smps12, 0, 0, 0, 0, 0);
 PALMAS_REG_INIT(smps123, 0, 0, 0, 0, 0);
 PALMAS_REG_INIT(smps3, 0, 0, 0, 0, 0);
 PALMAS_REG_INIT(smps45, 0, PALMAS_EXT_CONTROL_NSLEEP, 0, 0, 0);
-PALMAS_REG_INIT(smps457, 0, 0, 0, 0, 0);
+PALMAS_REG_INIT(smps457, 0, PALMAS_EXT_CONTROL_NSLEEP, 0, 0, 0);
 PALMAS_REG_INIT(smps6, 0, 0, 0, 0, 0);
 PALMAS_REG_INIT(smps7, 0, 0, 0, 0, 0);
 PALMAS_REG_INIT(smps8, 0, 0, 0, 0, 0);
@@ -356,8 +362,8 @@ static struct regulator_consumer_supply fixed_reg_fan_5v0_supply[] = {
 };
 
 /* LCD_BL_EN GMI_AD10 */
-static struct regulator_consumer_supply fixed_reg_lcd_bl_supply[] = {
-       REGULATOR_SUPPLY("vdd_lcd_bl", NULL),
+static struct regulator_consumer_supply fixed_reg_lcd_bl_en_supply[] = {
+       REGULATOR_SUPPLY("vdd_lcd_bl_en", NULL),
 };
 
 /* Touch 3v3 GMI_AD13 */
@@ -368,17 +374,21 @@ static struct regulator_consumer_supply fixed_reg_ts_3v3_supply[] = {
 
 /* VDD_3V3_COM controled by Wifi */
 static struct regulator_consumer_supply fixed_reg_com_3v3_supply[] = {
-       REGULATOR_SUPPLY("vdd_3v3_com", NULL),
+       REGULATOR_SUPPLY("vdd_wl_pa", "bcm4329_wlan.1"),
+       REGULATOR_SUPPLY("vdd_bt_3v3", "reg-userspace-consumer.1"),
+       REGULATOR_SUPPLY("vdd_wl_pa", "reg-userspace-consumer.2"),
 };
 
 /* VDD_1v8_COM controled by Wifi */
 static struct regulator_consumer_supply fixed_reg_com_1v8_supply[] = {
-       REGULATOR_SUPPLY("vdd_1v8_com", NULL),
+       REGULATOR_SUPPLY("vddio", "bcm4329_wlan.1"),
+       REGULATOR_SUPPLY("vddio_bt_1v8", "reg-userspace-consumer.1"),
+       REGULATOR_SUPPLY("vddio", "reg-userspace-consumer.2"),
 };
 
 /* vdd_3v3_sd PH0 */
 static struct regulator_consumer_supply fixed_reg_sd_3v3_supply[] = {
-       REGULATOR_SUPPLY("vdd_3v3_sd", NULL),
+       REGULATOR_SUPPLY("vddio_sd_slot", "sdhci-tegra.2"),
 };
 
 /* Macro for defining fixed regulator sub device data */
@@ -427,7 +437,7 @@ FIXED_REG(1,        vdd_hdmi_5v0,   vdd_hdmi_5v0,
        palmas_rails(smps10),   0,      0,
        TEGRA_GPIO_PK1, false,  true,   0,      5000);
 
-FIXED_REG(2,   lcd_bl, lcd_bl,
+FIXED_REG(2,   lcd_bl_en,      lcd_bl_en,
        NULL,   0,      0,
        TEGRA_GPIO_PH2, false,  true,   0,      5000);
 
@@ -437,7 +447,7 @@ FIXED_REG(3,        ts_3v3, ts_3v3,
 
 FIXED_REG(4,   com_3v3,        com_3v3,
        palmas_rails(regen1),   0,      0,
-       -1,     false,  true,   0,      3300);
+       TEGRA_GPIO_PX7, false,  true,   0,      3300);
 
 FIXED_REG(5,   sd_3v3, sd_3v3,
        palmas_rails(regen1),   0,      0,
@@ -445,7 +455,7 @@ FIXED_REG(5,        sd_3v3, sd_3v3,
 
 FIXED_REG(6,   com_1v8,        com_1v8,
        palmas_rails(smps3),    0,      0,
-       -1,     false,  true,   0,      1800);
+       TEGRA_GPIO_PX1, false,  true,   0,      1800);
 
 /*
  * Creating the fixed regulator device tables
@@ -470,7 +480,7 @@ FIXED_REG(6,        com_1v8,        com_1v8,
 static struct platform_device *fixed_reg_devs_roth[] = {
        ADD_FIXED_REG(fan_5v0),
        ADD_FIXED_REG(vdd_hdmi_5v0),
-       ADD_FIXED_REG(lcd_bl),
+       ADD_FIXED_REG(lcd_bl_en),
        ADD_FIXED_REG(ts_3v3),
        ADD_FIXED_REG(com_3v3),
        ADD_FIXED_REG(sd_3v3),
@@ -686,8 +696,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
        .sensor_data = {
                [TSENSE_CPU0] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -696,8 +704,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_CPU1] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -706,8 +712,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_CPU2] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -716,8 +720,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_CPU3] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -726,8 +728,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_MEM0] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -736,8 +736,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_MEM1] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -746,8 +744,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_GPU] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,
@@ -756,8 +752,6 @@ static struct soctherm_platform_data roth_soctherm_data = {
                },
                [TSENSE_PLLX] = {
                        .enable = true,
-                       .therm_a = 570,
-                       .therm_b = -744,
                        .tall = 16300,
                        .tiddq = 1,
                        .ten_count = 1,