Lines Matching refs:dn
43 struct device_node *dn = NULL; in find_vio_slot_node() local
49 while ((dn = of_get_next_child(parent, dn))) { in find_vio_slot_node()
50 rc = rpaphp_check_drc_props(dn, drc_name, NULL); in find_vio_slot_node()
55 return dn; in find_vio_slot_node()
76 struct device_node *dn; in find_dlpar_node() local
78 dn = find_php_slot_pci_node(drc_name, "SLOT"); in find_dlpar_node()
79 if (dn) { in find_dlpar_node()
81 return dn; in find_dlpar_node()
84 dn = find_php_slot_pci_node(drc_name, "PHB"); in find_dlpar_node()
85 if (dn) { in find_dlpar_node()
87 return dn; in find_dlpar_node()
90 dn = find_vio_slot_node(drc_name); in find_dlpar_node()
91 if (dn) { in find_dlpar_node()
93 return dn; in find_dlpar_node()
108 static struct slot *find_php_slot(struct device_node *dn) in find_php_slot() argument
114 if (slot->dn == dn) in find_php_slot()
135 static void dlpar_pci_add_bus(struct device_node *dn) in dlpar_pci_add_bus() argument
137 struct pci_dn *pdn = PCI_DN(dn); in dlpar_pci_add_bus()
144 dev = of_create_pci_dev(dn, phb->bus, pdn->devfn); in dlpar_pci_add_bus()
147 __func__, dn); in dlpar_pci_add_bus()
166 static int dlpar_add_pci_slot(char *drc_name, struct device_node *dn) in dlpar_add_pci_slot() argument
171 if (pci_find_bus_by_node(dn)) in dlpar_add_pci_slot()
175 dlpar_pci_add_bus(dn); in dlpar_add_pci_slot()
178 phb = PCI_DN(dn)->phb; in dlpar_add_pci_slot()
179 dev = dlpar_find_new_dev(phb->bus, dn); in dlpar_add_pci_slot()
194 if (rpaphp_add_slot(dn)) { in dlpar_add_pci_slot()
202 static int dlpar_remove_phb(char *drc_name, struct device_node *dn) in dlpar_remove_phb() argument
208 if (!pci_find_bus_by_node(dn)) in dlpar_remove_phb()
212 slot = find_php_slot(dn); in dlpar_remove_phb()
219 pdn = dn->data; in dlpar_remove_phb()
230 static int dlpar_add_phb(char *drc_name, struct device_node *dn) in dlpar_add_phb() argument
234 if (PCI_DN(dn) && PCI_DN(dn)->phb) { in dlpar_add_phb()
239 phb = init_phb_dynamic(dn); in dlpar_add_phb()
243 if (rpaphp_add_slot(dn)) { in dlpar_add_phb()
251 static int dlpar_add_vio_slot(char *drc_name, struct device_node *dn) in dlpar_add_vio_slot() argument
255 vio_dev = vio_find_node(dn); in dlpar_add_vio_slot()
261 if (!vio_register_device_node(dn)) { in dlpar_add_vio_slot()
284 struct device_node *dn = NULL; in dlpar_add_slot() local
292 dn = find_dlpar_node(drc_name, &node_type); in dlpar_add_slot()
293 if (!dn) { in dlpar_add_slot()
300 rc = dlpar_add_vio_slot(drc_name, dn); in dlpar_add_slot()
303 rc = dlpar_add_pci_slot(drc_name, dn); in dlpar_add_slot()
306 rc = dlpar_add_phb(drc_name, dn); in dlpar_add_slot()
326 static int dlpar_remove_vio_slot(char *drc_name, struct device_node *dn) in dlpar_remove_vio_slot() argument
330 vio_dev = vio_find_node(dn); in dlpar_remove_vio_slot()
352 int dlpar_remove_pci_slot(char *drc_name, struct device_node *dn) in dlpar_remove_pci_slot() argument
360 bus = pci_find_bus_by_node(dn); in dlpar_remove_pci_slot()
369 slot = find_php_slot(dn); in dlpar_remove_pci_slot()
418 struct device_node *dn; in dlpar_remove_slot() local
425 dn = find_dlpar_node(drc_name, &node_type); in dlpar_remove_slot()
426 if (!dn) { in dlpar_remove_slot()
433 rc = dlpar_remove_vio_slot(drc_name, dn); in dlpar_remove_slot()
436 rc = dlpar_remove_phb(drc_name, dn); in dlpar_remove_slot()
439 rc = dlpar_remove_pci_slot(drc_name, dn); in dlpar_remove_slot()