<p>Subrata Banik has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/29628">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">soc/intel/cannonlake: Make static IRQ mapping for CNP PCH pci devices<br><br>Since PIRQ->IRQ mapping registers PxRC are not available after FSP-S call<br>due to PCH requirement change from CNP PCH onwards, hence making static IRQ<br>mapping for pci_irqs.asl and pcie.asl<br><br>Also remove unused irqlinks.asl from soc/intel/cannonlake/acpi/<br><br>Change-Id: I35e2ed150a1db195fc9ce13897e65b23fc8b7ca1<br>Signed-off-by: Subrata Banik <subrata.banik@intel.com><br>---<br>D src/soc/intel/cannonlake/acpi/irqlinks.asl<br>M src/soc/intel/cannonlake/acpi/pci_irqs.asl<br>M src/soc/intel/cannonlake/acpi/pcie.asl<br>M src/soc/intel/cannonlake/acpi/southbridge.asl<br>4 files changed, 51 insertions(+), 332 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/28/29628/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/soc/intel/cannonlake/acpi/irqlinks.asl b/src/soc/intel/cannonlake/acpi/irqlinks.asl</span><br><span>deleted file mode 100644</span><br><span>index 0403ea0..0000000</span><br><span>--- a/src/soc/intel/cannonlake/acpi/irqlinks.asl</span><br><span>+++ /dev/null</span><br><span>@@ -1,282 +0,0 @@</span><br><span style="color: hsl(0, 100%, 40%);">-/*</span><br><span style="color: hsl(0, 100%, 40%);">- * This file is part of the coreboot project.</span><br><span style="color: hsl(0, 100%, 40%);">- *</span><br><span style="color: hsl(0, 100%, 40%);">- * Copyright (C) 2018 Intel Corporation.</span><br><span style="color: hsl(0, 100%, 40%);">- *</span><br><span style="color: hsl(0, 100%, 40%);">- * This program is free software; you can redistribute it and/or modify</span><br><span style="color: hsl(0, 100%, 40%);">- * it under the terms of the GNU General Public License as published by</span><br><span style="color: hsl(0, 100%, 40%);">- * the Free Software Foundation; version 2 of the License.</span><br><span style="color: hsl(0, 100%, 40%);">- *</span><br><span style="color: hsl(0, 100%, 40%);">- * This program is distributed in the hope that it will be useful,</span><br><span style="color: hsl(0, 100%, 40%);">- * but WITHOUT ANY WARRANTY; without even the implied warranty of</span><br><span style="color: hsl(0, 100%, 40%);">- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span><br><span style="color: hsl(0, 100%, 40%);">- * GNU General Public License for more details.</span><br><span style="color: hsl(0, 100%, 40%);">- */</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-/*</span><br><span style="color: hsl(0, 100%, 40%);">- * PIRQ routing control is in PCR ITSS region.</span><br><span style="color: hsl(0, 100%, 40%);">- *</span><br><span style="color: hsl(0, 100%, 40%);">- * Due to what appears to be an ACPI interpreter bug we do not use</span><br><span style="color: hsl(0, 100%, 40%);">- * the PCRB() method here as it may not be defined yet because the method</span><br><span style="color: hsl(0, 100%, 40%);">- * definiton depends on the order of the include files in pch.asl.</span><br><span style="color: hsl(0, 100%, 40%);">- *</span><br><span style="color: hsl(0, 100%, 40%);">- * https://bugs.acpica.org/show_bug.cgi?id=1201</span><br><span style="color: hsl(0, 100%, 40%);">- */</span><br><span style="color: hsl(0, 100%, 40%);">-OperationRegion (ITSS, SystemMemory,</span><br><span style="color: hsl(0, 100%, 40%);">-             Add (PCR_ITSS_PIRQA_ROUT,</span><br><span style="color: hsl(0, 100%, 40%);">-                    Add (CONFIG_PCR_BASE_ADDRESS,</span><br><span style="color: hsl(0, 100%, 40%);">-                        ShiftLeft (PID_ITSS, PCR_PORTID_SHIFT))), 8)</span><br><span style="color: hsl(0, 100%, 40%);">-Field (ITSS, ByteAcc, NoLock, Preserve)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">- PIRA, 8,        /* PIRQA Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRB, 8,        /* PIRQB Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRC, 8,        /* PIRQC Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRD, 8,        /* PIRQD Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRE, 8,        /* PIRQE Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRF, 8,        /* PIRQF Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRG, 8,        /* PIRQG Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-     PIRH, 8,        /* PIRQH Routing Control */</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Name (IREN, 0x80)   /* Interrupt Routing Enable */</span><br><span style="color: hsl(0, 100%, 40%);">-Name (IREM, 0x0f) /* Interrupt Routing Mask */</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKA)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-      Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 1)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLA, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLA, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRA, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLA)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRA, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKB)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 2)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLB, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {10}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLB, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRB, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLB)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRB, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKC)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 3)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLC, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLC, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRC, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLC)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRC, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKD)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 4)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLD, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLD, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRD, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLD)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRD, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKE)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 5)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLE, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLE, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRE, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLE)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRE, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKF)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 6)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLF, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLF, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRF, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLF)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRF, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKG)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 7)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLG, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLG, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRG, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLG)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRG, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-Device (LNKH)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-        Name (_HID, EISAID ("PNP0C0F"))</span><br><span style="color: hsl(0, 100%, 40%);">-       Name (_UID, 8)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-  Method (_CRS, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               Name (RTLH, ResourceTemplate ()</span><br><span style="color: hsl(0, 100%, 40%);">-         {</span><br><span style="color: hsl(0, 100%, 40%);">-                       IRQ (Level, ActiveLow, Shared) {11}</span><br><span style="color: hsl(0, 100%, 40%);">-             })</span><br><span style="color: hsl(0, 100%, 40%);">-              CreateWordField (RTLH, 1, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-         Store (Zero, IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              /* Set the bit from PIRQ Routing Register */</span><br><span style="color: hsl(0, 100%, 40%);">-            ShiftLeft (1, And (^^PIRH, ^^IREM), IRQ0)</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-               Return (RTLH)</span><br><span style="color: hsl(0, 100%, 40%);">-   }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       Method (_STA, 0, Serialized)</span><br><span style="color: hsl(0, 100%, 40%);">-    {</span><br><span style="color: hsl(0, 100%, 40%);">-               If (And (^^PIRH, ^^IREN)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     Return (0x9)</span><br><span style="color: hsl(0, 100%, 40%);">-            } Else {</span><br><span style="color: hsl(0, 100%, 40%);">-                        Return (0xb)</span><br><span style="color: hsl(0, 100%, 40%);">-            }</span><br><span style="color: hsl(0, 100%, 40%);">-       }</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span>diff --git a/src/soc/intel/cannonlake/acpi/pci_irqs.asl b/src/soc/intel/cannonlake/acpi/pci_irqs.asl</span><br><span>index d346ce2..accfdb9 100644</span><br><span>--- a/src/soc/intel/cannonlake/acpi/pci_irqs.asl</span><br><span>+++ b/src/soc/intel/cannonlake/acpi/pci_irqs.asl</span><br><span>@@ -83,52 +83,56 @@</span><br><span> })</span><br><span> </span><br><span> Name (PICN, Package () {</span><br><span style="color: hsl(120, 100%, 40%);">+   /*</span><br><span style="color: hsl(120, 100%, 40%);">+     * If the setting change in soc_pch_pirq_init(), then</span><br><span style="color: hsl(120, 100%, 40%);">+  * please make the same static IRQ changes here as well.</span><br><span style="color: hsl(120, 100%, 40%);">+       */</span><br><span>  /* D31: cAVS, SMBus, GbE, Nothpeak */</span><br><span style="color: hsl(0, 100%, 40%);">-   Package () { 0x001FFFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001FFFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001FFFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001FFFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        /* D32: Can't use PIC*/</span><br><span style="color: hsl(120, 100%, 40%);">+   Package () { 0x001FFFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001FFFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001FFFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001FFFFF, 3, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  /* D30: Can't use PIC*/</span><br><span>  /* D29: PCI Express Port 9-16 */</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001DFFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001DFFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001DFFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001DFFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x001DFFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001DFFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001DFFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001DFFFF, 3, 0, 11 },</span><br><span>         /* D28: PCI Express Port 1-8 */</span><br><span style="color: hsl(0, 100%, 40%);">- Package () { 0x001CFFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001CFFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001CFFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x001CFFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x001CFFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001CFFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001CFFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x001CFFFF, 3, 0, 11 },</span><br><span>         /* D25: Can't use PIC*/</span><br><span>  /* D23 */</span><br><span style="color: hsl(0, 100%, 40%);">-       Package () { 0x0017FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0017FFFF, 0, 0, 11 },</span><br><span>         /* D22: CSME (HECI, IDE-R, KT redirection */</span><br><span style="color: hsl(0, 100%, 40%);">-    Package () { 0x0016FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0016FFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0016FFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0016FFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0016FFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0016FFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0016FFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0016FFFF, 3, 0, 11 },</span><br><span>         /* D21: Can't use PIC*/</span><br><span>  /* D20: xHCI, OTG, SRAM, CNVi WiFi */</span><br><span style="color: hsl(0, 100%, 40%);">-   Package () { 0x0014FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0014FFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0014FFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0014FFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0014FFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0014FFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0014FFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0014FFFF, 3, 0, 11 },</span><br><span>         /* D19: Can't use PIC*/</span><br><span>  /* Thermal */</span><br><span style="color: hsl(0, 100%, 40%);">-   Package () { 0x0012FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0012FFFF, 0, 0, 11 },</span><br><span>         /* P.E.G. Root Port D1F0 */</span><br><span style="color: hsl(0, 100%, 40%);">-     Package () { 0x0001FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0001FFFF, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0001FFFF, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-        Package () { 0x0001FFFF, 3, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0001FFFF, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0001FFFF, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0001FFFF, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+  Package () { 0x0001FFFF, 3, 0, 11 },</span><br><span>         /* SA IGFX Device */</span><br><span style="color: hsl(0, 100%, 40%);">-    Package () { 0x0002FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0002FFFF, 0, 0, 11 },</span><br><span>         /* SA Thermal Device */</span><br><span style="color: hsl(0, 100%, 40%);">- Package () { 0x0004FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0004FFFF, 0, 0, 11 },</span><br><span>         /* SA IPU Device */</span><br><span style="color: hsl(0, 100%, 40%);">-     Package () { 0x0005FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0005FFFF, 0, 0, 11 },</span><br><span>         /* SA GNA Device */</span><br><span style="color: hsl(0, 100%, 40%);">-     Package () { 0x0008FFFF, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(120, 100%, 40%);">+      Package () { 0x0008FFFF, 0, 0, 11 },</span><br><span> })</span><br><span> </span><br><span> Method (_PRT)</span><br><span>diff --git a/src/soc/intel/cannonlake/acpi/pcie.asl b/src/soc/intel/cannonlake/acpi/pcie.asl</span><br><span>index 69e16ca..9d4a65c 100644</span><br><span>--- a/src/soc/intel/cannonlake/acpi/pcie.asl</span><br><span>+++ b/src/soc/intel/cannonlake/acpi/pcie.asl</span><br><span>@@ -24,10 +24,10 @@</span><br><span>           Package () { 0x0000ffff, 2, 0, 18 },</span><br><span>                 Package () { 0x0000ffff, 3, 0, 19 } })</span><br><span>       Name (IQAP, Package () {</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 0, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 1, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 2, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 3, \_SB.PCI0.LNKD, 0 } })</span><br><span style="color: hsl(120, 100%, 40%);">+            Package () { 0x0000ffff, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 1, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 3, 0, 11 } })</span><br><span> </span><br><span>   /* Interrupt Map INTA->INTB, INTB->INTC, INTC->INTD, INTD->INTA */</span><br><span>       Name (IQBA, Package () {</span><br><span>@@ -36,10 +36,10 @@</span><br><span>               Package () { 0x0000ffff, 2, 0, 19 },</span><br><span>                 Package () { 0x0000ffff, 3, 0, 16 } })</span><br><span>       Name (IQBP, Package () {</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 0, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 1, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 2, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 3, \_SB.PCI0.LNKA, 0 } })</span><br><span style="color: hsl(120, 100%, 40%);">+            Package () { 0x0000ffff, 0, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 1, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 3, 0, 11 } })</span><br><span> </span><br><span>   /* Interrupt Map INTA->INTC, INTB->INTD, INTC->INTA, INTD->INTB */</span><br><span>       Name (IQCA, Package () {</span><br><span>@@ -48,10 +48,10 @@</span><br><span>               Package () { 0x0000ffff, 2, 0, 16 },</span><br><span>                 Package () { 0x0000ffff, 3, 0, 17 } })</span><br><span>       Name (IQCP, Package () {</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 0, \_SB.PCI0.LNKC, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 1, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 2, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 3, \_SB.PCI0.LNKB, 0 } })</span><br><span style="color: hsl(120, 100%, 40%);">+            Package () { 0x0000ffff, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 1, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 2, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 3, 0, 10 } })</span><br><span> </span><br><span>   /* Interrupt Map INTA->INTD, INTB->INTA, INTC->INTB, INTD->INTC */</span><br><span>       Name (IQDA, Package () {</span><br><span>@@ -60,10 +60,10 @@</span><br><span>               Package () { 0x0000ffff, 2, 0, 17 },</span><br><span>                 Package () { 0x0000ffff, 3, 0, 18 } })</span><br><span>       Name (IQDP, Package () {</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 0, \_SB.PCI0.LNKD, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 1, \_SB.PCI0.LNKA, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 2, \_SB.PCI0.LNKB, 0 },</span><br><span style="color: hsl(0, 100%, 40%);">-                Package () { 0x0000ffff, 3, \_SB.PCI0.LNKC, 0 } })</span><br><span style="color: hsl(120, 100%, 40%);">+            Package () { 0x0000ffff, 0, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 1, 0, 11 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 2, 0, 10 },</span><br><span style="color: hsl(120, 100%, 40%);">+          Package () { 0x0000ffff, 3, 0, 11 } })</span><br><span> </span><br><span>   Switch (ToInteger (Arg0))</span><br><span>    {</span><br><span>diff --git a/src/soc/intel/cannonlake/acpi/southbridge.asl b/src/soc/intel/cannonlake/acpi/southbridge.asl</span><br><span>index eabff66..dfa2975 100644</span><br><span>--- a/src/soc/intel/cannonlake/acpi/southbridge.asl</span><br><span>+++ b/src/soc/intel/cannonlake/acpi/southbridge.asl</span><br><span>@@ -20,9 +20,6 @@</span><br><span> #include <soc/itss.h></span><br><span> #include <soc/pcr_ids.h></span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-/* Interrupt Routing */</span><br><span style="color: hsl(0, 100%, 40%);">-#include "irqlinks.asl"</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> /* PCI IRQ assignment */</span><br><span> #include "pci_irqs.asl"</span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/29628">change 29628</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/29628"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I35e2ed150a1db195fc9ce13897e65b23fc8b7ca1 </div>
<div style="display:none"> Gerrit-Change-Number: 29628 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Subrata Banik <subrata.banik@intel.com> </div>