Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc/PCI: move fixup hooks from __init to __devinit

The fixups are executed once the pci-device is found which is during
boot process so __init seems fine as long as the platform does not
support hotplug.

However it is possible to remove the PCI bus at run time and have it
rediscovered again via "echo 1 > /sys/bus/pci/rescan" and this will call
the fixups again.

Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>

authored by

Sebastian Andrzej Siewior and committed by
Bjorn Helgaas
492bf4f2 a9149164

+6 -6
+1 -1
arch/powerpc/platforms/85xx/tqm85xx.c
··· 102 102 seq_printf(m, "PLL setting\t: 0x%x\n", ((phid1 >> 24) & 0x3f)); 103 103 } 104 104 105 - static void __init tqm85xx_ti1520_fixup(struct pci_dev *pdev) 105 + static void __devinit tqm85xx_ti1520_fixup(struct pci_dev *pdev) 106 106 { 107 107 unsigned int val; 108 108
+1 -1
arch/powerpc/platforms/86xx/gef_ppc9a.c
··· 164 164 gef_ppc9a_get_vme_is_syscon() ? "yes" : "no"); 165 165 } 166 166 167 - static void __init gef_ppc9a_nec_fixup(struct pci_dev *pdev) 167 + static void __devinit gef_ppc9a_nec_fixup(struct pci_dev *pdev) 168 168 { 169 169 unsigned int val; 170 170
+1 -1
arch/powerpc/platforms/86xx/gef_sbc310.c
··· 152 152 153 153 } 154 154 155 - static void __init gef_sbc310_nec_fixup(struct pci_dev *pdev) 155 + static void __devinit gef_sbc310_nec_fixup(struct pci_dev *pdev) 156 156 { 157 157 unsigned int val; 158 158
+1 -1
arch/powerpc/platforms/86xx/gef_sbc610.c
··· 141 141 seq_printf(m, "SVR\t\t: 0x%x\n", svid); 142 142 } 143 143 144 - static void __init gef_sbc610_nec_fixup(struct pci_dev *pdev) 144 + static void __devinit gef_sbc610_nec_fixup(struct pci_dev *pdev) 145 145 { 146 146 unsigned int val; 147 147
+1 -1
arch/powerpc/sysdev/fsl_pci.c
··· 36 36 37 37 static int fsl_pcie_bus_fixup, is_mpc83xx_pci; 38 38 39 - static void __init quirk_fsl_pcie_header(struct pci_dev *dev) 39 + static void __devinit quirk_fsl_pcie_header(struct pci_dev *dev) 40 40 { 41 41 u8 progif; 42 42
+1 -1
arch/powerpc/sysdev/mv64x60_pci.c
··· 104 104 105 105 #endif /* CONFIG_SYSFS */ 106 106 107 - static void __init mv64x60_pci_fixup_early(struct pci_dev *dev) 107 + static void __devinit mv64x60_pci_fixup_early(struct pci_dev *dev) 108 108 { 109 109 /* 110 110 * Set the host bridge hdr_type to an invalid value so that