Lines Matching refs:offset
56 static int _fdt_nodename_eq(const void *fdt, int offset, in _fdt_nodename_eq() argument
59 const char *p = fdt_offset_ptr(fdt, offset + FDT_TAGSIZE, len+1); in _fdt_nodename_eq()
92 int offset; in fdt_get_max_phandle() local
94 for (offset = fdt_next_node(fdt, -1, NULL);; in fdt_get_max_phandle()
95 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_get_max_phandle()
98 if (offset == -FDT_ERR_NOTFOUND) in fdt_get_max_phandle()
101 if (offset < 0) in fdt_get_max_phandle()
104 phandle = fdt_get_phandle(fdt, offset); in fdt_get_max_phandle()
132 static int _nextprop(const void *fdt, int offset) in _nextprop() argument
138 tag = fdt_next_tag(fdt, offset, &nextoffset); in _nextprop()
148 return offset; in _nextprop()
150 offset = nextoffset; in _nextprop()
156 int fdt_subnode_offset_namelen(const void *fdt, int offset, in fdt_subnode_offset_namelen() argument
164 (offset >= 0) && (depth >= 0); in fdt_subnode_offset_namelen()
165 offset = fdt_next_node(fdt, offset, &depth)) in fdt_subnode_offset_namelen()
167 && _fdt_nodename_eq(fdt, offset, name, namelen)) in fdt_subnode_offset_namelen()
168 return offset; in fdt_subnode_offset_namelen()
172 return offset; /* error */ in fdt_subnode_offset_namelen()
185 int offset = 0; in fdt_path_offset_namelen() local
199 offset = fdt_path_offset(fdt, p); in fdt_path_offset_namelen()
210 return offset; in fdt_path_offset_namelen()
216 offset = fdt_subnode_offset_namelen(fdt, offset, p, q-p); in fdt_path_offset_namelen()
217 if (offset < 0) in fdt_path_offset_namelen()
218 return offset; in fdt_path_offset_namelen()
223 return offset; in fdt_path_offset_namelen()
253 int offset; in fdt_first_property_offset() local
255 if ((offset = _fdt_check_node_offset(fdt, nodeoffset)) < 0) in fdt_first_property_offset()
256 return offset; in fdt_first_property_offset()
258 return _nextprop(fdt, offset); in fdt_first_property_offset()
261 int fdt_next_property_offset(const void *fdt, int offset) in fdt_next_property_offset() argument
263 if ((offset = _fdt_check_prop_offset(fdt, offset)) < 0) in fdt_next_property_offset()
264 return offset; in fdt_next_property_offset()
266 return _nextprop(fdt, offset); in fdt_next_property_offset()
270 int offset, in fdt_get_property_by_offset() argument
276 if ((err = _fdt_check_prop_offset(fdt, offset)) < 0) { in fdt_get_property_by_offset()
282 prop = _fdt_offset_ptr(fdt, offset); in fdt_get_property_by_offset()
291 int offset, in fdt_get_property_namelen() argument
295 for (offset = fdt_first_property_offset(fdt, offset); in fdt_get_property_namelen()
296 (offset >= 0); in fdt_get_property_namelen()
297 (offset = fdt_next_property_offset(fdt, offset))) { in fdt_get_property_namelen()
300 if (!(prop = fdt_get_property_by_offset(fdt, offset, lenp))) { in fdt_get_property_namelen()
301 offset = -FDT_ERR_INTERNAL; in fdt_get_property_namelen()
310 *lenp = offset; in fdt_get_property_namelen()
334 const void *fdt_getprop_by_offset(const void *fdt, int offset, in fdt_getprop_by_offset() argument
339 prop = fdt_get_property_by_offset(fdt, offset, lenp); in fdt_getprop_by_offset()
390 int offset, depth, namelen; in fdt_get_path() local
398 for (offset = 0, depth = 0; in fdt_get_path()
399 (offset >= 0) && (offset <= nodeoffset); in fdt_get_path()
400 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_get_path()
409 name = fdt_get_name(fdt, offset, &namelen); in fdt_get_path()
420 if (offset == nodeoffset) { in fdt_get_path()
431 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_get_path()
433 else if (offset == -FDT_ERR_BADOFFSET) in fdt_get_path()
436 return offset; /* error from fdt_next_node() */ in fdt_get_path()
442 int offset, depth; in fdt_supernode_atdepth_offset() local
450 for (offset = 0, depth = 0; in fdt_supernode_atdepth_offset()
451 (offset >= 0) && (offset <= nodeoffset); in fdt_supernode_atdepth_offset()
452 offset = fdt_next_node(fdt, offset, &depth)) { in fdt_supernode_atdepth_offset()
454 supernodeoffset = offset; in fdt_supernode_atdepth_offset()
456 if (offset == nodeoffset) { in fdt_supernode_atdepth_offset()
467 if ((offset == -FDT_ERR_NOTFOUND) || (offset >= 0)) in fdt_supernode_atdepth_offset()
469 else if (offset == -FDT_ERR_BADOFFSET) in fdt_supernode_atdepth_offset()
472 return offset; /* error from fdt_next_node() */ in fdt_supernode_atdepth_offset()
500 int offset; in fdt_node_offset_by_prop_value() local
511 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_prop_value()
512 offset >= 0; in fdt_node_offset_by_prop_value()
513 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_prop_value()
514 val = fdt_getprop(fdt, offset, propname, &len); in fdt_node_offset_by_prop_value()
517 return offset; in fdt_node_offset_by_prop_value()
520 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_prop_value()
525 int offset; in fdt_node_offset_by_phandle() local
538 for (offset = fdt_next_node(fdt, -1, NULL); in fdt_node_offset_by_phandle()
539 offset >= 0; in fdt_node_offset_by_phandle()
540 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_phandle()
541 if (fdt_get_phandle(fdt, offset) == phandle) in fdt_node_offset_by_phandle()
542 return offset; in fdt_node_offset_by_phandle()
545 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_phandle()
681 int offset, err; in fdt_node_offset_by_compatible() local
690 for (offset = fdt_next_node(fdt, startoffset, NULL); in fdt_node_offset_by_compatible()
691 offset >= 0; in fdt_node_offset_by_compatible()
692 offset = fdt_next_node(fdt, offset, NULL)) { in fdt_node_offset_by_compatible()
693 err = fdt_node_check_compatible(fdt, offset, compatible); in fdt_node_offset_by_compatible()
697 return offset; in fdt_node_offset_by_compatible()
700 return offset; /* error from fdt_next_node() */ in fdt_node_offset_by_compatible()