[POWERPC] Merge ppc32 and ppc64 pcibios_alloc_controller() prototypes
authorKumar Gala <galak@kernel.crashing.org>
Wed, 27 Jun 2007 06:56:50 +0000 (01:56 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Fri, 29 Jun 2007 06:58:39 +0000 (01:58 -0500)
Make the ppc32 pcibios_alloc_controller take a device node to match
the ppc64 prototypes and have it set arch_data.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 files changed:
arch/powerpc/kernel/pci_32.c
arch/powerpc/platforms/52xx/efika.c
arch/powerpc/platforms/52xx/mpc52xx_pci.c
arch/powerpc/platforms/82xx/mpc82xx_ads.c
arch/powerpc/platforms/83xx/pci.c
arch/powerpc/platforms/85xx/pci.c
arch/powerpc/platforms/86xx/pci.c
arch/powerpc/platforms/chrp/pci.c
arch/powerpc/platforms/embedded6xx/linkstation.c
arch/powerpc/platforms/powermac/pci.c
arch/powerpc/sysdev/mv64x60_pci.c
arch/powerpc/sysdev/tsi108_pci.c
include/asm-powerpc/pci-bridge.h

index 56deb316efd3e1e061e1c89745cc5a5fa64e7f26..df3251ccca0fe5802ebba156fbdcc73ddeb4400e 100644 (file)
@@ -610,7 +610,7 @@ pcibios_enable_resources(struct pci_dev *dev, int mask)
 static int next_controller_index;
 
 struct pci_controller * __init
-pcibios_alloc_controller(void)
+pcibios_alloc_controller(struct device_node *dev)
 {
        struct pci_controller *hose;
 
@@ -621,6 +621,7 @@ pcibios_alloc_controller(void)
        hose_tail = &hose->next;
 
        hose->global_number = next_controller_index++;
+       hose->arch_data = dev;
 
        return hose;
 }
index 010be5c082d56715a061c394ab57397efded1009..0256423c99d63deb9d6771adaf206e22450c6529 100644 (file)
@@ -128,7 +128,7 @@ void __init efika_pcisetup(void)
        printk(" controlled by %s\n", pcictrl->full_name);
        printk("\n");
 
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(of_node_get(pcictrl));
        if (!hose) {
                printk(KERN_WARNING EFIKA_PLATFORM_NAME
                       ": Can't allocate PCI controller structure for %s\n",
@@ -136,7 +136,6 @@ void __init efika_pcisetup(void)
                return;
        }
 
-       hose->arch_data = of_node_get(pcictrl);
        hose->first_busno = bus_range[0];
        hose->last_busno = bus_range[1];
        hose->ops = &rtas_pci_ops;
index 69a04217c79dc66038b83088046e645d384202c2..4c6c82a684b1eb23bb43642b86200d564c491f29 100644 (file)
@@ -385,12 +385,10 @@ mpc52xx_add_bridge(struct device_node *node)
         * tree are needed to configure the 52xx PCI controller.  Rather
         * than parse the tree here, let pci_process_bridge_OF_ranges()
         * do it for us and extract the values after the fact */
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(node);
        if (!hose)
                return -ENOMEM;
 
-       hose->arch_data = node;
-
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
 
index d1e0919a3dee93c60eb7e23987eaa4e0ba4a842f..da20832b27f1d0a0f3d38d238b72b1c8181aaaeb 100644 (file)
@@ -543,13 +543,11 @@ static void __init mpc82xx_add_bridge(struct device_node *np)
 
        pci_assign_all_buses = 1;
 
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(np);
 
        if (!hose)
                return;
 
-       hose->arch_data = np;
-
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
 
index f49ed277e8437b161c65c162c77d1c23259fa5b9..c0e2b89154e540457aa9e1fbfacab905870e7d56 100644 (file)
@@ -62,10 +62,9 @@ int __init mpc83xx_add_bridge(struct device_node *dev)
        }
 
        pci_assign_all_buses = 1;
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
        if (!hose)
                return -ENOMEM;
-       hose->arch_data = dev;
 
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
index a25b3e77a7d295a7bc51fb4d6453f27ac10428bf..8118417b73649d8813fb6f37f64772eaf2fb5a47 100644 (file)
@@ -56,10 +56,9 @@ int __init mpc85xx_add_bridge(struct device_node *dev)
        }
 
        pci_assign_all_buses = 1;
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
        if (!hose)
                return -ENOMEM;
-       hose->arch_data = dev;
 
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
index 2d7254c91ad9754faec3bc9d712257365120262b..5cb2188ee406f39646ba2deabc776c852d8575f6 100644 (file)
@@ -196,10 +196,10 @@ int __init mpc86xx_add_bridge(struct device_node *dev)
                       " bus 0\n", dev->full_name);
 
        pci_assign_all_buses = 1;
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
        if (!hose)
                return -ENOMEM;
