/* Scan phb bus for EADS device, adding new one to bus->devices */ if (!pci_scan_single_device(hose->bus, pdn->devfn)) { printk(KERN_ERR "%s: found no device on bus\n", __FUNCTION__); 
rpaphp_eeh_init_nodes(dn); /* Add EADS device to PHB bus, adding new entry to bus->devices */ dev = of_create_pci_dev(dn, phb->bus, pdn->devfn); if (!dev) { printk(KERN_ERR "%s: failed to create pci dev for %s\n", __FUNCTION__, dn->full_name); 
static struct pci_dev *dlpar_pci_add_bus(struct device_node *dn){	struct pci_dn *pdn = dn->data;	struct pci_controller *hose = pdn->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, pdn->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 = 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;	}	return dev;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/5fa80fcdca9d20d30c9ecec30d4dbff4ed93a5c6/rpadlpar_core.c/clean/drivers/pci/hotplug/rpadlpar_core.c