Lines Matching refs:target

27  * struct target - info about current target node as recursing through overlay
34 * into. When recursing to the next level of the overlay subtree, the target
37 * subtree does not exist at the same level in the live devicetree, target->np
41 struct target {
48 * @target: target of the overlay operation
53 struct device_node *target;
95 struct target *target, const struct device_node *overlay_node);
168 nd.target = fragment->target;
175 pr_err("overlay changeset %s notifier error %d, target: %pOF\n",
176 of_overlay_action_name[action], ret, nd.target);
194 * "/fragment_name/__overlay/" portion of the value with the target
242 target_path = kasprintf(GFP_KERNEL, "%pOF", fragment->target);
279 * @target: where @overlay_prop will be placed
284 * entry to add @overlay_prop in @target, else add changeset entry to update
287 * @target may be either in the live devicetree or in a new subtree that
303 struct target *target, struct property *overlay_prop,
309 if (target->in_livetree)
315 if (target->in_livetree)
316 prop = of_find_property(target->np, overlay_prop->name, NULL);
324 target->np);
332 target->np);
351 if (!target->in_livetree) {
352 new_prop->next = target->np->deadprops;
353 target->np->deadprops = new_prop;
355 ret = of_changeset_add_property(&ovcs->cset, target->np,
358 ret = of_changeset_update_property(&ovcs->cset, target->np,
362 if (!of_node_check_flag(target->np, OF_OVERLAY))
364 target->np, new_prop->name);
377 * @target: where @node will be placed in live tree or changeset
380 * If @node does not already exist in @target, add changeset entry
381 * to add @node in @target.
383 * If @node already exists in @target, and the existing node has
408 struct target *target, struct device_node *node)
413 struct target target_child;
418 for_each_child_of_node(target->np, tchild)
427 tchild->parent = target->np;
456 target_child.in_livetree = target->in_livetree;
467 * @target: where to place @overlay_node in live tree
480 struct target *target, const struct device_node *overlay_node)
487 ret = add_changeset_property(ovcs, target, prop, 0);
490 target->np, prop->name, ret);
496 ret = add_changeset_node(ovcs, target, child);
499 target->np, child, ret);
512 struct target *target,
519 ret = add_changeset_property(ovcs, target, prop, 1);
522 target->np, prop->name, ret);
637 struct target target;
652 target.np = fragment->target;
653 target.in_livetree = true;
654 ret = build_changeset_next_level(ovcs, &target,
658 fragment->target);
666 target.np = fragment->target;
667 target.in_livetree = true;
668 ret = build_changeset_symbols_node(ovcs, &target,
672 fragment->target);
681 * Find the target node using a number of different strategies
684 * 1) "target" property containing the phandle of the target
685 * 2) "target-path" property containing the path of the target
694 ret = of_property_read_u32(info_node, "target", &val);
698 pr_err("find target, node: %pOF, phandle 0x%x not found\n",
703 ret = of_property_read_string(info_node, "target-path", &path);
707 pr_err("find target, node: %pOF, path '%s' not found\n",
712 pr_err("find target, node: %pOF, no target property\n", info_node);
793 fragment->target = find_target(node);
794 if (!fragment->target) {
813 fragment->target = of_find_node_by_path("/__symbols__");
815 if (!fragment->target) {
857 of_node_put(ovcs->fragments[i].target);