Lines Matching defs:dtb
26 int fdt_read_uint32_array(const void *dtb, int node, const char *prop_name,
32 assert(dtb != NULL);
38 prop = fdt_getprop(dtb, node, prop_name, &value_len);
40 VERBOSE("Couldn't find property %s in dtb\n", prop_name);
57 int fdt_read_uint32(const void *dtb, int node, const char *prop_name,
60 return fdt_read_uint32_array(dtb, node, prop_name, 1, value);
63 uint32_t fdt_read_uint32_default(const void *dtb, int node,
67 int err = fdt_read_uint32(dtb, node, prop_name, &ret);
76 int fdt_read_uint64(const void *dtb, int node, const char *prop_name,
82 ret = fdt_read_uint32_array(dtb, node, prop_name, 2, array);
96 int fdtw_read_bytes(const void *dtb, int node, const char *prop,
102 assert(dtb != NULL);
108 ptr = fdt_getprop_namelen(dtb, node, prop, (int)strlen(prop),
111 WARN("Couldn't find property %s in dtb\n", prop);
131 int fdtw_read_string(const void *dtb, int node, const char *prop,
137 assert(dtb != NULL);
143 ptr = fdt_getprop_namelen(dtb, node, prop, (int)strlen(prop), NULL);
145 WARN("Couldn't find property %s in dtb\n", prop);
151 WARN("String of property %s in dtb has been truncated\n", prop);
162 int fdtw_read_uuid(const void *dtb, int node, const char *prop,
169 assert(dtb != NULL);
178 err = fdtw_read_string(dtb, node, prop, uuid_string,
195 int fdtw_write_inplace_cells(void *dtb, int node, const char *prop,
200 assert(dtb != NULL);
216 err = fdt_setprop_inplace(dtb, node, prop, value, len);
230 int fdtw_write_inplace_bytes(void *dtb, int node, const char *prop,
236 assert(dtb != NULL);
244 ptr = fdt_getprop_namelen(dtb, node, prop, namelen, &value_len);
246 WARN("Couldn't find property %s in dtb\n", prop);
257 err = fdt_setprop_inplace_namelen_partial(dtb, node, prop,
278 int fdt_get_reg_props_by_index(const void *dtb, int node, int index,
286 parent = fdt_parent_offset(dtb, node);
291 ac = fdt_address_cells(dtb, parent);
292 sc = fdt_size_cells(dtb, parent);
296 prop = fdt_getprop(dtb, node, "reg", &len);
298 WARN("Couldn't find \"reg\" property in dtb\n");
322 int fdt_get_reg_props_by_name(const void *dtb, int node, const char *name,
327 index = fdt_stringlist_search(dtb, node, "reg-names", name);
332 return fdt_get_reg_props_by_index(dtb, node, index, base, size);
340 int fdt_get_stdout_node_offset(const void *dtb)
347 node = fdt_path_offset(dtb, "/secure-chosen");
349 node = fdt_path_offset(dtb, "/chosen");
355 prop = fdt_getprop(dtb, node, "stdout-path", NULL);
370 return fdt_path_offset_namelen(dtb, prop, len);
374 path = fdt_get_alias_namelen(dtb, prop, len);
379 return fdt_path_offset(dtb, path);
425 static uint64_t fdtw_search_all_xlat_entries(const void *dtb,
443 parent_bus_node = fdt_parent_offset(dtb, local_bus);
444 self_addr_cells = fdt_address_cells(dtb, local_bus);
445 self_size_cells = fdt_size_cells(dtb, local_bus);
446 parent_addr_cells = fdt_address_cells(dtb, parent_bus_node);
476 base_address, fdt_get_name(dtb, local_bus, NULL));
528 uint64_t fdtw_translate_address(const void *dtb, int node,
535 local_bus_node = fdt_parent_offset(dtb, node);
536 node_name = fdt_get_name(dtb, local_bus_node, NULL);
546 const struct fdt_property *property = fdt_get_property(dtb,
562 return fdtw_translate_address(dtb, local_bus_node, base_address);
567 global_address = fdtw_search_all_xlat_entries(dtb, property,
575 return fdtw_translate_address(dtb, local_bus_node, global_address);
586 int fdtw_for_each_cpu(const void *dtb,
587 int (*callback)(const void *dtb, int node, uintptr_t mpidr))
592 parent = fdt_path_offset(dtb, "/cpus");
597 fdt_for_each_subnode(node, dtb, parent) {
603 name = fdt_get_name(dtb, node, &len);
608 ret = fdt_get_reg_props_by_index(dtb, node, 0, &mpidr, NULL);
613 ret = callback(dtb, node, mpidr);