From 2720bb9037270b9480660bc238a8a15768811232 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Fri, 25 Jun 2021 15:25:01 -0600 Subject: [PATCH] Use PME virtual wire for suspend/resume --- src/board/system76/common/pmc.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/board/system76/common/pmc.c b/src/board/system76/common/pmc.c index 521418d..539bb22 100644 --- a/src/board/system76/common/pmc.c +++ b/src/board/system76/common/pmc.c @@ -71,8 +71,17 @@ bool pmc_sci(struct Pmc * pmc, uint8_t sci) { void pmc_swi(void) { #if EC_ESPI - // Use SCI interrupt - pmc_sci_interrupt(); + // Start PME interrupt + vw_set(&VW_PME_N, VWS_LOW); + + // Delay T_HOLD (value assumed) + delay_us(65); + + // Stop PME interrupt + vw_set(&VW_PME_N, VWS_HIGH); + + // Delay T_HOLD (value assumed) + delay_us(65); #else // EC_ESPI // Start SWI interrupt gpio_set(&SWI_N, false);