msm: board-8930: Add VBUS enable support and LDOs configuration
Add VBUS related configuration and required LDOs for HSUSB.
Change-Id: I0b287deb3ea4321735d24c9e6d7658878a494dad
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
diff --git a/arch/arm/mach-msm/board-8930-gpiomux.c b/arch/arm/mach-msm/board-8930-gpiomux.c
index 165e1a3..476ab93 100644
--- a/arch/arm/mach-msm/board-8930-gpiomux.c
+++ b/arch/arm/mach-msm/board-8930-gpiomux.c
@@ -155,7 +155,35 @@
.drv = GPIOMUX_DRV_2MA,
.pull = GPIOMUX_PULL_DOWN,
};
+#ifdef MSM8930_PHASE_2
+static struct gpiomux_setting hsusb_act_cfg = {
+ .func = GPIOMUX_FUNC_GPIO,
+ .drv = GPIOMUX_DRV_8MA,
+ .pull = GPIOMUX_PULL_UP,
+};
+static struct gpiomux_setting hsusb_sus_cfg = {
+ .func = GPIOMUX_FUNC_GPIO,
+ .drv = GPIOMUX_DRV_2MA,
+ .pull = GPIOMUX_PULL_DOWN,
+};
+static struct msm_gpiomux_config msm8930_hsusb_configs[] = {
+ {
+ .gpio = 63, /* HSUSB_EXTERNAL_5V_LDO_EN */
+ .settings = {
+ [GPIOMUX_ACTIVE] = &hsusb_act_cfg,
+ [GPIOMUX_SUSPENDED] = &hsusb_sus_cfg,
+ },
+ },
+ {
+ .gpio = 97, /* HSUSB_5V_EN */
+ .settings = {
+ [GPIOMUX_ACTIVE] = &hsusb_act_cfg,
+ [GPIOMUX_SUSPENDED] = &hsusb_sus_cfg,
+ },
+ },
+};
+#endif
#ifdef CONFIG_USB_EHCI_MSM_HSIC
static struct gpiomux_setting hsic_act_cfg = {
.func = GPIOMUX_FUNC_1,
@@ -635,9 +663,14 @@
ARRAY_SIZE(wcnss_5wire_interface));
if (machine_is_msm8930_mtp() || machine_is_msm8930_fluid() ||
- machine_is_msm8930_cdp())
+ machine_is_msm8930_cdp()) {
msm_gpiomux_install(hap_lvl_shft_config,
ARRAY_SIZE(hap_lvl_shft_config));
+#ifdef MSM8930_PHASE_2
+ msm_gpiomux_install(msm8930_hsusb_configs,
+ ARRAY_SIZE(msm8930_hsusb_configs));
+#endif
+ }
if (PLATFORM_IS_CHARM25())
msm_gpiomux_install(mdm_configs,