-       hose->arch_data = dev;
+
        hose->indirect_type = PPC_INDIRECT_TYPE_EXT_REG |
                                PPC_INDIRECT_TYPE_SURPRESS_PRIMARY_BUS;
 
index d8408632b1a9ce9aacbb91697d1bbca02addcb21..3690624e49d4c0696290bd3005ffd9700deb8008 100644 (file)
@@ -254,13 +254,12 @@ chrp_find_bridges(void)
                        printk(" at %llx", (unsigned long long)r.start);
                printk("\n");
 
-               hose = pcibios_alloc_controller();
+               hose = pcibios_alloc_controller(dev);
                if (!hose) {
                        printk("Can't allocate PCI controller structure for %s\n",
                                dev->full_name);
                        continue;
                }
-               hose->arch_data = dev;
                hose->first_busno = bus_range[0];
                hose->last_busno = bus_range[1];
 
index 885c789a8c2d83fd86c4299bc228978c4d1a0e36..f4d0a7a603f528a09b1ba16ef17161b63be3320e 100644 (file)
@@ -68,12 +68,11 @@ static int __init linkstation_add_bridge(struct device_node *dev)
                printk(KERN_WARNING "Can't get bus-range for %s, assume"
                                " bus 0\n", dev->full_name);
 
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
        if (hose == NULL)
                return -ENOMEM;
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
-       hose->arch_data = dev;
        setup_indirect_pci(hose, 0xfec00000, 0xfee00000);
 
        /* Interpret the "ranges" property */
index fb853c0affcc991984765b470a3cabeff35fa46f..92586db19754b249f34114764ff59ebd16d7cf35 100644 (file)
@@ -916,15 +916,9 @@ static int __init pmac_add_bridge(struct device_node *dev)
                       " bus 0\n", dev->full_name);
        }
 
-       /* XXX Different prototypes, to be merged */
-#ifdef CONFIG_PPC64
        hose = pcibios_alloc_controller(dev);
-#else
-       hose = pcibios_alloc_controller();
-#endif
        if (!hose)
                return -ENOMEM;
-       hose->arch_data = dev;
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
 
index 2e7738455ae599f932fdc170a0ed8f9c971f7470..45db86c2363c469a982a7e6cbefe3444e0c21391 100644 (file)
@@ -137,12 +137,10 @@ static int __init mv64x60_add_bridge(struct device_node *dev)
                printk(KERN_WARNING "Can't get bus-range for %s, assume"
                       " bus 0\n", dev->full_name);
 
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
        if (!hose)
                return -ENOMEM;
 
-       hose->arch_data = dev;
-
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
 
index 298e2dd34e8957715b92f62f61632e9c765de9a0..90db8a720fedec7198c972fd2e48925a944e37db 100644 (file)
@@ -221,13 +221,12 @@ int __init tsi108_setup_pci(struct device_node *dev, u32 cfg_phys, int primary)
                       " bus 0\n", dev->full_name);
        }
 
-       hose = pcibios_alloc_controller();
+       hose = pcibios_alloc_controller(dev);
 
        if (!hose) {
                printk("PCI Host bridge init failed\n");
                return -ENOMEM;
        }
-       hose->arch_data = dev;
 
        hose->first_busno = bus_range ? bus_range[0] : 0;
        hose->last_busno = bus_range ? bus_range[1] : 0xff;
index 80cfb4a7505349b1928876085972226e380a4d2d..d5a9c9f9ade3abef1610dee6dbe748543b5b6c77 100644 (file)
@@ -9,9 +9,6 @@
 struct device_node;
 struct pci_controller;
 
-/* Allocate a new PCI host bridge structure */
-extern struct pci_controller* pcibios_alloc_controller(void);
-
 /* Get the PCI host controller for a bus */
 extern struct pci_controller* pci_bus_to_hose(int bus);
 
@@ -232,8 +229,6 @@ static inline struct pci_controller *pci_bus_to_host(struct pci_bus *bus)
        return PCI_DN(busdn)->phb;
 }
 
-extern struct pci_controller *
-pcibios_alloc_controller(struct device_node *dev);
 extern void pcibios_free_controller(struct pci_controller *phb);
 
 extern void isa_bridge_find_early(struct pci_controller *hose);
@@ -263,6 +258,9 @@ extern void
 pci_process_bridge_OF_ranges(struct pci_controller *hose,
                           struct device_node *dev, int primary);
 
+/* Allocate a new PCI host bridge structure */
+extern struct pci_controller *
+pcibios_alloc_controller(struct device_node *dev);
 #ifdef CONFIG_PCI
 extern unsigned long pci_address_to_pio(phys_addr_t address);
 #else