This is a note to let you know that I've just added the patch titled

    PCI: remove quirk for pre-production systems

to the 2.6.38-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     pci-remove-quirk-for-pre-production-systems.patch
and it can be found in the queue-2.6.38 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From b99af4b002e4908d1a5cdaf424529bdf1dc69768 Mon Sep 17 00:00:00 2001
From: Brandeburg, Jesse <[email protected]>
Date: Mon, 14 Feb 2011 09:05:02 -0800
Subject: PCI: remove quirk for pre-production systems

From: Brandeburg, Jesse <[email protected]>

commit b99af4b002e4908d1a5cdaf424529bdf1dc69768 upstream.

Revert commit 7eb93b175d4de9438a4b0af3a94a112cb5266944
Author: Yu Zhao <[email protected]>
Date:   Fri Apr 3 15:18:11 2009 +0800

    PCI: SR-IOV quirk for Intel 82576 NIC

    If BIOS doesn't allocate resources for the SR-IOV BARs, zero the Flash
    BAR and program the SR-IOV BARs to use the old Flash Memory Space.

    Please refer to Intel 82576 Gigabit Ethernet Controller Datasheet
    section 7.9.2.14.2 for details.
    http://download.intel.com/design/network/datashts/82576_Datasheet.pdf

    Signed-off-by: Yu Zhao <[email protected]>
    Signed-off-by: Jesse Barnes <[email protected]>

This quirk was added before SR-IOV was in production and now all machines that
originally had this issue alreayd have bios updates to correct the issue. The
quirk itself is no longer needed and in fact causes bugs if run.  Remove it.

Signed-off-by: Jesse Brandeburg <[email protected]>
CC: Yu Zhao <[email protected]>
CC: Jesse Barnes <[email protected]>
Signed-off-by: Jesse Barnes <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/pci/quirks.c |   52 ---------------------------------------------------
 1 file changed, 52 deletions(-)

--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -2618,58 +2618,6 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AT
 
 #endif /* CONFIG_PCI_MSI */
 
-#ifdef CONFIG_PCI_IOV
-
-/*
- * For Intel 82576 SR-IOV NIC, if BIOS doesn't allocate resources for the
- * SR-IOV BARs, zero the Flash BAR and program the SR-IOV BARs to use the
- * old Flash Memory Space.
- */
-static void __devinit quirk_i82576_sriov(struct pci_dev *dev)
-{
-       int pos, flags;
-       u32 bar, start, size;
-
-       if (PAGE_SIZE > 0x10000)
-               return;
-
-       flags = pci_resource_flags(dev, 0);
-       if ((flags & PCI_BASE_ADDRESS_SPACE) !=
-                       PCI_BASE_ADDRESS_SPACE_MEMORY ||
-           (flags & PCI_BASE_ADDRESS_MEM_TYPE_MASK) !=
-                       PCI_BASE_ADDRESS_MEM_TYPE_32)
-               return;
-
-       pos = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_SRIOV);
-       if (!pos)
-               return;
-
-       pci_read_config_dword(dev, pos + PCI_SRIOV_BAR, &bar);
-       if (bar & PCI_BASE_ADDRESS_MEM_MASK)
-               return;
-
-       start = pci_resource_start(dev, 1);
-       size = pci_resource_len(dev, 1);
-       if (!start || size != 0x400000 || start & (size - 1))
-               return;
-
-       pci_resource_flags(dev, 1) = 0;
-       pci_write_config_dword(dev, PCI_BASE_ADDRESS_1, 0);
-       pci_write_config_dword(dev, pos + PCI_SRIOV_BAR, start);
-       pci_write_config_dword(dev, pos + PCI_SRIOV_BAR + 12, start + size / 2);
-
-       dev_info(&dev->dev, "use Flash Memory Space for SR-IOV BARs\n");
-}
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x10c9, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x10e6, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x10e7, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x10e8, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x150a, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x150d, quirk_i82576_sriov);
-DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1518, quirk_i82576_sriov);
-
-#endif /* CONFIG_PCI_IOV */
-
 /* Allow manual resource allocation for PCI hotplug bridges
  * via pci=hpmemsize=nnM and pci=hpiosize=nnM parameters. For
  * some PCI-PCI hotplug bridges, like PLX 6254 (former HINT HB6),


Patches currently in stable-queue which might be from 
[email protected] are

queue-2.6.38/pci-remove-quirk-for-pre-production-systems.patch

_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable

Reply via email to