Lines Matching refs:blob

84 fdt_addr_t fdtdec_get_addr_size_fixed(const void *blob, int node,  in fdtdec_get_addr_size_fixed()  argument
95 prop = fdt_getprop(blob, node, prop_name, &len); in fdtdec_get_addr_size_fixed()
113 addr = fdt_translate_address(blob, node, prop_addr); in fdtdec_get_addr_size_fixed()
129 fdt_addr_t fdtdec_get_addr_size_auto_parent(const void *blob, int parent, in fdtdec_get_addr_size_auto_parent() argument
137 na = fdt_address_cells(blob, parent); in fdtdec_get_addr_size_auto_parent()
143 ns = fdt_size_cells(blob, parent); in fdtdec_get_addr_size_auto_parent()
151 return fdtdec_get_addr_size_fixed(blob, node, prop_name, index, na, in fdtdec_get_addr_size_auto_parent()
155 fdt_addr_t fdtdec_get_addr_size_auto_noparent(const void *blob, int node, in fdtdec_get_addr_size_auto_noparent() argument
163 parent = fdt_parent_offset(blob, node); in fdtdec_get_addr_size_auto_noparent()
169 return fdtdec_get_addr_size_auto_parent(blob, parent, node, prop_name, in fdtdec_get_addr_size_auto_noparent()
173 fdt_addr_t fdtdec_get_addr_size(const void *blob, int node, in fdtdec_get_addr_size() argument
178 return fdtdec_get_addr_size_fixed(blob, node, prop_name, 0, in fdtdec_get_addr_size()
183 fdt_addr_t fdtdec_get_addr(const void *blob, int node, in fdtdec_get_addr() argument
186 return fdtdec_get_addr_size(blob, node, prop_name, NULL); in fdtdec_get_addr()
190 int fdtdec_get_pci_addr(const void *blob, int node, enum fdt_pci_space type, in fdtdec_get_pci_addr() argument
205 cell = fdt_getprop(blob, node, prop_name, &len); in fdtdec_get_pci_addr()
244 int fdtdec_get_pci_vendev(const void *blob, int node, u16 *vendor, u16 *device) in fdtdec_get_pci_vendev() argument
249 list = fdt_getprop(blob, node, "compatible", &len); in fdtdec_get_pci_vendev()
299 uint64_t fdtdec_get_uint64(const void *blob, int node, const char *prop_name, in fdtdec_get_uint64() argument
305 cell64 = fdt_getprop(blob, node, prop_name, &length); in fdtdec_get_uint64()
312 int fdtdec_get_is_enabled(const void *blob, int node) in fdtdec_get_is_enabled() argument
323 cell = fdt_getprop(blob, node, "status", NULL); in fdtdec_get_is_enabled()
329 enum fdt_compat_id fdtdec_lookup(const void *blob, int node) in fdtdec_lookup() argument
335 if (0 == fdt_node_check_compatible(blob, node, in fdtdec_lookup()
341 int fdtdec_next_compatible(const void *blob, int node, in fdtdec_next_compatible() argument
344 return fdt_node_offset_by_compatible(blob, node, compat_names[id]); in fdtdec_next_compatible()
347 int fdtdec_next_compatible_subnode(const void *blob, int node, in fdtdec_next_compatible_subnode() argument
351 node = fdt_next_node(blob, node, depthp); in fdtdec_next_compatible_subnode()
356 blob, node, compat_names[id])) in fdtdec_next_compatible_subnode()
362 int fdtdec_next_alias(const void *blob, const char *name, in fdtdec_next_alias() argument
372 node = fdt_path_offset(blob, str); in fdtdec_next_alias()
375 err = fdt_node_check_compatible(blob, node, compat_names[id]); in fdtdec_next_alias()
384 int fdtdec_find_aliases_for_id(const void *blob, const char *name, in fdtdec_find_aliases_for_id() argument
389 return fdtdec_add_aliases_for_id(blob, name, id, node_list, maxcount); in fdtdec_find_aliases_for_id()
393 int fdtdec_add_aliases_for_id(const void *blob, const char *name, in fdtdec_add_aliases_for_id() argument
405 alias_node = fdt_path_offset(blob, "/aliases"); in fdtdec_add_aliases_for_id()
415 node = fdtdec_next_compatible(blob, node, id); in fdtdec_add_aliases_for_id()
424 for (offset = fdt_first_property_offset(blob, alias_node); in fdtdec_add_aliases_for_id()
426 offset = fdt_next_property_offset(blob, offset)) { in fdtdec_add_aliases_for_id()
433 prop = fdt_get_property_by_offset(blob, offset, NULL); in fdtdec_add_aliases_for_id()
434 path = fdt_string(blob, fdt32_to_cpu(prop->nameoff)); in fdtdec_add_aliases_for_id()
436 node = fdt_path_offset(blob, prop->data); in fdtdec_add_aliases_for_id()
460 fdt_get_name(blob, node, NULL), in fdtdec_add_aliases_for_id()
469 if (fdtdec_get_is_enabled(blob, node)) { in fdtdec_add_aliases_for_id()
475 fdt_get_name(blob, node, NULL)); in fdtdec_add_aliases_for_id()
490 fdtdec_get_is_enabled(blob, nodes[j])) in fdtdec_add_aliases_for_id()
507 int fdtdec_get_alias_seq(const void *blob, const char *base, int offset, in fdtdec_get_alias_seq() argument
516 find_name = fdt_get_name(blob, offset, &find_namelen); in fdtdec_get_alias_seq()
519 aliases = fdt_path_offset(blob, "/aliases"); in fdtdec_get_alias_seq()
520 for (prop_offset = fdt_first_property_offset(blob, aliases); in fdtdec_get_alias_seq()
522 prop_offset = fdt_next_property_offset(blob, prop_offset)) { in fdtdec_get_alias_seq()
528 prop = fdt_getprop_by_offset(blob, prop_offset, &name, &len); in fdtdec_get_alias_seq()
549 const char *fdtdec_get_chosen_prop(const void *blob, const char *name) in fdtdec_get_chosen_prop() argument
553 if (!blob) in fdtdec_get_chosen_prop()
555 chosen_node = fdt_path_offset(blob, "/chosen"); in fdtdec_get_chosen_prop()
556 return fdt_getprop(blob, chosen_node, name, NULL); in fdtdec_get_chosen_prop()
559 int fdtdec_get_chosen_node(const void *blob, const char *name) in fdtdec_get_chosen_node() argument
563 prop = fdtdec_get_chosen_prop(blob, name); in fdtdec_get_chosen_node()
566 return fdt_path_offset(blob, prop); in fdtdec_get_chosen_node()
607 int fdtdec_lookup_phandle(const void *blob, int node, const char *prop_name) in fdtdec_lookup_phandle() argument
613 phandle = fdt_getprop(blob, node, prop_name, NULL); in fdtdec_lookup_phandle()
617 lookup = fdt_node_offset_by_phandle(blob, fdt32_to_cpu(*phandle)); in fdtdec_lookup_phandle()
632 static const void *get_prop_check_min_len(const void *blob, int node, in get_prop_check_min_len() argument
639 cell = fdt_getprop(blob, node, prop_name, &len); in get_prop_check_min_len()
649 int fdtdec_get_int_array(const void *blob, int node, const char *prop_name, in fdtdec_get_int_array() argument
656 cell = get_prop_check_min_len(blob, node, prop_name, in fdtdec_get_int_array()
665 int fdtdec_get_int_array_count(const void *blob, int node, in fdtdec_get_int_array_count() argument
673 cell = fdt_getprop(blob, node, prop_name, &len); in fdtdec_get_int_array_count()
685 const u32 *fdtdec_locate_array(const void *blob, int node, in fdtdec_locate_array() argument
691 cell = get_prop_check_min_len(blob, node, prop_name, in fdtdec_locate_array()
696 int fdtdec_get_bool(const void *blob, int node, const char *prop_name) in fdtdec_get_bool() argument
702 cell = fdt_getprop(blob, node, prop_name, &len); in fdtdec_get_bool()
706 int fdtdec_parse_phandle_with_args(const void *blob, int src_node, in fdtdec_parse_phandle_with_args() argument
719 list = fdt_getprop(blob, src_node, list_name, &size); in fdtdec_parse_phandle_with_args()
745 node = fdt_node_offset_by_phandle(blob, in fdtdec_parse_phandle_with_args()
749 fdt_get_name(blob, src_node, in fdtdec_parse_phandle_with_args()
756 count = fdtdec_get_int(blob, node, cells_name, in fdtdec_parse_phandle_with_args()
760 fdt_get_name(blob, src_node, in fdtdec_parse_phandle_with_args()
763 fdt_get_name(blob, node, in fdtdec_parse_phandle_with_args()
777 fdt_get_name(blob, src_node, NULL)); in fdtdec_parse_phandle_with_args()
798 fdt_get_name(blob, src_node, in fdtdec_parse_phandle_with_args()
830 int fdtdec_get_child_count(const void *blob, int node) in fdtdec_get_child_count() argument
835 fdt_for_each_subnode(subnode, blob, node) in fdtdec_get_child_count()
841 int fdtdec_get_byte_array(const void *blob, int node, const char *prop_name, in fdtdec_get_byte_array() argument
847 cell = get_prop_check_min_len(blob, node, prop_name, count, &err); in fdtdec_get_byte_array()
853 const u8 *fdtdec_locate_byte_array(const void *blob, int node, in fdtdec_locate_byte_array() argument
859 cell = get_prop_check_min_len(blob, node, prop_name, count, &err); in fdtdec_locate_byte_array()
865 int fdtdec_get_config_int(const void *blob, const char *prop_name, in fdtdec_get_config_int() argument
871 config_node = fdt_path_offset(blob, "/config"); in fdtdec_get_config_int()
874 return fdtdec_get_int(blob, config_node, prop_name, default_val); in fdtdec_get_config_int()
877 int fdtdec_get_config_bool(const void *blob, const char *prop_name) in fdtdec_get_config_bool() argument
883 config_node = fdt_path_offset(blob, "/config"); in fdtdec_get_config_bool()
886 prop = fdt_get_property(blob, config_node, prop_name, NULL); in fdtdec_get_config_bool()
891 char *fdtdec_get_config_string(const void *blob, const char *prop_name) in fdtdec_get_config_string() argument
898 nodeoffset = fdt_path_offset(blob, "/config"); in fdtdec_get_config_string()
902 nodep = fdt_getprop(blob, nodeoffset, prop_name, &len); in fdtdec_get_config_string()
909 int fdtdec_decode_region(const void *blob, int node, const char *prop_name, in fdtdec_decode_region() argument
915 debug("%s: %s: %s\n", __func__, fdt_get_name(blob, node, NULL), in fdtdec_decode_region()
917 cell = fdt_getprop(blob, node, prop_name, &len); in fdtdec_decode_region()
988 int fdtdec_decode_memory_region(const void *blob, int config_node, in fdtdec_decode_memory_region() argument
999 config_node = fdt_path_offset(blob, "/config"); in fdtdec_decode_memory_region()
1010 mem = fdt_getprop(blob, config_node, prop_name, NULL); in fdtdec_decode_memory_region()
1017 node = fdt_path_offset(blob, mem); in fdtdec_decode_memory_region()
1028 if (fdtdec_decode_region(blob, node, "reg", &base, &size)) { in fdtdec_decode_memory_region()
1036 if (fdtdec_decode_region(blob, config_node, prop_name, &offset, in fdtdec_decode_memory_region()
1049 static int decode_timing_property(const void *blob, int node, const char *name, in decode_timing_property() argument
1055 prop = fdt_getprop(blob, node, name, &length); in decode_timing_property()
1058 fdt_get_name(blob, node, NULL), name); in decode_timing_property()
1063 result->typ = fdtdec_get_int(blob, node, name, 0); in decode_timing_property()
1067 ret = fdtdec_get_int_array(blob, node, name, &result->min, 3); in decode_timing_property()
1073 int fdtdec_decode_display_timing(const void *blob, int parent, int index, in fdtdec_decode_display_timing() argument
1080 timings_node = fdt_subnode_offset(blob, parent, "display-timings"); in fdtdec_decode_display_timing()
1084 for (i = 0, node = fdt_first_subnode(blob, timings_node); in fdtdec_decode_display_timing()
1086 node = fdt_next_subnode(blob, node)) in fdtdec_decode_display_timing()
1094 ret |= decode_timing_property(blob, node, "hback-porch", in fdtdec_decode_display_timing()
1096 ret |= decode_timing_property(blob, node, "hfront-porch", in fdtdec_decode_display_timing()
1098 ret |= decode_timing_property(blob, node, "hactive", &dt->hactive); in fdtdec_decode_display_timing()
1099 ret |= decode_timing_property(blob, node, "hsync-len", &dt->hsync_len); in fdtdec_decode_display_timing()
1100 ret |= decode_timing_property(blob, node, "vback-porch", in fdtdec_decode_display_timing()
1102 ret |= decode_timing_property(blob, node, "vfront-porch", in fdtdec_decode_display_timing()
1104 ret |= decode_timing_property(blob, node, "vactive", &dt->vactive); in fdtdec_decode_display_timing()
1105 ret |= decode_timing_property(blob, node, "vsync-len", &dt->vsync_len); in fdtdec_decode_display_timing()
1106 ret |= decode_timing_property(blob, node, "clock-frequency", in fdtdec_decode_display_timing()
1110 val = fdtdec_get_int(blob, node, "vsync-active", -1); in fdtdec_decode_display_timing()
1115 val = fdtdec_get_int(blob, node, "hsync-active", -1); in fdtdec_decode_display_timing()
1120 val = fdtdec_get_int(blob, node, "de-active", -1); in fdtdec_decode_display_timing()
1125 val = fdtdec_get_int(blob, node, "pixelclk-active", -1); in fdtdec_decode_display_timing()
1131 if (fdtdec_get_bool(blob, node, "interlaced")) in fdtdec_decode_display_timing()
1133 if (fdtdec_get_bool(blob, node, "doublescan")) in fdtdec_decode_display_timing()
1135 if (fdtdec_get_bool(blob, node, "doubleclk")) in fdtdec_decode_display_timing()