See patch

-- 
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
      Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: [email protected]http://www.coresystems.de/
Registergericht: Amtsgericht Freiburg • HRB 7656
Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866

Initial PCIe tuning: Enable Active State Power Management (ASPM)

 pciexp_device.c |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

Signed-off-by: Stefan Reinauer <[email protected]>

Index: src/devices/pciexp_device.c
===================================================================
--- src/devices/pciexp_device.c (revision 5016)
+++ src/devices/pciexp_device.c (working copy)
@@ -34,8 +34,16 @@
                /* error... */
                return;
        }
-       // printk_debug("PCIe: tuning %s\n", dev_path(dev));
-       /* TODO: Implement PCI Express tuning. */
+#ifdef CONFIG_PCIE_TUNING
+       printk_debug("PCIe: tuning %s\n", dev_path(dev));
+
+       // TODO make this depending on ASPM
+       /* Enable ASPM Role Based Error Reporting */
+       u32 reg32;
+       reg32 = pci_read_config32(dev, cap + PCI_EXP_DEVCAP);
+       reg32 |= PCI_EXP_DEVCAP_RBER;
+       pci_write_config32(dev, cap + PCI_EXP_DEVCAP, reg32);
+#endif
 }
 
 unsigned int pciexp_scan_bus(struct bus *bus, 
-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to