summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/trogdor/gpio.inc1
-rw-r--r--power/sc7180.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/board/trogdor/gpio.inc b/board/trogdor/gpio.inc
index 0f23000b70..ef93c3b25e 100644
--- a/board/trogdor/gpio.inc
+++ b/board/trogdor/gpio.inc
@@ -60,6 +60,7 @@ GPIO(EC_BATT_PRES_ODL, PIN(E, 5), GPIO_INPUT) /* Battery Present */
GPIO(PMIC_RESIN_L, PIN(3, 2), GPIO_ODR_HIGH | GPIO_SEL_1P8V) /* PMIC reset trigger */
GPIO(PMIC_KPD_PWR_ODL, PIN(D, 6), GPIO_ODR_HIGH | GPIO_SEL_1P8V) /* PMIC power button */
GPIO(EC_INT_L, PIN(A, 2), GPIO_ODR_HIGH) /* Interrupt line between AP and EC */
+GPIO(QSIP_ON, PIN(5, 0), GPIO_OUT_LOW) /* Not used, for non-switchcap testing */
/* Power enables */
GPIO(SWITCHCAP_ON, PIN(D, 5), GPIO_OUT_LOW) /* Enable switch cap */
diff --git a/power/sc7180.c b/power/sc7180.c
index 886f22078b..d31728bfc7 100644
--- a/power/sc7180.c
+++ b/power/sc7180.c
@@ -514,6 +514,9 @@ static void power_off(void)
set_system_power(0);
}
+ /* Turn off the load switch */
+ gpio_set_level(GPIO_QSIP_ON, 0);
+
/* Turn off the 3.3V and 5V rails. */
gpio_set_level(GPIO_EN_PP3300_A, 0);
#ifdef CONFIG_POWER_PP5000_CONTROL
@@ -565,6 +568,12 @@ static int power_on(void)
gpio_set_level(GPIO_EN_PP5000, 1);
#endif /* defined(CONFIG_POWER_PP5000_CONTROL) */
+ /*
+ * Enable the load switch. The load switch is redundant.
+ * But leaving it off consumes power.
+ */
+ gpio_set_level(GPIO_QSIP_ON, 1);
+
ret = set_system_power(1);
if (ret != EC_SUCCESS)
return ret;