mb/google/guybrush: Fix EC SCI configuration
This change fixes two problems:
1) We had the enum values for .direction and .level swapped. The naming
is very confusing...
2) ESPI_SYS is not a good event to use for EC SCI. It is a level/low
event that is only cleared by reading the eSPI status register 0x9C.
Cezanne has added a new event source that directly exposes the SCI bit.
This is the correct event source to use for EC SCI.
BUG=b:186045622, b:181139095
TEST=`lpc sci` on EC console and see /proc/interrupts increase by 1
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Change-Id: I764b9ec202376d5124331a320767cbf79371dc07
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52673
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
diff --git a/src/mainboard/google/guybrush/ec.c b/src/mainboard/google/guybrush/ec.c
index 5a0bc1b..67fdda1 100644
--- a/src/mainboard/google/guybrush/ec.c
+++ b/src/mainboard/google/guybrush/ec.c
@@ -9,10 +9,10 @@
static const struct sci_source espi_sci_sources[] = {
{
- .scimap = SMITYPE_ESPI_SYS,
+ .scimap = SMITYPE_ESPI_SCI_B,
.gpe = EC_SCI_GPI,
- .direction = SMI_SCI_LVL,
- .level = SMI_SCI_LVL_HIGH
+ .direction = SMI_SCI_LVL_HIGH, /* enum smi_sci_lvl */
+ .level = SMI_SCI_EDG, /* enum smi_sci_dir */
}
};