All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] PCI: Annotate pci_fixup_irqs with __devinit
@ 2012-09-14 20:44 ` Thierry Reding
  0 siblings, 0 replies; 59+ messages in thread
From: Thierry Reding @ 2012-09-14 20:44 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: linux-mips, linux-ia64, linux-sh, linux-pci, H. Peter Anvin,
	Greg Ungerer, sparclinux, Guan Xuetao, Russell King, x86,
	Ingo Molnar, Geert Uytterhoeven, Matt Turner, Fenghua Yu,
	Chris Metcalf, linux-m68k, Ivan Kokshaysky, Thomas Gleixner,
	linux-arm-kernel, Richard Henderson, Chris Zankel, Tony Luck,
	linux-kernel, Ralf Baechle, Paul Mundt, linux-alpha,
	"David S. Miller" <davem>

In order to keep pci_fixup_irqs() around after init (e.g. for hotplug),
mark it __devinit instead of __init. This requires the same change for
the implementation of the pcibios_update_irq() function on all
architectures.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
---
Note: Ideally these annotations should go away completely in order to
be independent of the HOTPLUG symbol. However, there is work underway
to get rid of HOTPLUG altogether, so I've kept the __devinit for now.

 arch/alpha/kernel/pci.c   | 2 +-
 arch/mips/pci/pci.c       | 2 +-
 arch/sh/drivers/pci/pci.c | 2 +-
 arch/x86/pci/visws.c      | 2 +-
 arch/xtensa/kernel/pci.c  | 2 +-
 drivers/pci/setup-irq.c   | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/alpha/kernel/pci.c b/arch/alpha/kernel/pci.c
index 9816d5a..6192b35 100644
--- a/arch/alpha/kernel/pci.c
+++ b/arch/alpha/kernel/pci.c
@@ -256,7 +256,7 @@ pcibios_fixup_bus(struct pci_bus *bus)
 	}
 }
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c
index 6903568..af3dc05 100644
--- a/arch/mips/pci/pci.c
+++ b/arch/mips/pci/pci.c
@@ -313,7 +313,7 @@ void __devinit pcibios_fixup_bus(struct pci_bus *bus)
 	}
 }
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/arch/sh/drivers/pci/pci.c b/arch/sh/drivers/pci/pci.c
index 40db2d0..d16fabe 100644
--- a/arch/sh/drivers/pci/pci.c
+++ b/arch/sh/drivers/pci/pci.c
@@ -192,7 +192,7 @@ int pcibios_enable_device(struct pci_dev *dev, int mask)
 	return pci_enable_resources(dev, mask);
 }
 
-void __init pcibios_update_irq(struct pci_dev *dev, int irq)
+void __devinit pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
 }
diff --git a/arch/x86/pci/visws.c b/arch/x86/pci/visws.c
index 6f2f8ee..15bdfbf 100644
--- a/arch/x86/pci/visws.c
+++ b/arch/x86/pci/visws.c
@@ -62,7 +62,7 @@ out:
 	return irq;
 }
 
-void __init pcibios_update_irq(struct pci_dev *dev, int irq)
+void __devinit pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
 }
diff --git a/arch/xtensa/kernel/pci.c b/arch/xtensa/kernel/pci.c
index 69759e9..efc3369 100644
--- a/arch/xtensa/kernel/pci.c
+++ b/arch/xtensa/kernel/pci.c
@@ -212,7 +212,7 @@ void pcibios_set_master(struct pci_dev *dev)
 
 /* the next one is stolen from the alpha port... */
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/drivers/pci/setup-irq.c b/drivers/pci/setup-irq.c
index eb219a1..f0bcd56 100644
--- a/drivers/pci/setup-irq.c
+++ b/drivers/pci/setup-irq.c
@@ -18,7 +18,7 @@
 #include <linux/cache.h>
 
 
-static void __init
+static void __devinit
 pdev_fixup_irq(struct pci_dev *dev,
 	       u8 (*swizzle)(struct pci_dev *, u8 *),
 	       int (*map_irq)(const struct pci_dev *, u8, u8))
@@ -54,7 +54,7 @@ pdev_fixup_irq(struct pci_dev *dev,
 	pcibios_update_irq(dev, irq);
 }
 
-void __init
+void __devinit
 pci_fixup_irqs(u8 (*swizzle)(struct pci_dev *, u8 *),
 	       int (*map_irq)(const struct pci_dev *, u8, u8))
 {
-- 
1.7.12

^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [PATCH 1/2] PCI: Annotate pci_fixup_irqs with __devinit
@ 2012-09-14 20:44 Thierry Reding
  0 siblings, 0 replies; 59+ messages in thread
From: Thierry Reding @ 2012-09-14 20:44 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: Richard Henderson, Ivan Kokshaysky, Matt Turner, Russell King,
	Tony Luck, Fenghua Yu, Geert Uytterhoeven, Ralf Baechle,
	Paul Mundt, David S. Miller, Chris Metcalf, Guan Xuetao,
	Thomas Gleixner, Ingo Molnar, H. Peter Anvin, x86, Chris Zankel,
	Greg Ungerer, linux-alpha, linux-kernel, linux-arm-kernel,
	linux-ia64, linux-m68k, linux-mips, linux-sh, sparclinux

In order to keep pci_fixup_irqs() around after init (e.g. for hotplug),
mark it __devinit instead of __init. This requires the same change for
the implementation of the pcibios_update_irq() function on all
architectures.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
---
Note: Ideally these annotations should go away completely in order to
be independent of the HOTPLUG symbol. However, there is work underway
to get rid of HOTPLUG altogether, so I've kept the __devinit for now.

 arch/alpha/kernel/pci.c   | 2 +-
 arch/mips/pci/pci.c       | 2 +-
 arch/sh/drivers/pci/pci.c | 2 +-
 arch/x86/pci/visws.c      | 2 +-
 arch/xtensa/kernel/pci.c  | 2 +-
 drivers/pci/setup-irq.c   | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/alpha/kernel/pci.c b/arch/alpha/kernel/pci.c
index 9816d5a..6192b35 100644
--- a/arch/alpha/kernel/pci.c
+++ b/arch/alpha/kernel/pci.c
@@ -256,7 +256,7 @@ pcibios_fixup_bus(struct pci_bus *bus)
 	}
 }
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c
index 6903568..af3dc05 100644
--- a/arch/mips/pci/pci.c
+++ b/arch/mips/pci/pci.c
@@ -313,7 +313,7 @@ void __devinit pcibios_fixup_bus(struct pci_bus *bus)
 	}
 }
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/arch/sh/drivers/pci/pci.c b/arch/sh/drivers/pci/pci.c
index 40db2d0..d16fabe 100644
--- a/arch/sh/drivers/pci/pci.c
+++ b/arch/sh/drivers/pci/pci.c
@@ -192,7 +192,7 @@ int pcibios_enable_device(struct pci_dev *dev, int mask)
 	return pci_enable_resources(dev, mask);
 }
 
-void __init pcibios_update_irq(struct pci_dev *dev, int irq)
+void __devinit pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
 }
diff --git a/arch/x86/pci/visws.c b/arch/x86/pci/visws.c
index 6f2f8ee..15bdfbf 100644
--- a/arch/x86/pci/visws.c
+++ b/arch/x86/pci/visws.c
@@ -62,7 +62,7 @@ out:
 	return irq;
 }
 
-void __init pcibios_update_irq(struct pci_dev *dev, int irq)
+void __devinit pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
 }
diff --git a/arch/xtensa/kernel/pci.c b/arch/xtensa/kernel/pci.c
index 69759e9..efc3369 100644
--- a/arch/xtensa/kernel/pci.c
+++ b/arch/xtensa/kernel/pci.c
@@ -212,7 +212,7 @@ void pcibios_set_master(struct pci_dev *dev)
 
 /* the next one is stolen from the alpha port... */
 
-void __init
+void __devinit
 pcibios_update_irq(struct pci_dev *dev, int irq)
 {
 	pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq);
diff --git a/drivers/pci/setup-irq.c b/drivers/pci/setup-irq.c
index eb219a1..f0bcd56 100644
--- a/drivers/pci/setup-irq.c
+++ b/drivers/pci/setup-irq.c
@@ -18,7 +18,7 @@
 #include <linux/cache.h>
 
 
-static void __init
+static void __devinit
 pdev_fixup_irq(struct pci_dev *dev,
 	       u8 (*swizzle)(struct pci_dev *, u8 *),
 	       int (*map_irq)(const struct pci_dev *, u8, u8))
@@ -54,7 +54,7 @@ pdev_fixup_irq(struct pci_dev *dev,
 	pcibios_update_irq(dev, irq);
 }
 
-void __init
+void __devinit
 pci_fixup_irqs(u8 (*swizzle)(struct pci_dev *, u8 *),
 	       int (*map_irq)(const struct pci_dev *, u8, u8))
 {
-- 
1.7.12

^ permalink raw reply related	[flat|nested] 59+ messages in thread

end of thread, other threads:[~2012-09-16  6:52 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-14 20:44 [PATCH 1/2] PCI: Annotate pci_fixup_irqs with __devinit Thierry Reding
2012-09-14 20:44 ` Thierry Reding
2012-09-14 20:44 ` Thierry Reding
2012-09-14 20:44 ` Thierry Reding
2012-09-14 20:44 ` Thierry Reding
2012-09-14 20:44 ` [PATCH 2/2] PCI: Provide a default pcibios_update_irq() Thierry Reding
2012-09-14 20:44 ` Thierry Reding
2012-09-14 20:44   ` Thierry Reding
2012-09-14 20:44   ` Thierry Reding
2012-09-14 20:44   ` Thierry Reding
2012-09-14 20:44   ` Thierry Reding
2012-09-15  7:32   ` Geert Uytterhoeven
2012-09-15  7:32     ` Geert Uytterhoeven
2012-09-15  7:32     ` Geert Uytterhoeven
2012-09-15  7:32     ` Geert Uytterhoeven
2012-09-15  7:32     ` Geert Uytterhoeven
2012-09-15  7:53     ` Thierry Reding
2012-09-15  7:53       ` Thierry Reding
2012-09-15  7:53       ` Thierry Reding
2012-09-15  7:53       ` Thierry Reding
2012-09-15  7:53       ` Thierry Reding
2012-09-15 22:22       ` Bjorn Helgaas
2012-09-15 22:22         ` Bjorn Helgaas
2012-09-15 22:22         ` Bjorn Helgaas
2012-09-15 22:22         ` Bjorn Helgaas
2012-09-15 22:22         ` Bjorn Helgaas
2012-09-15 22:22       ` Bjorn Helgaas
2012-09-15 22:23       ` Bjorn Helgaas
2012-09-15 22:23       ` Bjorn Helgaas
2012-09-15 22:23         ` Bjorn Helgaas
2012-09-15 22:23         ` Bjorn Helgaas
2012-09-15 22:23         ` Bjorn Helgaas
2012-09-15 22:23         ` Bjorn Helgaas
2012-09-16  6:50         ` Thierry Reding
2012-09-16  6:50         ` Thierry Reding
2012-09-16  6:50           ` Thierry Reding
2012-09-16  6:50           ` Thierry Reding
2012-09-16  6:50           ` Thierry Reding
2012-09-16  6:50           ` Thierry Reding
2012-09-15  7:32   ` Geert Uytterhoeven
2012-09-14 20:53 ` [PATCH 1/2] PCI: Annotate pci_fixup_irqs with __devinit Bjorn Helgaas
2012-09-14 20:53   ` Bjorn Helgaas
2012-09-14 20:53   ` Bjorn Helgaas
2012-09-14 20:53   ` Bjorn Helgaas
2012-09-14 20:53   ` Bjorn Helgaas
2012-09-14 22:35   ` Greg Kroah-Hartman
2012-09-14 22:35     ` Greg Kroah-Hartman
2012-09-14 22:35     ` Greg Kroah-Hartman
2012-09-14 22:35     ` Greg Kroah-Hartman
2012-09-14 22:35     ` Greg Kroah-Hartman
2012-09-15  7:57     ` Thierry Reding
2012-09-15  7:57     ` Thierry Reding
2012-09-15  7:57       ` Thierry Reding
2012-09-15  7:57       ` Thierry Reding
2012-09-15  7:57       ` Thierry Reding
2012-09-15  7:57       ` Thierry Reding
2012-09-14 22:35   ` Greg Kroah-Hartman
2012-09-14 20:53 ` Bjorn Helgaas
  -- strict thread matches above, loose matches on Subject: below --
2012-09-14 20:44 Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.