diff --git a/libfdt/fdt_ro.c b/libfdt/fdt_ro.c index 15d5f6b585cc800276357d8ff205eaf6428ed30f..63fa1290be2bd5433f63e8bddb0007c1f3b77777 100644 --- a/libfdt/fdt_ro.c +++ b/libfdt/fdt_ro.c @@ -453,20 +453,10 @@ int fdt_node_check_compatible(const void *fdt, int nodeoffset, int fdt_node_offset_by_compatible(const void *fdt, int startoffset, const char *compatible) { - uint32_t tag; - int offset, nextoffset; - int err; + int offset, err; CHECK_HEADER(fdt); - if (startoffset >= 0) { - tag = fdt_next_tag(fdt, startoffset, &nextoffset); - if (tag != FDT_BEGIN_NODE) - return -FDT_ERR_BADOFFSET; - } else { - nextoffset = 0; - } - /* FIXME: The algorithm here is pretty horrible: we scan each * property of a node in fdt_node_check_compatible(), then if * that didn't find what we want, we scan over them again