peppy: Drive WLAN_DISABLE_L / BT_ON low in S3 and S5.
When the board is in S3 and S5 the WLAN_DISABLE_L signal
can leak power into the WLAN power well since the GPIO
controlling WLAN_DISABLE_L is in the suspend well. Therefore,
drive WLAN_DISABLE_L low to avoid the power leak.
This is a clone of a Falco change:
I1a0df80dd47fdbd535aca7a9d49253794c480606.
Change-Id: I625dfbb228d1f293b880a52dfe552842d55a17d1
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/63220
Reviewed-by: Dave Parker <dparker@chromium.org>
Reviewed-by: Marc Jones <marc.jones@se-eng.com>
Reviewed-on: http://review.coreboot.org/4383
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
diff --git a/src/mainboard/google/peppy/smihandler.c b/src/mainboard/google/peppy/smihandler.c
index 16e8f64..07cfee3 100644
--- a/src/mainboard/google/peppy/smihandler.c
+++ b/src/mainboard/google/peppy/smihandler.c
@@ -34,6 +34,8 @@
/* Codec enable: GPIO45 */
#define GPIO_PP3300_CODEC_EN 45
+/* WLAN / BT enable: GPIO46 */
+#define GPIO_WLAN_DISABLE_L 46
int mainboard_io_trap_handler(int smif)
{
@@ -103,6 +105,7 @@
1, USB_CHARGE_MODE_DISABLED);
set_gpio(GPIO_PP3300_CODEC_EN, 0);
+ set_gpio(GPIO_WLAN_DISABLE_L, 0);
break;
case 5:
if (smm_get_gnvs()->s5u0 == 0)
@@ -113,6 +116,7 @@
1, USB_CHARGE_MODE_DISABLED);
set_gpio(GPIO_PP3300_CODEC_EN, 0);
+ set_gpio(GPIO_WLAN_DISABLE_L, 0);
break;
}