Lines Matching refs:offset
58 static int _fdt_nodename_eq(const void *fdt, int offset, in _fdt_nodename_eq() argument
61 const char *p = fdt_offset_ptr(fdt, offset + FDT_TAGSIZE, len+1); in _fdt_nodename_eq()
108 static int _nextprop(const void *fdt, int offset) in _nextprop() argument
114 tag = fdt_next_tag(fdt, offset, &nextoffset); in _nextprop()
124 return offset; in _nextprop()
126 offset = nextoffset; in _nextprop()
132 int fdt_subnode_offset_namelen(const void *fdt, int offset, in fdt_subnode_offset_namelen() argument
140 (offset >= 0) && (depth >= 0); in fdt_subnode_offset_namelen()
141 offset = fdt_next_node(fdt, offset, &depth)) in fdt_subnode_offset_namelen()
143 && _fdt_nodename_eq(fdt, offset, name, namelen)) in fdt_subnode_offset_namelen()
144 return offset; in fdt_subnode_offset_namelen()
148 return offset; /* error */ in fdt_subnode_offset_namelen()
161 int offset = 0; in fdt_path_offset() local
175 offset = fdt_path_offset(fdt, p); in fdt_path_offset()
186 return offset; in fdt_path_offset()
191 offset = fdt_subnode_offset_namelen(fdt, offset, p, q-p); in fdt_path_offset()
192 if (offset < 0) in fdt_path_offset()
193 return offset; in fdt_path_offset()
198 return offset; in fdt_path_offset()
223 int offset; in fdt_first_property_offset() local
225 if ((offset = _fdt_check_node_offset(fdt, nodeoffset)) < 0) in fdt_first_property_offset()
226 return offset; in fdt_first_property_offset()
228 return _nextprop(fdt, offset); in fdt_first_property_offset()
231 int fdt_next_property_offset(const void *fdt, int offset) in fdt_next_property_offset() argument
233 if ((offset = _fdt_check_prop_offset(fdt, offset)) < 0) in fdt_next_property_offset()
234 return offset; in fdt_next_property_offset()
236 return _nextprop(fdt, offset); in fdt_next_property_offset()
240 int offset, in fdt_get_property_by_offset() argument
246 if ((err = _fdt_check_prop_offset(fdt, offset)) < 0) { in fdt_get_property_by_offset()
252 prop = _fdt_offset_ptr(fdt, offset); in fdt_get_property_by_offset()
261 int offset, in fdt_get_property_namelen() argument
265 for (offset = fdt_first_property_offset(fdt, offset); in fdt_get_property_namelen()
266 (offset >= 0); in fdt_get_property_namelen()
267 (offset = fdt_next_property_offset(fdt, offset))) { in fdt_get_property_namelen()
270 if (!(prop = fdt_get_property_by_offset(fdt, offset, lenp))) { in fdt_get_property_namelen()
271 offset = -FDT_ERR_INTERNAL; in fdt_get_property_namelen()
280 *lenp = offset; in fdt_get_property_namelen()
304 const void *fdt_getprop_by_offset(const void *fdt, int offset, in fdt_getprop_by_offset() argument
309 prop = fdt_get_property_by_offset(fdt, offset, lenp); in fdt_getprop_by_offset()
360 int offset, depth, namelen; in fdt_get_path() local
368 for (offset = 0, depth = 0; in fdt_get_path()
369 (offset >= 0) && (offset <= nodeoffset); in fdt_get_path()
370 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_get_path()
379 name = fdt_get_name(fdt, offset, &namelen); in fdt_get_path()
390 if (offset == nodeoffset) { in fdt_get_path()
401 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_get_path()
403 else if (offset == -FDT_ERR_BADOFFSET) in fdt_get_path()
406 return offset; /* error from fdt_next_node() */ in fdt_get_path()
412 int offset, depth; in fdt_supernode_atdepth_offset() local
420 for (offset = 0, depth = 0; in fdt_supernode_atdepth_offset()
421 (offset >= 0) && (offset <= nodeoffset); in fdt_supernode_atdepth_offset()
422 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_supernode_atdepth_offset()
424 supernodeoffset = offset; in fdt_supernode_atdepth_offset()
426 if (offset == nodeoffset) { in fdt_supernode_atdepth_offset()
437 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_supernode_atdepth_offset()
439 else if (offset == -FDT_ERR_BADOFFSET) in fdt_supernode_atdepth_offset()
442 return offset; /* error from fdt_next_node() */ in fdt_supernode_atdepth_offset()
470 int offset; in fdt_node_offset_by_prop_value() local
481 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_prop_value()
482 offset >= 0; in fdt_node_offset_by_prop_value()
483 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_prop_value()
484 val = fdt_getprop(fdt, offset, propname, &len); in fdt_node_offset_by_prop_value()
487 return offset; in fdt_node_offset_by_prop_value()
490 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_prop_value()
495 int offset; in fdt_node_offset_by_phandle() local
508 for (offset = fdt_next_node(fdt, -1, NULL); in fdt_node_offset_by_phandle()
509 offset >= 0; in fdt_node_offset_by_phandle()
510 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_phandle()
511 if (fdt_get_phandle(fdt, offset) == phandle) in fdt_node_offset_by_phandle()
512 return offset; in fdt_node_offset_by_phandle()
515 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_phandle()
554 int offset, err; in fdt_node_offset_by_compatible() local
563 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_compatible()
564 offset >= 0; in fdt_node_offset_by_compatible()
565 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_compatible()
566 err = fdt_node_check_compatible(fdt, offset, compatible); in fdt_node_offset_by_compatible()
570 return offset; in fdt_node_offset_by_compatible()
573 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_compatible()