Lines Matching refs:dn
345 static int dlpar_online_cpu(struct device_node *dn) in dlpar_online_cpu() argument
353 intserv = of_get_property(dn, "ibm,ppc-interrupt-server#s", &len); in dlpar_online_cpu()
435 struct device_node *dn, *parent; in dlpar_cpu_add() local
466 dn = dlpar_configure_connector(cpu_to_be32(drc_index), parent); in dlpar_cpu_add()
467 if (!dn) { in dlpar_cpu_add()
475 rc = dlpar_attach_node(dn, parent); in dlpar_cpu_add()
483 dn->name, rc, drc_index); in dlpar_cpu_add()
487 dlpar_free_cc_nodes(dn); in dlpar_cpu_add()
492 rc = dlpar_online_cpu(dn); in dlpar_cpu_add()
496 dn->name, rc, drc_index); in dlpar_cpu_add()
498 rc = dlpar_detach_node(dn); in dlpar_cpu_add()
505 pr_debug("Successfully added CPU %s, drc index: %x\n", dn->name, in dlpar_cpu_add()
510 static int dlpar_offline_cpu(struct device_node *dn) in dlpar_offline_cpu() argument
518 intserv = of_get_property(dn, "ibm,ppc-interrupt-server#s", &len); in dlpar_offline_cpu()
566 static ssize_t dlpar_cpu_remove(struct device_node *dn, u32 drc_index) in dlpar_cpu_remove() argument
571 dn->name, drc_index); in dlpar_cpu_remove()
573 rc = dlpar_offline_cpu(dn); in dlpar_cpu_remove()
575 pr_warn("Failed to offline CPU %s, rc: %d\n", dn->name, rc); in dlpar_cpu_remove()
582 drc_index, dn->name, rc); in dlpar_cpu_remove()
583 dlpar_online_cpu(dn); in dlpar_cpu_remove()
587 rc = dlpar_detach_node(dn); in dlpar_cpu_remove()
591 pr_warn("Failed to detach CPU %s, rc: %d", dn->name, rc); in dlpar_cpu_remove()
595 dlpar_online_cpu(dn); in dlpar_cpu_remove()
606 struct device_node *dn; in cpu_drc_index_to_dn() local
610 for_each_node_by_type(dn, "cpu") { in cpu_drc_index_to_dn()
611 rc = of_property_read_u32(dn, "ibm,my-drc-index", &my_index); in cpu_drc_index_to_dn()
619 return dn; in cpu_drc_index_to_dn()
624 struct device_node *dn; in dlpar_cpu_remove_by_index() local
627 dn = cpu_drc_index_to_dn(drc_index); in dlpar_cpu_remove_by_index()
628 if (!dn) { in dlpar_cpu_remove_by_index()
634 rc = dlpar_cpu_remove(dn, drc_index); in dlpar_cpu_remove_by_index()
635 of_node_put(dn); in dlpar_cpu_remove_by_index()
641 struct device_node *dn; in find_dlpar_cpus_to_remove() local
648 for_each_node_by_type(dn, "cpu") { in find_dlpar_cpus_to_remove()
652 of_node_put(dn); in find_dlpar_cpus_to_remove()
659 rc = of_property_read_u32(dn, "ibm,my-drc-index", in find_dlpar_cpus_to_remove()
663 dn->name); in find_dlpar_cpus_to_remove()
664 of_node_put(dn); in find_dlpar_cpus_to_remove()
804 struct device_node *dn; in dlpar_cpu_readd() local
810 dn = dev->of_node; in dlpar_cpu_readd()
812 rc = of_property_read_u32(dn, "ibm,my-drc-index", &drc_index); in dlpar_cpu_readd()
876 struct device_node *dn; in dlpar_cpu_release() local
880 dn = of_find_node_by_path(buf); in dlpar_cpu_release()
881 if (!dn) in dlpar_cpu_release()
884 rc = of_property_read_u32(dn, "ibm,my-drc-index", &drc_index); in dlpar_cpu_release()
886 of_node_put(dn); in dlpar_cpu_release()
890 rc = dlpar_cpu_remove(dn, drc_index); in dlpar_cpu_release()
891 of_node_put(dn); in dlpar_cpu_release()
906 err = pseries_add_processor(rd->dn); in pseries_smp_notifier()
909 pseries_remove_processor(rd->dn); in pseries_smp_notifier()