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 {
49 * @target: target of the overlay operation
53 struct device_node *target;
99 struct target *target, const struct device_node *overlay_node);
166 nd.target = fragment->target;
173 pr_err("overlay changeset %s notifier error %d, target: %pOF\n",
174 of_overlay_action_name(action), ret, nd.target);
192 * "/fragment_name/__overlay/" portion of the value with the target
240 target_path = kasprintf(GFP_KERNEL, "%pOF", fragment->target);
277 * @target: where @overlay_prop will be placed
282 * entry to add @overlay_prop in @target, else add changeset entry to update
285 * @target may be either in the live devicetree or in a new subtree that
301 struct target *target, struct property *overlay_prop,
307 if (target->in_livetree)
313 if (target->in_livetree)
314 prop = of_find_property(target->np, overlay_prop->name, NULL);
322 target->np);
330 target->np);
349 if (!target->in_livetree) {
350 new_prop->next = target->np->deadprops;
351 target->np->deadprops = new_prop;
353 ret = of_changeset_add_property(&ovcs->cset, target->np,
356 ret = of_changeset_update_property(&ovcs->cset, target->np,
360 if (!of_node_check_flag(target->np, OF_OVERLAY))
362 target->np, new_prop->name);
375 * @target: where @node will be placed in live tree or changeset
378 * If @node does not already exist in @target, add changeset entry
379 * to add @node in @target.
381 * If @node already exists in @target, and the existing node has
406 struct target *target, struct device_node *node)
411 struct target target_child;
416 for_each_child_of_node(target->np, tchild)
425 tchild->parent = target->np;
454 target_child.in_livetree = target->in_livetree;
465 * @target: where to place @overlay_node in live tree
478 struct target *target, const struct device_node *overlay_node)
485 ret = add_changeset_property(ovcs, target, prop, 0);
488 target->np, prop->name, ret);
494 ret = add_changeset_node(ovcs, target, child);
497 target->np, child, ret);
510 struct target *target,
517 ret = add_changeset_property(ovcs, target, prop, 1);
520 target->np, prop->name, ret);
635 struct target target;
650 target.np = fragment->target;
651 target.in_livetree = true;
652 ret = build_changeset_next_level(ovcs, &target,
656 fragment->target);
664 target.np = fragment->target;
665 target.in_livetree = true;
666 ret = build_changeset_symbols_node(ovcs, &target,
670 fragment->target);
679 * Find the target node using a number of different strategies
682 * 1) "target" property containing the phandle of the target
683 * 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);
711 pr_err("find target, node: %pOF, path '%s' not found\n",
718 pr_err("find target, node: %pOF, path '%s' not found\n",
725 pr_err("find target, node: %pOF, no target property\n", info_node);
733 * @target_base: Point to the target node to apply overlay
804 fragment->target = find_target(node, target_base);
805 if (!fragment->target) {
824 fragment->target = of_find_node_by_path("/__symbols__");
826 if (!fragment->target) {
867 of_node_put(ovcs->fragments[i].target);
895 * @base: point to the target node to apply overlay
972 * @base: pointer for the target node to apply overlay