[POWERPC] Merge ppc32 and ppc64 pcibios_alloc_controller() prototypes
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>
This commit is contained in:
parent
5516b540e9
commit
dbf8471f52
|
@ -610,7 +610,7 @@ pcibios_enable_resources(struct pci_dev *dev, int mask)
|
||||||
static int next_controller_index;
|
static int next_controller_index;
|
||||||
|
|
||||||
struct pci_controller * __init
|
struct pci_controller * __init
|
||||||
pcibios_alloc_controller(void)
|
pcibios_alloc_controller(struct device_node *dev)
|
||||||
{
|
{
|
||||||
struct pci_controller *hose;
|
struct pci_controller *hose;
|
||||||
|
|
||||||
|
@ -621,6 +621,7 @@ pcibios_alloc_controller(void)
|
||||||
hose_tail = &hose->next;
|
hose_tail = &hose->next;
|
||||||
|
|
||||||
hose->global_number = next_controller_index++;
|
hose->global_number = next_controller_index++;
|
||||||
|
hose->arch_data = dev;
|
||||||
|
|
||||||
return hose;
|
return hose;
|
||||||
}
|
}
|
||||||
|
|
|
@ -128,7 +128,7 @@ void __init efika_pcisetup(void)
|
||||||
printk(" controlled by %s\n", pcictrl->full_name);
|
printk(" controlled by %s\n", pcictrl->full_name);
|
||||||
printk("\n");
|
printk("\n");
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(of_node_get(pcictrl));
|
||||||
if (!hose) {
|
if (!hose) {
|
||||||
printk(KERN_WARNING EFIKA_PLATFORM_NAME
|
printk(KERN_WARNING EFIKA_PLATFORM_NAME
|
||||||
": Can't allocate PCI controller structure for %s\n",
|
": Can't allocate PCI controller structure for %s\n",
|
||||||
|
@ -136,7 +136,6 @@ void __init efika_pcisetup(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hose->arch_data = of_node_get(pcictrl);
|
|
||||||
hose->first_busno = bus_range[0];
|
hose->first_busno = bus_range[0];
|
||||||
hose->last_busno = bus_range[1];
|
hose->last_busno = bus_range[1];
|
||||||
hose->ops = &rtas_pci_ops;
|
hose->ops = &rtas_pci_ops;
|
||||||
|
|
|
@ -385,12 +385,10 @@ mpc52xx_add_bridge(struct device_node *node)
|
||||||
* tree are needed to configure the 52xx PCI controller. Rather
|
* tree are needed to configure the 52xx PCI controller. Rather
|
||||||
* than parse the tree here, let pci_process_bridge_OF_ranges()
|
* than parse the tree here, let pci_process_bridge_OF_ranges()
|
||||||
* do it for us and extract the values after the fact */
|
* do it for us and extract the values after the fact */
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(node);
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
hose->arch_data = node;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
||||||
|
|
|
@ -543,13 +543,11 @@ static void __init mpc82xx_add_bridge(struct device_node *np)
|
||||||
|
|
||||||
pci_assign_all_buses = 1;
|
pci_assign_all_buses = 1;
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(np);
|
||||||
|
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
hose->arch_data = np;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
||||||
|
|
|
@ -62,10 +62,9 @@ int __init mpc83xx_add_bridge(struct device_node *dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
pci_assign_all_buses = 1;
|
pci_assign_all_buses = 1;
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
hose->arch_data = dev;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
|
@ -56,10 +56,9 @@ int __init mpc85xx_add_bridge(struct device_node *dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
pci_assign_all_buses = 1;
|
pci_assign_all_buses = 1;
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
hose->arch_data = dev;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
|
@ -196,10 +196,10 @@ int __init mpc86xx_add_bridge(struct device_node *dev)
|
||||||
" bus 0\n", dev->full_name);
|
" bus 0\n", dev->full_name);
|
||||||
|
|
||||||
pci_assign_all_buses = 1;
|
pci_assign_all_buses = 1;
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
hose->arch_data = dev;
|
|
||||||
hose->indirect_type = PPC_INDIRECT_TYPE_EXT_REG |
|
hose->indirect_type = PPC_INDIRECT_TYPE_EXT_REG |
|
||||||
PPC_INDIRECT_TYPE_SURPRESS_PRIMARY_BUS;
|
PPC_INDIRECT_TYPE_SURPRESS_PRIMARY_BUS;
|
||||||
|
|
||||||
|
|
|
@ -254,13 +254,12 @@ chrp_find_bridges(void)
|
||||||
printk(" at %llx", (unsigned long long)r.start);
|
printk(" at %llx", (unsigned long long)r.start);
|
||||||
printk("\n");
|
printk("\n");
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (!hose) {
|
if (!hose) {
|
||||||
printk("Can't allocate PCI controller structure for %s\n",
|
printk("Can't allocate PCI controller structure for %s\n",
|
||||||
dev->full_name);
|
dev->full_name);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
hose->arch_data = dev;
|
|
||||||
hose->first_busno = bus_range[0];
|
hose->first_busno = bus_range[0];
|
||||||
hose->last_busno = bus_range[1];
|
hose->last_busno = bus_range[1];
|
||||||
|
|
||||||
|
|
|
@ -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"
|
printk(KERN_WARNING "Can't get bus-range for %s, assume"
|
||||||
" bus 0\n", dev->full_name);
|
" bus 0\n", dev->full_name);
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (hose == NULL)
|
if (hose == NULL)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
hose->arch_data = dev;
|
|
||||||
setup_indirect_pci(hose, 0xfec00000, 0xfee00000);
|
setup_indirect_pci(hose, 0xfec00000, 0xfee00000);
|
||||||
|
|
||||||
/* Interpret the "ranges" property */
|
/* Interpret the "ranges" property */
|
||||||
|
|
|
@ -916,15 +916,9 @@ static int __init pmac_add_bridge(struct device_node *dev)
|
||||||
" bus 0\n", dev->full_name);
|
" bus 0\n", dev->full_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* XXX Different prototypes, to be merged */
|
|
||||||
#ifdef CONFIG_PPC64
|
|
||||||
hose = pcibios_alloc_controller(dev);
|
hose = pcibios_alloc_controller(dev);
|
||||||
#else
|
|
||||||
hose = pcibios_alloc_controller();
|
|
||||||
#endif
|
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
hose->arch_data = dev;
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
||||||
|
|
|
@ -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"
|
printk(KERN_WARNING "Can't get bus-range for %s, assume"
|
||||||
" bus 0\n", dev->full_name);
|
" bus 0\n", dev->full_name);
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
if (!hose)
|
if (!hose)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
hose->arch_data = dev;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
||||||
|
|
|
@ -221,13 +221,12 @@ int __init tsi108_setup_pci(struct device_node *dev, u32 cfg_phys, int primary)
|
||||||
" bus 0\n", dev->full_name);
|
" bus 0\n", dev->full_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
hose = pcibios_alloc_controller();
|
hose = pcibios_alloc_controller(dev);
|
||||||
|
|
||||||
if (!hose) {
|
if (!hose) {
|
||||||
printk("PCI Host bridge init failed\n");
|
printk("PCI Host bridge init failed\n");
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
hose->arch_data = dev;
|
|
||||||
|
|
||||||
hose->first_busno = bus_range ? bus_range[0] : 0;
|
hose->first_busno = bus_range ? bus_range[0] : 0;
|
||||||
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
hose->last_busno = bus_range ? bus_range[1] : 0xff;
|
||||||
|
|
|
@ -9,9 +9,6 @@
|
||||||
struct device_node;
|
struct device_node;
|
||||||
struct pci_controller;
|
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 */
|
/* Get the PCI host controller for a bus */
|
||||||
extern struct pci_controller* pci_bus_to_hose(int 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;
|
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 pcibios_free_controller(struct pci_controller *phb);
|
||||||
|
|
||||||
extern void isa_bridge_find_early(struct pci_controller *hose);
|
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,
|
pci_process_bridge_OF_ranges(struct pci_controller *hose,
|
||||||
struct device_node *dev, int primary);
|
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
|
#ifdef CONFIG_PCI
|
||||||
extern unsigned long pci_address_to_pio(phys_addr_t address);
|
extern unsigned long pci_address_to_pio(phys_addr_t address);
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in New Issue