• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/pci/hotplug/

Lines Matching refs:dn

45 	struct device_node *dn = NULL;
52 while ((dn = of_get_next_child(parent, dn))) {
53 rc = rpaphp_get_drc_props(dn, NULL, &name, NULL, NULL);
58 return dn;
82 struct device_node *dn;
84 dn = find_php_slot_pci_node(drc_name, "SLOT");
85 if (dn) {
87 return dn;
90 dn = find_php_slot_pci_node(drc_name, "PHB");
91 if (dn) {
93 return dn;
96 dn = find_vio_slot_node(drc_name);
97 if (dn) {
99 return dn;
107 * @dn: target &device_node
114 static struct slot *find_php_slot(struct device_node *dn)
121 if (slot->dn == dn)
142 static void dlpar_pci_add_bus(struct device_node *dn)
144 struct pci_dn *pdn = PCI_DN(dn);
148 eeh_add_device_tree_early(dn);
151 dev = of_create_pci_dev(dn, phb->bus, pdn->devfn);
154 __func__, dn->full_name);
161 of_scan_pci_bridge(dn, dev);
174 static int dlpar_add_pci_slot(char *drc_name, struct device_node *dn)
179 if (pcibios_find_pci_bus(dn))
183 dlpar_pci_add_bus(dn);
186 phb = PCI_DN(dn)->phb;
187 dev = dlpar_find_new_dev(phb->bus, dn);
202 if (rpaphp_add_slot(dn)) {
210 static int dlpar_remove_phb(char *drc_name, struct device_node *dn)
216 if (!pcibios_find_pci_bus(dn))
220 slot = find_php_slot(dn);
227 pdn = dn->data;
238 static int dlpar_add_phb(char *drc_name, struct device_node *dn)
242 if (PCI_DN(dn) && PCI_DN(dn)->phb) {
247 phb = init_phb_dynamic(dn);
251 if (rpaphp_add_slot(dn)) {
259 static int dlpar_add_vio_slot(char *drc_name, struct device_node *dn)
261 if (vio_find_node(dn))
264 if (!vio_register_device_node(dn)) {
287 struct device_node *dn = NULL;
295 dn = find_dlpar_node(drc_name, &node_type);
296 if (!dn) {
303 rc = dlpar_add_vio_slot(drc_name, dn);
306 rc = dlpar_add_pci_slot(drc_name, dn);
309 rc = dlpar_add_phb(drc_name, dn);
322 * @dn: &device_node
329 static int dlpar_remove_vio_slot(char *drc_name, struct device_node *dn)
333 vio_dev = vio_find_node(dn);
344 * @dn: &device_node
352 int dlpar_remove_pci_slot(char *drc_name, struct device_node *dn)
357 bus = pcibios_find_pci_bus(dn);
364 slot = find_php_slot(dn);
410 struct device_node *dn;
417 dn = find_dlpar_node(drc_name, &node_type);
418 if (!dn) {
425 rc = dlpar_remove_vio_slot(drc_name, dn);
428 rc = dlpar_remove_phb(drc_name, dn);
431 rc = dlpar_remove_pci_slot(drc_name, dn);