From 47cb8b17abe9a393e4be948d23ca524fc8175f7e Mon Sep 17 00:00:00 2001 From: Jeremy Compostella Date: Thu, 26 Oct 2023 16:02:47 -0700 Subject: [PATCH] soc/intel/meteorlake: Set DTT PCI device IRQ to INT_A/PIRQ_A The Dynamic Tuning Technology (DTT) device IRQ is not programmable and is INT_A/PIRQ_A (IRQ 16). Reference: Meteor Lake U/H and U Type4 External Design Specification External Design Document (657165) TEST=Linux driver successfully uses IRQ 16 on rex. Without this patch it was binding IRQ 18 but interrupts were going to IRQ 16. Change-Id: I2cbb9dd41f27c40a29346be325bb9c46d1061afb Signed-off-by: Jeremy Compostella Reviewed-on: https://review.coreboot.org/c/coreboot/+/78953 Tested-by: build bot (Jenkins) Reviewed-by: Subrata Banik --- src/soc/intel/meteorlake/fsp_params.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/soc/intel/meteorlake/fsp_params.c b/src/soc/intel/meteorlake/fsp_params.c index 5ec9cf423e..c3c478544e 100644 --- a/src/soc/intel/meteorlake/fsp_params.c +++ b/src/soc/intel/meteorlake/fsp_params.c @@ -63,7 +63,9 @@ static const struct slot_irq_constraints irq_constraints[] = { { .slot = PCI_DEV_SLOT_DPTF, .fns = { - ANY_PIRQ(PCI_DEVFN_DPTF), + /* Dynamic Tuning Technology (DTT) device IRQ is not + programmable and is INT_A/PIRQ_A (IRQ 16) */ + FIXED_INT_PIRQ(PCI_DEVFN_DPTF, PCI_INT_A, PIRQ_A), }, }, {