diff options
author | Preetham Chandru <pchandru@nvidia.com> | 2011-12-19 15:09:27 +0530 |
---|---|---|
committer | Varun Wadekar <vwadekar@nvidia.com> | 2011-12-30 10:51:58 +0530 |
commit | 93556c661e856495355ddbae5cc70a9e8e9adb89 (patch) | |
tree | 57b269a38e6eded25d6efa7018eb095bc3631ad0 /arch/arm/mach-tegra/board-cardhu-power.c | |
parent | c7627fe8d01e90c66a469dfee6088c020f881210 (diff) |
arm: tegra3: Enable vbus1 & vbus3 for PM311 & PM305.
Enabled vbus1 & vbus3 for PM311 & PM305 boards. In PM311 & PM305 the gpios
used to enable vbu1 and vbus3 are TEGRA_GPIO_PCC7 & TEGRA_GPIO_PCC6
Bug: 914114
Change-Id: Id52cf6399526cb135968370478b5ac1bd53fe364
Signed-off-by: Preetham Chandru R
Reviewed-on: http://git-master/r/72409
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-power.c')
-rw-r--r-- | arch/arm/mach-tegra/board-cardhu-power.c | 51 |
1 files changed, 49 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-power.c b/arch/arm/mach-tegra/board-cardhu-power.c index f82740280bf2..e38c83f9e919 100644 --- a/arch/arm/mach-tegra/board-cardhu-power.c +++ b/arch/arm/mach-tegra/board-cardhu-power.c @@ -732,6 +732,14 @@ GREG_INIT(17, en_vddio_vid_oc_pm269, en_vddio_vid_oc, "master_5v_switch", 0, 0, TEGRA_GPIO_PP2, false, 0, TEGRA_PINGROUP_DAP3_DOUT, enable_load_switch_rail, disable_load_switch_rail); +/* Specific to pm311 */ +GREG_INIT(15, en_usb1_vbus_oc_pm311, en_usb1_vbus_oc, "master_5v_switch", + 0, 0, TEGRA_GPIO_PCC7, false, 0, TEGRA_PINGROUP_GMI_RST_N, + enable_load_switch_rail, disable_load_switch_rail); +GREG_INIT(16, en_usb3_vbus_oc_pm311, en_usb3_vbus_oc, "master_5v_switch", + 0, 0, TEGRA_GPIO_PCC6, false, 0, TEGRA_PINGROUP_GMI_AD15, + enable_load_switch_rail, disable_load_switch_rail); + /* Specific to E1187/E1186/E1256 */ GREG_INIT(14, dis_5v_switch_e118x, dis_5v_switch, "vdd_5v0_sys", 0, 0, TEGRA_GPIO_PX2, true, 0, 0, 0, 0); @@ -833,6 +841,25 @@ GREG_INIT(6, en_vdd_pnl1_pm313, en_vdd_pnl1, "vdd_3v3_devices", ADD_GPIO_REG(en_usb3_vbus_oc_e118x), \ ADD_GPIO_REG(en_vddio_vid_oc_pm269), +#define PM311_GPIO_REG \ + ADD_GPIO_REG(en_5v_cp), \ + ADD_GPIO_REG(en_5v0), \ + ADD_GPIO_REG(en_ddr), \ + ADD_GPIO_REG(en_3v3_sys), \ + ADD_GPIO_REG(en_3v3_modem), \ + ADD_GPIO_REG(cam1_ldo_en), \ + ADD_GPIO_REG(cam2_ldo_en), \ + ADD_GPIO_REG(cam3_ldo_en), \ + ADD_GPIO_REG(en_vdd_com), \ + ADD_GPIO_REG(en_3v3_fuse_pm269), \ + ADD_GPIO_REG(en_3v3_emmc), \ + ADD_GPIO_REG(en_3v3_pex_hvdd_pm269), \ + ADD_GPIO_REG(en_1v8_cam), \ + ADD_GPIO_REG(dis_5v_switch_e118x), \ + ADD_GPIO_REG(en_usb1_vbus_oc_pm311), \ + ADD_GPIO_REG(en_usb3_vbus_oc_pm311), \ + ADD_GPIO_REG(en_vddio_vid_oc_pm269), + #define E1247_DISPLAY_GPIO_REG \ ADD_GPIO_REG(en_vdd_bl_pm269), \ ADD_GPIO_REG(en_vdd_pnl1_pm269), @@ -930,6 +957,18 @@ static struct gpio_switch_regulator_subdev_data *gswitch_subdevs_pm269_pm313[] = PM313_DISPLAY_GPIO_REG }; +/* Gpio switch regulator platform data for PM311*/ +static struct gpio_switch_regulator_subdev_data *gswitch_subdevs_pm311[] = { + PM311_GPIO_REG + E1247_DISPLAY_GPIO_REG +}; + +/* Gpio switch regulator platform data for PM11*/ +static struct gpio_switch_regulator_subdev_data *gswitch_subdevs_pm311_pm313[] = { + PM311_GPIO_REG + PM313_DISPLAY_GPIO_REG +}; + /* Gpio switch regulator platform data for E1291 A03*/ static struct gpio_switch_regulator_subdev_data *gswitch_subdevs_e1291_a03[] = { COMMON_GPIO_REG @@ -999,9 +1038,17 @@ int __init cardhu_gpio_switch_regulator_init(void) } break; - case BOARD_PM269: - case BOARD_PM305: case BOARD_PM311: + case BOARD_PM305: + gswitch_pdata.num_subdevs = ARRAY_SIZE(gswitch_subdevs_pm311); + gswitch_pdata.subdevs = gswitch_subdevs_pm311; + if (display_board_info.board_id == BOARD_DISPLAY_PM313) { + gswitch_pdata.num_subdevs = ARRAY_SIZE(gswitch_subdevs_pm311_pm313); + gswitch_pdata.subdevs = gswitch_subdevs_pm311_pm313; + } + break; + + case BOARD_PM269: case BOARD_E1257: gswitch_pdata.num_subdevs = ARRAY_SIZE(gswitch_subdevs_pm269); gswitch_pdata.subdevs = gswitch_subdevs_pm269; |