summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Murphy <jpmurphy@google.com>2022-04-18 13:19:23 -0600
committerFelix Held <felix-coreboot@felixheld.de>2022-04-27 11:33:48 +0000
commit3f62507de02d29df27e730eda7b01f142d0f47c1 (patch)
tree5c7259a7782b639d6398712017b5689268aab345
parent5a5de338e6c8cf15f9f5481821cd15729bd8e1f1 (diff)
mb/google/skyrim: Fix eSPI configuration
* Use GPE 24 since it doesn't conflict with any existing GEVENTS. * Remove IRQ 12 mapping since it's not used. * Unmask IRQ1 in PM registers. * Use the new SMITYPE_ESPI_SCI_B SCI. BUG=b:227282870 TEST=Build and boot to OS in Skyrim. Signed-off-by: Jon Murphy <jpmurphy@google.com> Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: I7e9816d67500365ed1d2ee39ef184a1f60321ca1 Reviewed-on: https://review.coreboot.org/c/coreboot/+/63704 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
-rw-r--r--src/mainboard/google/skyrim/ec.c4
-rw-r--r--src/mainboard/google/skyrim/mainboard.c5
-rw-r--r--src/mainboard/google/skyrim/variants/baseboard/devicetree.cb2
-rw-r--r--src/mainboard/google/skyrim/variants/baseboard/include/baseboard/ec.h2
4 files changed, 9 insertions, 4 deletions
diff --git a/src/mainboard/google/skyrim/ec.c b/src/mainboard/google/skyrim/ec.c
index bc29833713..05994eb4c2 100644
--- a/src/mainboard/google/skyrim/ec.c
+++ b/src/mainboard/google/skyrim/ec.c
@@ -10,8 +10,8 @@
static const struct sci_source espi_sci_sources[] = {
{
- .scimap = SMITYPE_ESPI_SYS,
- .gpe = GEVENT_3,
+ .scimap = SMITYPE_ESPI_SCI_B,
+ .gpe = EC_SCI_GPI,
.direction = SMI_SCI_LVL_HIGH, /* enum smi_sci_lvl */
.level = SMI_SCI_EDG, /* enum smi_sci_dir */
}
diff --git a/src/mainboard/google/skyrim/mainboard.c b/src/mainboard/google/skyrim/mainboard.c
index 7c89f49b48..cb91555f71 100644
--- a/src/mainboard/google/skyrim/mainboard.c
+++ b/src/mainboard/google/skyrim/mainboard.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
+#include <amdblocks/acpimmio.h>
#include <amdblocks/amd_pci_util.h>
#include <baseboard/variants.h>
#include <console/console.h>
@@ -111,6 +112,10 @@ static void mainboard_enable(struct device *dev)
init_tables();
/* Initialize the PIRQ data structures for consumption */
pirq_setup();
+
+ /* TODO: b/184678786 - Move into espi_config */
+ /* Unmask eSPI IRQ 1 (Keyboard) */
+ pm_write32(PM_ESPI_INTR_CTRL, PM_ESPI_DEV_INTR_MASK & ~(BIT(1)));
}
struct chip_operations mainboard_ops = {
diff --git a/src/mainboard/google/skyrim/variants/baseboard/devicetree.cb b/src/mainboard/google/skyrim/variants/baseboard/devicetree.cb
index a6894eefa4..f0d103957d 100644
--- a/src/mainboard/google/skyrim/variants/baseboard/devicetree.cb
+++ b/src/mainboard/google/skyrim/variants/baseboard/devicetree.cb
@@ -35,7 +35,7 @@ chip soc/amd/sabrina
.oob_ch_en = 0,
.flash_ch_en = 0,
- .vw_irq_polarity = ESPI_VW_IRQ_LEVEL_HIGH(1) | ESPI_VW_IRQ_LEVEL_HIGH(12),
+ .vw_irq_polarity = ESPI_VW_IRQ_LEVEL_HIGH(1),
}"
register "i2c_scl_reset" = "GPIO_I2C0_SCL | GPIO_I2C1_SCL |
diff --git a/src/mainboard/google/skyrim/variants/baseboard/include/baseboard/ec.h b/src/mainboard/google/skyrim/variants/baseboard/include/baseboard/ec.h
index d66d3cb775..f10146dafc 100644
--- a/src/mainboard/google/skyrim/variants/baseboard/include/baseboard/ec.h
+++ b/src/mainboard/google/skyrim/variants/baseboard/include/baseboard/ec.h
@@ -52,7 +52,7 @@
*/
/* Set GPI for SCI */
-#define EC_SCI_GPI GEVENT_3 /* eSPI system event -> GPE 3 */
+#define EC_SCI_GPI GEVENT_24 /* eSPI system event -> GPE 24 */
/* Enable LID switch and provide wake pin for EC */
#define EC_ENABLE_LID_SWITCH