Lines Matching refs:tree

63 	oftree tree;
72 log_err("Failed to create live tree: err=%d\n", ret);
75 tree = oftree_from_np(root);
77 return tree;
87 log_err("Invalid device tree blob header\n");
91 /* register the new tree */
94 log_debug("oftree: registered tree %d: %p\n", i, fdt);
103 tree.fdt = fdt;
105 return tree;
110 oftree tree = oftree_null();
119 tree = oftree_from_np(root);
128 /* register the new tree with a small size */
136 tree.fdt = fdt;
138 *treep = tree;
143 void oftree_dispose(oftree tree)
146 of_live_free(tree.np);
155 log_debug("Invalid tree ID %x\n", i);
200 oftree tree;
209 tree.fdt = fdt;
211 return tree;
217 * @other_node: Node in the same tree to use as a reference
251 int oftree_to_fdt(oftree tree, struct abuf *buf)
256 ret = of_live_flatten(ofnode_to_np(oftree_root(tree)), buf);
260 void *fdt = oftree_lookup_fdt(tree);
270 * ofnode_from_tree_offset() - get an ofnode from a tree offset (flat tree)
272 * Looks up the tree and returns an ofnode with the correct of_offset (i.e.
273 * containing the tree ID).
275 * If @offset is < 0 then this returns an ofnode with that offset and no tree
278 * @tree: tree to check
279 * @offset: offset within that tree (can be < 0)
282 static ofnode ofnode_from_tree_offset(oftree tree, int offset)
287 int tree_id = oftree_find(tree.fdt);
721 ofnode oftree_get_by_phandle(oftree tree, uint phandle)
726 node = np_to_ofnode(of_find_node_by_phandle(tree.np, phandle));
728 node = ofnode_from_tree_offset(tree,
729 fdt_node_offset_by_phandle(oftree_lookup_fdt(tree),
951 ofnode oftree_root(oftree tree)
954 return np_to_ofnode(tree.np);
956 return ofnode_from_tree_offset(tree, 0);
960 ofnode oftree_path(oftree tree, const char *path)
963 return np_to_ofnode(of_find_node_opts_by_path(tree.np, path,
965 } else if (*path != '/' && tree.fdt != gd->fdt_blob) {
968 int offset = fdt_path_offset(tree.fdt, path);
970 return ofnode_from_tree_offset(tree, offset);