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_namelen() local
175 offset = fdt_path_offset(fdt, p); in fdt_path_offset_namelen()
186 return offset; in fdt_path_offset_namelen()
192 offset = fdt_subnode_offset_namelen(fdt, offset, p, q-p); in fdt_path_offset_namelen()
193 if (offset < 0) in fdt_path_offset_namelen()
194 return offset; in fdt_path_offset_namelen()
199 return offset; in fdt_path_offset_namelen()
229 int offset; in fdt_first_property_offset() local
231 if ((offset = _fdt_check_node_offset(fdt, nodeoffset)) < 0) in fdt_first_property_offset()
232 return offset; in fdt_first_property_offset()
234 return _nextprop(fdt, offset); in fdt_first_property_offset()
237 int fdt_next_property_offset(const void *fdt, int offset) in fdt_next_property_offset() argument
239 if ((offset = _fdt_check_prop_offset(fdt, offset)) < 0) in fdt_next_property_offset()
240 return offset; in fdt_next_property_offset()
242 return _nextprop(fdt, offset); in fdt_next_property_offset()
246 int offset, in fdt_get_property_by_offset() argument
252 if ((err = _fdt_check_prop_offset(fdt, offset)) < 0) { in fdt_get_property_by_offset()
258 prop = _fdt_offset_ptr(fdt, offset); in fdt_get_property_by_offset()
267 int offset, in fdt_get_property_namelen() argument
271 for (offset = fdt_first_property_offset(fdt, offset); in fdt_get_property_namelen()
272 (offset >= 0); in fdt_get_property_namelen()
273 (offset = fdt_next_property_offset(fdt, offset))) { in fdt_get_property_namelen()
276 if (!(prop = fdt_get_property_by_offset(fdt, offset, lenp))) { in fdt_get_property_namelen()
277 offset = -FDT_ERR_INTERNAL; in fdt_get_property_namelen()
286 *lenp = offset; in fdt_get_property_namelen()
310 const void *fdt_getprop_by_offset(const void *fdt, int offset, in fdt_getprop_by_offset() argument
315 prop = fdt_get_property_by_offset(fdt, offset, lenp); in fdt_getprop_by_offset()
366 int offset, depth, namelen; in fdt_get_path() local
374 for (offset = 0, depth = 0; in fdt_get_path()
375 (offset >= 0) && (offset <= nodeoffset); in fdt_get_path()
376 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_get_path()
385 name = fdt_get_name(fdt, offset, &namelen); in fdt_get_path()
396 if (offset == nodeoffset) { in fdt_get_path()
407 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_get_path()
409 else if (offset == -FDT_ERR_BADOFFSET) in fdt_get_path()
412 return offset; /* error from fdt_next_node() */ in fdt_get_path()
418 int offset, depth; in fdt_supernode_atdepth_offset() local
426 for (offset = 0, depth = 0; in fdt_supernode_atdepth_offset()
427 (offset >= 0) && (offset <= nodeoffset); in fdt_supernode_atdepth_offset()
428 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_supernode_atdepth_offset()
430 supernodeoffset = offset; in fdt_supernode_atdepth_offset()
432 if (offset == nodeoffset) { in fdt_supernode_atdepth_offset()
443 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_supernode_atdepth_offset()
445 else if (offset == -FDT_ERR_BADOFFSET) in fdt_supernode_atdepth_offset()
448 return offset; /* error from fdt_next_node() */ in fdt_supernode_atdepth_offset()
476 int offset; in fdt_node_offset_by_prop_value() local
487 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_prop_value()
488 offset >= 0; in fdt_node_offset_by_prop_value()
489 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_prop_value()
490 val = fdt_getprop(fdt, offset, propname, &len); in fdt_node_offset_by_prop_value()
493 return offset; in fdt_node_offset_by_prop_value()
496 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_prop_value()
501 int offset; in fdt_node_offset_by_phandle() local
514 for (offset = fdt_next_node(fdt, -1, NULL); in fdt_node_offset_by_phandle()
515 offset >= 0; in fdt_node_offset_by_phandle()
516 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_phandle()
517 if (fdt_get_phandle(fdt, offset) == phandle) in fdt_node_offset_by_phandle()
518 return offset; in fdt_node_offset_by_phandle()
521 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_phandle()
559 int offset, err; in fdt_node_offset_by_compatible() local
568 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_compatible()
569 offset >= 0; in fdt_node_offset_by_compatible()
570 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_compatible()
571 err = fdt_node_check_compatible(fdt, offset, compatible); in fdt_node_offset_by_compatible()
575 return offset; in fdt_node_offset_by_compatible()
578 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_compatible()