From 2313e54bf91761e61c777a699cf4047a5f4689cc Mon Sep 17 00:00:00 2001 From: Karthikeyan Ramasubramanian Date: Wed, 19 Aug 2020 12:40:25 -0600 Subject: mb/google/dedede: Add support for variant specific SMI sleep flow This support is required to power off certain components that exist only in certain variants. BUG=None TEST=Build and boot Boten to OS. Change-Id: Ib43ada784666919a4d26246a683dad7f3546fabb Signed-off-by: Karthikeyan Ramasubramanian Reviewed-on: https://review.coreboot.org/c/coreboot/+/44587 Tested-by: build bot (Jenkins) Reviewed-by: Peichao Wang Reviewed-by: Marco Chen Reviewed-by: Furquan Shaikh --- src/mainboard/google/dedede/smihandler.c | 6 ++++++ .../google/dedede/variants/baseboard/include/baseboard/variants.h | 3 +++ 2 files changed, 9 insertions(+) (limited to 'src/mainboard/google/dedede') diff --git a/src/mainboard/google/dedede/smihandler.c b/src/mainboard/google/dedede/smihandler.c index 20f0207edb..c50578da70 100644 --- a/src/mainboard/google/dedede/smihandler.c +++ b/src/mainboard/google/dedede/smihandler.c @@ -21,6 +21,8 @@ void mainboard_smi_sleep(u8 slp_typ) pads = variant_sleep_gpio_table(&num); gpio_configure_pads(pads, num); + variant_smi_sleep(slp_typ); + chromeec_smi_sleep(slp_typ, MAINBOARD_EC_S3_WAKE_EVENTS, MAINBOARD_EC_S5_WAKE_EVENTS); } @@ -41,3 +43,7 @@ void mainboard_smi_espi_handler(void) { chromeec_smi_process_events(); } + +void __weak variant_smi_sleep(u8 slp_typ) +{ +} diff --git a/src/mainboard/google/dedede/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/variants.h index bb41e45931..e7bfd868aa 100644 --- a/src/mainboard/google/dedede/variants/baseboard/include/baseboard/variants.h +++ b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/variants.h @@ -36,4 +36,7 @@ int variant_memory_sku(void); */ bool variant_mem_is_half_populated(void); +/* Allow each variants to customize SMI sleep flow. */ +void variant_smi_sleep(u8 slp_typ); + #endif /*__BASEBOARD_VARIANTS_H__ */ -- cgit v1.2.3