extern unsigned long isa_io_base;
-extern void pci_setup_pci_controller(struct pci_controller *hose);
+extern struct pci_controller* pci_alloc_pci_controller(enum phb_types controller_type);
+extern struct pci_controller* pci_alloc_phb_dynamic(enum phb_types controller_type);
extern void pci_setup_phb_io(struct pci_controller *hose, int primary);
extern struct pci_controller* pci_find_hose_for_OF_device(struct device_node* node);
extern struct list_head hose_list;
extern int global_phb_number;
+/*******************************************************************
+ * Platform functions that are brand specific implementation.
+ *******************************************************************/
extern unsigned long find_and_init_phbs(void);
extern struct pci_dev *ppc64_isabridge_dev; /* may be NULL if no ISA bus */
-/* PCI device_node operations */
+/*******************************************************************
+ * PCI device_node operations
+ *******************************************************************/
struct device_node;
typedef void *(*traverse_func)(struct device_node *me, void *data);
void *traverse_pci_devices(struct device_node *start, traverse_func pre,
void init_pci_config_tokens (void);
unsigned long get_phb_buid (struct device_node *);
-extern unsigned long pci_probe_only;
-extern unsigned long pci_assign_all_buses;
-extern int pci_read_irq_line(struct pci_dev *pci_dev);
#endif /* __PPC_KERNEL_PCI_H__ */