View | Details | Raw Unified | Return to bug 10231 | Differences between
and this patch

Collapse All | Expand All

(-)a/drivers/pci/quirks.c (+26 lines)
Lines 33-38 int pcie_mch_quirk; Link Here
33
EXPORT_SYMBOL(pcie_mch_quirk);
33
EXPORT_SYMBOL(pcie_mch_quirk);
34
34
35
#ifdef CONFIG_PCI_QUIRKS
35
#ifdef CONFIG_PCI_QUIRKS
36
37
static void quirk_ich_bridge_window(struct pci_dev *dev)
38
{
39
	int rc;
40
	u32 fwh_dec_en1;
41
42
	dev_err(&dev->dev, "checking FW region enable\n");
43
44
	rc = raw_pci_read(0, 0, PCI_DEVFN(31, 0), 0xd8, 2, &fwh_dec_en1);
45
	if (rc < 0) {
46
		dev_err(&dev->dev, "raw PCI config read failed (%d)\n", rc);
47
		return;
48
	}
49
	dev_err(&dev->dev, "FWH_DEC_EN1: %#x\n", fwh_dec_en1);
50
51
	rc = raw_pci_write(0, 0, PCI_DEVFN(31, 0), 0xd8, 2, 0);
52
	if (rc < 0) {
53
		dev_err(&dev->dev, "raw PCI config write failed (%d)\n", rc);
54
		return;
55
	}
56
57
	dev_err(&dev->dev, "FWH_DEC_EN1 cleared\n");
58
}
59
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2448, quirk_ich_bridge_window);
60
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x244e, quirk_ich_bridge_window); /* FIXME testing */
61
36
/* The Mellanox Tavor device gives false positive parity errors
62
/* The Mellanox Tavor device gives false positive parity errors
37
 * Mark this device with a broken_parity_status, to allow
63
 * Mark this device with a broken_parity_status, to allow
38
 * PCI scanning code to "skip" this now blacklisted device.
64
 * PCI scanning code to "skip" this now blacklisted device.

Return to bug 10231