slippy/falco/peppy: Fix EC wake events in S5
The SMI handler code was setting S3 wake events when going into S5 and enabling a key press to wake the system. Change-Id: I6413ef1341e0149187df9f4f7e0c314d4c9e9c6e Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/65323 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/4459 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
This commit is contained in:
parent
727b5455fb
commit
4fb3a61fc6
3 changed files with 16 additions and 9 deletions
|
@ -107,6 +107,9 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
set_gpio(GPIO_WLAN_DISABLE_L, 0);
|
||||
/* Disable LTE */
|
||||
set_gpio(GPIO_LTE_DISABLE_L, 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
break;
|
||||
case 5:
|
||||
if (smm_get_gnvs()->s5u0 == 0)
|
||||
|
@ -120,6 +123,9 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
set_gpio(GPIO_WLAN_DISABLE_L, 0);
|
||||
/* Disable LTE */
|
||||
set_gpio(GPIO_LTE_DISABLE_L, 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S5_WAKE_EVENTS);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -129,9 +135,6 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
|
||||
/* Clear pending events that may trigger immediate wake */
|
||||
while (google_chromeec_get_event() != 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
}
|
||||
|
||||
#define APMC_FINALIZE 0xcb
|
||||
|
|
|
@ -106,6 +106,9 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
|
||||
set_gpio(GPIO_PP3300_CODEC_EN, 0);
|
||||
set_gpio(GPIO_WLAN_DISABLE_L, 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
break;
|
||||
case 5:
|
||||
if (smm_get_gnvs()->s5u0 == 0)
|
||||
|
@ -117,6 +120,9 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
|
||||
set_gpio(GPIO_PP3300_CODEC_EN, 0);
|
||||
set_gpio(GPIO_WLAN_DISABLE_L, 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S5_WAKE_EVENTS);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -126,9 +132,6 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
|
||||
/* Clear pending events that may trigger immediate wake */
|
||||
while (google_chromeec_get_event() != 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
}
|
||||
|
||||
#define APMC_FINALIZE 0xcb
|
||||
|
|
|
@ -98,6 +98,8 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
if (smm_get_gnvs()->s3u1 == 0)
|
||||
google_chromeec_set_usb_charge_mode(
|
||||
1, USB_CHARGE_MODE_DISABLED);
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
break;
|
||||
case 5:
|
||||
if (smm_get_gnvs()->s5u0 == 0)
|
||||
|
@ -106,6 +108,8 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
if (smm_get_gnvs()->s5u1 == 0)
|
||||
google_chromeec_set_usb_charge_mode(
|
||||
1, USB_CHARGE_MODE_DISABLED);
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S5_WAKE_EVENTS);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -115,9 +119,6 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
|
||||
/* Clear pending events that may trigger immediate wake */
|
||||
while (google_chromeec_get_event() != 0);
|
||||
|
||||
/* Enable wake events */
|
||||
google_chromeec_set_wake_mask(MAINBOARD_EC_S3_WAKE_EVENTS);
|
||||
}
|
||||
|
||||
#define APMC_FINALIZE 0xcb
|
||||
|
|
Loading…
Reference in a new issue