提交 25e742b2 编写于 作者: M Myron Stowe 提交者: Bjorn Helgaas

PCI: never discard enable/suspend/resume_early/resume fixups

The enable/suspend/resume_early/resume fixups can be called at any time, so
they can't be __init or __devinit.

[bhelgaas: changelog]
Signed-off-by: NMyron Stowe <myron.stowe@redhat.com>
Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
上级 dff3aef7
...@@ -1039,7 +1039,7 @@ static void quirk_disable_pxb(struct pci_dev *pdev) ...@@ -1039,7 +1039,7 @@ static void quirk_disable_pxb(struct pci_dev *pdev)
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454NX, quirk_disable_pxb); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454NX, quirk_disable_pxb);
DECLARE_PCI_FIXUP_RESUME_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454NX, quirk_disable_pxb); DECLARE_PCI_FIXUP_RESUME_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454NX, quirk_disable_pxb);
static void __devinit quirk_amd_ide_mode(struct pci_dev *pdev) static void quirk_amd_ide_mode(struct pci_dev *pdev)
{ {
/* set SBX00/Hudson-2 SATA in IDE mode to AHCI mode */ /* set SBX00/Hudson-2 SATA in IDE mode to AHCI mode */
u8 tmp; u8 tmp;
...@@ -2104,7 +2104,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_BROADCOM, ...@@ -2104,7 +2104,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_BROADCOM,
PCI_DEVICE_ID_NX2_5709S, PCI_DEVICE_ID_NX2_5709S,
quirk_brcm_570x_limit_vpd); quirk_brcm_570x_limit_vpd);
static void __devinit quirk_brcm_5719_limit_mrrs(struct pci_dev *dev) static void quirk_brcm_5719_limit_mrrs(struct pci_dev *dev)
{ {
u32 rev; u32 rev;
...@@ -2217,7 +2217,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, 0x9601, quirk_amd_780_apc_msi); ...@@ -2217,7 +2217,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, 0x9601, quirk_amd_780_apc_msi);
/* Go through the list of Hypertransport capabilities and /* Go through the list of Hypertransport capabilities and
* return 1 if a HT MSI capability is found and enabled */ * return 1 if a HT MSI capability is found and enabled */
static int __devinit msi_ht_cap_enabled(struct pci_dev *dev) static int msi_ht_cap_enabled(struct pci_dev *dev)
{ {
int pos, ttl = 48; int pos, ttl = 48;
...@@ -2241,7 +2241,7 @@ static int __devinit msi_ht_cap_enabled(struct pci_dev *dev) ...@@ -2241,7 +2241,7 @@ static int __devinit msi_ht_cap_enabled(struct pci_dev *dev)
} }
/* Check the hypertransport MSI mapping to know whether MSI is enabled or not */ /* Check the hypertransport MSI mapping to know whether MSI is enabled or not */
static void __devinit quirk_msi_ht_cap(struct pci_dev *dev) static void quirk_msi_ht_cap(struct pci_dev *dev)
{ {
if (dev->subordinate && !msi_ht_cap_enabled(dev)) { if (dev->subordinate && !msi_ht_cap_enabled(dev)) {
dev_warn(&dev->dev, "MSI quirk detected; " dev_warn(&dev->dev, "MSI quirk detected; "
...@@ -2255,7 +2255,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_HT2 ...@@ -2255,7 +2255,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_HT2
/* The nVidia CK804 chipset may have 2 HT MSI mappings. /* The nVidia CK804 chipset may have 2 HT MSI mappings.
* MSI are supported if the MSI capability set in any of these mappings. * MSI are supported if the MSI capability set in any of these mappings.
*/ */
static void __devinit quirk_nvidia_ck804_msi_ht_cap(struct pci_dev *dev) static void quirk_nvidia_ck804_msi_ht_cap(struct pci_dev *dev)
{ {
struct pci_dev *pdev; struct pci_dev *pdev;
...@@ -2279,7 +2279,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE, ...@@ -2279,7 +2279,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_CK804_PCIE,
quirk_nvidia_ck804_msi_ht_cap); quirk_nvidia_ck804_msi_ht_cap);
/* Force enable MSI mapping capability on HT bridges */ /* Force enable MSI mapping capability on HT bridges */
static void __devinit ht_enable_msi_mapping(struct pci_dev *dev) static void ht_enable_msi_mapping(struct pci_dev *dev)
{ {
int pos, ttl = 48; int pos, ttl = 48;
...@@ -2359,7 +2359,7 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NVIDIA, ...@@ -2359,7 +2359,7 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NVIDIA,
PCI_DEVICE_ID_NVIDIA_MCP55_BRIDGE_V4, PCI_DEVICE_ID_NVIDIA_MCP55_BRIDGE_V4,
nvbridge_check_legacy_irq_routing); nvbridge_check_legacy_irq_routing);
static int __devinit ht_check_msi_mapping(struct pci_dev *dev) static int ht_check_msi_mapping(struct pci_dev *dev)
{ {
int pos, ttl = 48; int pos, ttl = 48;
int found = 0; int found = 0;
...@@ -2387,7 +2387,7 @@ static int __devinit ht_check_msi_mapping(struct pci_dev *dev) ...@@ -2387,7 +2387,7 @@ static int __devinit ht_check_msi_mapping(struct pci_dev *dev)
return found; return found;
} }
static int __devinit host_bridge_with_leaf(struct pci_dev *host_bridge) static int host_bridge_with_leaf(struct pci_dev *host_bridge)
{ {
struct pci_dev *dev; struct pci_dev *dev;
int pos; int pos;
...@@ -2421,7 +2421,7 @@ static int __devinit host_bridge_with_leaf(struct pci_dev *host_bridge) ...@@ -2421,7 +2421,7 @@ static int __devinit host_bridge_with_leaf(struct pci_dev *host_bridge)
#define PCI_HT_CAP_SLAVE_CTRL0 4 /* link control */ #define PCI_HT_CAP_SLAVE_CTRL0 4 /* link control */
#define PCI_HT_CAP_SLAVE_CTRL1 8 /* link control to */ #define PCI_HT_CAP_SLAVE_CTRL1 8 /* link control to */
static int __devinit is_end_of_ht_chain(struct pci_dev *dev) static int is_end_of_ht_chain(struct pci_dev *dev)
{ {
int pos, ctrl_off; int pos, ctrl_off;
int end = 0; int end = 0;
...@@ -2445,7 +2445,7 @@ static int __devinit is_end_of_ht_chain(struct pci_dev *dev) ...@@ -2445,7 +2445,7 @@ static int __devinit is_end_of_ht_chain(struct pci_dev *dev)
return end; return end;
} }
static void __devinit nv_ht_enable_msi_mapping(struct pci_dev *dev) static void nv_ht_enable_msi_mapping(struct pci_dev *dev)
{ {
struct pci_dev *host_bridge; struct pci_dev *host_bridge;
int pos; int pos;
...@@ -2484,7 +2484,7 @@ static void __devinit nv_ht_enable_msi_mapping(struct pci_dev *dev) ...@@ -2484,7 +2484,7 @@ static void __devinit nv_ht_enable_msi_mapping(struct pci_dev *dev)
pci_dev_put(host_bridge); pci_dev_put(host_bridge);
} }
static void __devinit ht_disable_msi_mapping(struct pci_dev *dev) static void ht_disable_msi_mapping(struct pci_dev *dev)
{ {
int pos, ttl = 48; int pos, ttl = 48;
...@@ -2504,7 +2504,7 @@ static void __devinit ht_disable_msi_mapping(struct pci_dev *dev) ...@@ -2504,7 +2504,7 @@ static void __devinit ht_disable_msi_mapping(struct pci_dev *dev)
} }
} }
static void __devinit __nv_msi_ht_cap_quirk(struct pci_dev *dev, int all) static void __nv_msi_ht_cap_quirk(struct pci_dev *dev, int all)
{ {
struct pci_dev *host_bridge; struct pci_dev *host_bridge;
int pos; int pos;
...@@ -2555,12 +2555,12 @@ static void __devinit __nv_msi_ht_cap_quirk(struct pci_dev *dev, int all) ...@@ -2555,12 +2555,12 @@ static void __devinit __nv_msi_ht_cap_quirk(struct pci_dev *dev, int all)
pci_dev_put(host_bridge); pci_dev_put(host_bridge);
} }
static void __devinit nv_msi_ht_cap_quirk_all(struct pci_dev *dev) static void nv_msi_ht_cap_quirk_all(struct pci_dev *dev)
{ {
return __nv_msi_ht_cap_quirk(dev, 1); return __nv_msi_ht_cap_quirk(dev, 1);
} }
static void __devinit nv_msi_ht_cap_quirk_leaf(struct pci_dev *dev) static void nv_msi_ht_cap_quirk_leaf(struct pci_dev *dev)
{ {
return __nv_msi_ht_cap_quirk(dev, 0); return __nv_msi_ht_cap_quirk(dev, 0);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册