summaryrefslogtreecommitdiffstats
path: root/src/southbridge
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2023-11-16 14:17:02 +0100
committerFelix Held <felix-coreboot@felixheld.de>2023-11-18 16:36:33 +0000
commit58a5374d5fbf2ddccbd5a2b156ac1a4b44b91522 (patch)
tree99683e76ff1ecbb30a5aa63e2707c40b5c38e5ca /src/southbridge
parent61f22cff5916dc528690721aa3aaa88f9c6576ad (diff)
downloadcoreboot-58a5374d5fbf2ddccbd5a2b156ac1a4b44b91522.tar.gz
coreboot-58a5374d5fbf2ddccbd5a2b156ac1a4b44b91522.tar.bz2
coreboot-58a5374d5fbf2ddccbd5a2b156ac1a4b44b91522.zip
sb/intel/bd82x6x: assign PCIe root port ops in chipset devicetree
Since the PCIe root ports in the PCH are always on the same device functions, the device operations can be statically assigned in the devicetree and there's no need to bind the host bridge device operations to the PCI device during runtime via a list of PCI IDs. TEST=Lenovo X220 still boots to Linux and all PCIe devices on PCH are visible and working. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Tested-by: Patrick Rudolph <patrick.rudolph@9elements.com> Change-Id: I05bfe8db88fd54415f320f32ea147636ca4e0df8 Reviewed-on: https://review.coreboot.org/c/coreboot/+/79117 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Diffstat (limited to 'src/southbridge')
-rw-r--r--src/southbridge/intel/bd82x6x/pcie.c14
1 files changed, 1 insertions, 13 deletions
diff --git a/src/southbridge/intel/bd82x6x/pcie.c b/src/southbridge/intel/bd82x6x/pcie.c
index 325bfd2cd0e4..13f16f874bd9 100644
--- a/src/southbridge/intel/bd82x6x/pcie.c
+++ b/src/southbridge/intel/bd82x6x/pcie.c
@@ -258,7 +258,7 @@ static void pch_pciexp_scan_bridge(struct device *dev)
pch_pcie_pm_late(dev);
}
-static struct device_operations device_ops = {
+struct device_operations bd82x6x_pcie_rp_ops = {
.read_resources = pci_bus_read_resources,
.set_resources = pci_dev_set_resources,
.enable_resources = pci_bus_enable_resources,
@@ -268,15 +268,3 @@ static struct device_operations device_ops = {
.acpi_name = pch_pcie_acpi_name,
.ops_pci = &pci_dev_ops_pci,
};
-
-static const unsigned short pci_device_ids[] = { 0x1c10, 0x1c12, 0x1c14, 0x1c16,
- 0x1c18, 0x1c1a, 0x1c1c, 0x1c1e,
- 0x1e10, 0x1e12, 0x1e14, 0x1e16,
- 0x1e18, 0x1e1a, 0x1e1c, 0x1e1e,
- 0 };
-
-static const struct pci_driver pch_pcie __pci_driver = {
- .ops = &device_ops,
- .vendor = PCI_VID_INTEL,
- .devices = pci_device_ids,
-};