PCI: move final fixups from __init to __devinit
Final fixups are executed during device enumeration. If we support hotplug, this may be after boot, so final fixups cannot be __init. [bhelgaas: changelog] Signed-off-by: Myron Stowe <myron.stowe@redhat.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
parent
ce6ed7e7f7
commit
3274c8eb26
@ -253,7 +253,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576, quirk_vsfx)
|
|||||||
* workaround applied too
|
* workaround applied too
|
||||||
* [Info kindly provided by ALi]
|
* [Info kindly provided by ALi]
|
||||||
*/
|
*/
|
||||||
static void __init quirk_alimagik(struct pci_dev *dev)
|
static void __devinit quirk_alimagik(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
if ((pci_pci_problems&PCIPCI_ALIMAGIK)==0) {
|
if ((pci_pci_problems&PCIPCI_ALIMAGIK)==0) {
|
||||||
dev_info(&dev->dev, "Limiting direct PCI/PCI transfers\n");
|
dev_info(&dev->dev, "Limiting direct PCI/PCI transfers\n");
|
||||||
@ -789,7 +789,7 @@ static void __devinit quirk_amd_ioapic(struct pci_dev *dev)
|
|||||||
}
|
}
|
||||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_VIPER_7410, quirk_amd_ioapic);
|
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_VIPER_7410, quirk_amd_ioapic);
|
||||||
|
|
||||||
static void __init quirk_ioapic_rmw(struct pci_dev *dev)
|
static void __devinit quirk_ioapic_rmw(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
if (dev->devfn == 0 && dev->bus->number == 0)
|
if (dev->devfn == 0 && dev->bus->number == 0)
|
||||||
sis_apic_bug = 1;
|
sis_apic_bug = 1;
|
||||||
@ -801,7 +801,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, PCI_ANY_ID, quirk_ioapic_rmw);
|
|||||||
* Some settings of MMRBC can lead to data corruption so block changes.
|
* Some settings of MMRBC can lead to data corruption so block changes.
|
||||||
* See AMD 8131 HyperTransport PCI-X Tunnel Revision Guide
|
* See AMD 8131 HyperTransport PCI-X Tunnel Revision Guide
|
||||||
*/
|
*/
|
||||||
static void __init quirk_amd_8131_mmrbc(struct pci_dev *dev)
|
static void __devinit quirk_amd_8131_mmrbc(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
if (dev->subordinate && dev->revision <= 0x12) {
|
if (dev->subordinate && dev->revision <= 0x12) {
|
||||||
dev_info(&dev->dev, "AMD8131 rev %x detected; "
|
dev_info(&dev->dev, "AMD8131 rev %x detected; "
|
||||||
@ -2169,7 +2169,7 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_PLX, 0x8624, quirk_tile_plx_gen1);
|
|||||||
* aware of it. Instead of setting the flag on all busses in the
|
* aware of it. Instead of setting the flag on all busses in the
|
||||||
* machine, simply disable MSI globally.
|
* machine, simply disable MSI globally.
|
||||||
*/
|
*/
|
||||||
static void __init quirk_disable_all_msi(struct pci_dev *dev)
|
static void __devinit quirk_disable_all_msi(struct pci_dev *dev)
|
||||||
{
|
{
|
||||||
pci_no_msi();
|
pci_no_msi();
|
||||||
dev_warn(&dev->dev, "MSI quirk detected; MSI disabled\n");
|
dev_warn(&dev->dev, "MSI quirk detected; MSI disabled\n");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user