dev = rpaphp_find_pci_dev(dn); if (!dev) { printk(KERN_ERR "%s: failed to add pci device\n", __FUNCTION__); return NULL; 
dev = dlpar_find_new_dev(hose->bus, dn); if (dev) { if (dev->hdr_type != PCI_HEADER_TYPE_BRIDGE) { printk(KERN_ERR "%s: unexpected header type %d\n", __FUNCTION__, dev->hdr_type); return NULL; }  if (pci_add_secondary_bus(dn, dev)) return NULL; 
static struct pci_dev *dlpar_pci_add_bus(struct device_node *dn){	struct pci_controller *hose = dn->phb;	struct pci_dev *dev = NULL;	/* Scan phb bus for EADS device, adding new one to bus->devices */	if (!pci_scan_single_device(hose->bus, dn->devfn)) {		printk(KERN_ERR "%s: found no device on bus\n", __FUNCTION__);		return NULL;	}	/* Add new devices to global lists.  Register in proc, sysfs. */	pci_bus_add_devices(hose->bus);	/* Confirm new bridge dev was created */	dev = rpaphp_find_pci_dev(dn);	if (!dev) {		printk(KERN_ERR "%s: failed to add pci device\n", __FUNCTION__);		return NULL;	}	if (dev->hdr_type != PCI_HEADER_TYPE_BRIDGE) {		printk(KERN_ERR "%s: unexpected header type %d\n",			__FUNCTION__, dev->hdr_type);		return NULL;	}	if (pci_add_secondary_bus(dn, dev))		return NULL;	return dev;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/0945cd5f908a09ad99bf42d7ded16f26f24f317d/rpadlpar_core.c/clean/drivers/pci/hotplug/rpadlpar_core.c