sparc64: Fix sparse warnings in pci.c
authorDavid S. Miller <davem@davemloft.net>
Fri, 12 Sep 2008 06:57:40 +0000 (23:57 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 12 Sep 2008 06:57:40 +0000 (23:57 -0700)
1) Declare pci_poke_* in pci_impl.h
2) of_create_pci_dev() should be static
3) ->setup_msi_irq() wants an unsigned int pointer not a plain
   int one
4) void value expression return in arch_teardown_msi_irq()

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/pci.c
arch/sparc64/kernel/pci_impl.h
arch/sparc64/kernel/traps.c

index c6e81dea2cf3990ddccf0463209e78d69f29cd10..e12a0586b43c7f8f4339afa60b444e920d7dddc9 100644 (file)
@@ -242,9 +242,9 @@ static void pci_parse_of_addrs(struct of_device *op,
        }
 }
 
-struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
-                                 struct device_node *node,
-                                 struct pci_bus *bus, int devfn)
+static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
+                                        struct device_node *node,
+                                        struct pci_bus *bus, int devfn)
 {
        struct dev_archdata *sd;
        struct of_device *op;
@@ -998,7 +998,7 @@ EXPORT_SYMBOL(pci_domain_nr);
 int arch_setup_msi_irq(struct pci_dev *pdev, struct msi_desc *desc)
 {
        struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
-       int virt_irq;
+       unsigned int virt_irq;
 
        if (!pbm->setup_msi_irq)
                return -EINVAL;
@@ -1012,10 +1012,8 @@ void arch_teardown_msi_irq(unsigned int virt_irq)
        struct pci_dev *pdev = entry->dev;
        struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller;
 
-       if (!pbm->teardown_msi_irq)
-               return;
-
-       return pbm->teardown_msi_irq(virt_irq, pdev);
+       if (pbm->teardown_msi_irq)
+               pbm->teardown_msi_irq(virt_irq, pdev);
 }
 #endif /* !(CONFIG_PCI_MSI) */
 
index b300f39e9e8de3d91d01cb578b006f6c8dfb1176..03186824327ebc5f66d6a060704dff3e1becda23 100644 (file)
@@ -178,4 +178,8 @@ extern void pci_config_write32(u32 *addr, u32 val);
 extern struct pci_ops sun4u_pci_ops;
 extern struct pci_ops sun4v_pci_ops;
 
+extern volatile int pci_poke_in_progress;
+extern volatile int pci_poke_cpu;
+extern volatile int pci_poke_faulted;
+
 #endif /* !(PCI_IMPL_H) */
index 9378896589f04c1a2ca8463adc2f74b1c50cf2de..342da21642393aba048fc51139748375244bcf9b 100644 (file)
@@ -341,10 +341,7 @@ void sun4v_data_access_exception_tl1(struct pt_regs *regs, unsigned long addr, u
 }
 
 #ifdef CONFIG_PCI
-/* This is really pathetic... */
-extern volatile int pci_poke_in_progress;
-extern volatile int pci_poke_cpu;
-extern volatile int pci_poke_faulted;
+#include "pci_impl.h"
 #endif
 
 /* When access exceptions happen, we must do this. */