diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mainboard/google/octopus/smihandler.c | 7 | ||||
-rw-r--r-- | src/mainboard/google/octopus/variants/baseboard/include/baseboard/variants.h | 3 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/mainboard/google/octopus/smihandler.c b/src/mainboard/google/octopus/smihandler.c index 27928eec0f..855c9825e8 100644 --- a/src/mainboard/google/octopus/smihandler.c +++ b/src/mainboard/google/octopus/smihandler.c @@ -39,6 +39,8 @@ void mainboard_smi_sleep(u8 slp_typ) pads = variant_sleep_gpio_table(&num, slp_typ); 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); } @@ -60,3 +62,8 @@ void elog_gsmi_cb_mainboard_log_wake_source(void) google_chromeec_log_events(MAINBOARD_EC_LOG_EVENTS | MAINBOARD_EC_S0IX_WAKE_EVENTS); } + +void __weak variant_smi_sleep(u8 slp_typ) +{ + /* Leave for the variant to implement if necessary. */ +} diff --git a/src/mainboard/google/octopus/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/octopus/variants/baseboard/include/baseboard/variants.h index 33a8f52527..140beb4649 100644 --- a/src/mainboard/google/octopus/variants/baseboard/include/baseboard/variants.h +++ b/src/mainboard/google/octopus/variants/baseboard/include/baseboard/variants.h @@ -51,4 +51,7 @@ void variant_update_devtree(struct device *dev); /* Get no touchscreen SKU ID. */ bool no_touchscreen_sku(uint32_t sku_id); +/* allow each variants to customize smi sleep flow. */ +void variant_smi_sleep(u8 slp_typ); + #endif /* BASEBOARD_VARIANTS_H */ |