Lines Matching refs:dn
25 static void *dtb_node_find_property_value_of_size(const struct dtb_node *dn, in dtb_node_find_property_value_of_size() argument
28 struct dtb_property *prop = dtb_node_get_dtb_node_property(dn, propname, NULL); in dtb_node_find_property_value_of_size()
39 int dtb_node_read_u32(const struct dtb_node *dn, const char *propname, uint32_t *outp) in dtb_node_read_u32() argument
44 if (!dn) in dtb_node_read_u32()
46 val = dtb_node_find_property_value_of_size(dn, propname, sizeof(*outp)); in dtb_node_read_u32()
66 int dtb_node_read_u32_array(const struct dtb_node *dn, const char *propname, in dtb_node_read_u32_array() argument
72 val = dtb_node_find_property_value_of_size(dn, propname, in dtb_node_read_u32_array()
102 int dtb_node_read_u32_index(const struct dtb_node *dn, const char *propname, in dtb_node_read_u32_index() argument
108 if (!dn) in dtb_node_read_u32_index()
111 val = dtb_node_find_property_value_of_size(dn, propname, in dtb_node_read_u32_index()
125 int dtb_node_read_u64(const struct dtb_node *dn, const char *propname, uint64_t *outp) in dtb_node_read_u64() argument
130 if (!dn) in dtb_node_read_u64()
132 val = dtb_node_find_property_value_of_size(dn, propname, sizeof(*outp)); in dtb_node_read_u64()
154 int dtb_node_n_addr_cells(const struct dtb_node *dn) in dtb_node_n_addr_cells() argument
160 if (dn->parent) in dtb_node_n_addr_cells()
161 dn = dn->parent; in dtb_node_n_addr_cells()
162 ip = dtb_node_get_dtb_node_property_value(dn, "#address-cells", NULL); in dtb_node_n_addr_cells()
165 } while (dn->parent); in dtb_node_n_addr_cells()
171 int dtb_node_n_size_cells(const struct dtb_node *dn) in dtb_node_n_size_cells() argument
177 if (dn->parent) in dtb_node_n_size_cells()
178 dn = dn->parent; in dtb_node_n_size_cells()
179 ip = dtb_node_get_dtb_node_property_value(dn, "#size-cells", NULL); in dtb_node_n_size_cells()
182 } while (dn->parent); in dtb_node_n_size_cells()
188 int dtb_node_simple_addr_cells(const struct dtb_node *dn) in dtb_node_simple_addr_cells() argument
192 ip = dtb_node_get_dtb_node_property_value(dn, "#address-cells", NULL); in dtb_node_simple_addr_cells()
200 int dtb_node_simple_size_cells(const struct dtb_node *dn) in dtb_node_simple_size_cells() argument
204 ip = dtb_node_get_dtb_node_property_value(dn, "#size-cells", NULL); in dtb_node_simple_size_cells()
237 #define for_each_property_of_node(dn, pp) \ argument
238 for (pp = dn->properties; pp != NULL; pp = pp->next)
301 struct dtb_node *dn; in dtb_node_find_compatible_node() local
303 for_each_of_allnodes_from(from, dn) in dtb_node_find_compatible_node()
305 if (dtb_node_get_dtb_node_compatible_match(dn, compatible) && in dtb_node_find_compatible_node()
306 dtb_node_get(dn)) in dtb_node_find_compatible_node()
311 return dn; in dtb_node_find_compatible_node()
350 const struct dtb_node *dn; in dtb_node_find_all_nodes() local
354 dn = get_dtb_node_head(); in dtb_node_find_all_nodes()
358 dn = prev->child; in dtb_node_find_all_nodes()
366 dn = prev; in dtb_node_find_all_nodes()
367 while (dn->parent && !dn->sibling) in dtb_node_find_all_nodes()
368 dn = dn->parent; in dtb_node_find_all_nodes()
369 dn = dn->sibling; /* Might be null at the end of the tree */ in dtb_node_find_all_nodes()
372 return (struct dtb_node *)dn; in dtb_node_find_all_nodes()
398 const struct dtb_node *dn; in dtb_node_get_parent() local
403 dn = dtb_node_get(node->parent); in dtb_node_get_parent()
405 return (struct dtb_node *)dn; in dtb_node_get_parent()
410 struct dtb_node *dn; in dtb_node_find_node_by_phandle() local
415 for_each_of_allnodes(dn) if (dn->handle == handle) break; in dtb_node_find_node_by_phandle()
416 (void)dtb_node_get(dn); in dtb_node_find_node_by_phandle()
418 return dn; in dtb_node_find_node_by_phandle()
421 int dtb_node_property_match_string(const struct dtb_node *dn, const char *propname, in dtb_node_property_match_string() argument
424 const struct dtb_property *prop = dtb_node_get_dtb_node_property(dn, propname, NULL); in dtb_node_property_match_string()
460 int dtb_node_property_read_string_helper(const struct dtb_node *dn, in dtb_node_property_read_string_helper() argument
464 const struct dtb_property *prop = dtb_node_get_dtb_node_property(dn, propname, NULL); in dtb_node_property_read_string_helper()
487 static int __dtb_node_parse_phandle_with_args(const struct dtb_node *dn, in __dtb_node_parse_phandle_with_args() argument
501 list = dtb_node_get_dtb_node_property_value(dn, list_name, &size); in __dtb_node_parse_phandle_with_args()
534 dn->path); in __dtb_node_parse_phandle_with_args()
544 dn->path, cells_name, in __dtb_node_parse_phandle_with_args()
561 dn->path); in __dtb_node_parse_phandle_with_args()
617 struct dtb_node *dtb_node_parse_phandle(const struct dtb_node *dn, in dtb_node_parse_phandle() argument
625 if (__dtb_node_parse_phandle_with_args(dn, phandle_name, NULL, 0, index, in dtb_node_parse_phandle()
632 int dtb_node_parse_phandle_with_args(const struct dtb_node *dn, in dtb_node_parse_phandle_with_args() argument
639 return __dtb_node_parse_phandle_with_args(dn, list_name, cells_name, 0, in dtb_node_parse_phandle_with_args()
643 int dtb_node_count_phandle_with_args(const struct dtb_node *dn, in dtb_node_count_phandle_with_args() argument
646 return __dtb_node_parse_phandle_with_args(dn, list_name, cells_name, 0, in dtb_node_count_phandle_with_args()