From a91eb90d44bccd0a785b4659ebbeae5da08eea83 Mon Sep 17 00:00:00 2001 From: Raul E Rangel Date: Wed, 24 Feb 2021 16:26:34 -0700 Subject: soc/amd/common/blocks/lpc: Explicitly disable serial IRQ The serirq enable bit defaults to true, so if we want it disabled, we need to explicitly disable it. BUG=b:180631748 TEST=Boot majolica and see spurious IRQ 9 gone. Signed-off-by: Raul E Rangel Change-Id: I7f1e18f836f29cb75334dd88c91ad047f5bdfb10 Reviewed-on: https://review.coreboot.org/c/coreboot/+/51077 Tested-by: build bot (Jenkins) Reviewed-by: Felix Held Reviewed-by: Marshall Dawson --- src/soc/amd/common/block/lpc/lpc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/soc/amd/common/block/lpc/lpc.c b/src/soc/amd/common/block/lpc/lpc.c index 1d019a3403..2586ba95c5 100644 --- a/src/soc/amd/common/block/lpc/lpc.c +++ b/src/soc/amd/common/block/lpc/lpc.c @@ -28,7 +28,9 @@ static void setup_serirq(void) u8 byte; /* Set up SERIRQ, enable continuous mode */ - byte = (PM_SERIRQ_NUM_BITS_21 | PM_SERIRQ_ENABLE); + byte = PM_SERIRQ_NUM_BITS_21; + if (!CONFIG(SOC_AMD_COMMON_BLOCK_USE_ESPI)) + byte |= PM_SERIRQ_ENABLE; if (!CONFIG(SERIRQ_CONTINUOUS_MODE)) byte |= PM_SERIRQ_MODE; @@ -91,8 +93,7 @@ static void lpc_init(struct device *dev) /* Initialize i8254 timers */ setup_i8254(); - if (!CONFIG(SOC_AMD_COMMON_BLOCK_USE_ESPI)) - setup_serirq(); + setup_serirq(); } static void lpc_read_resources(struct device *dev) -- cgit v1.2.3