OF_FINDDEVICE(9)

NAME
OF_finddevice - find node in device tree

SYNOPSIS
#include <dev/ofw/ofw_bus.h>
#include <dev/ofw/ofw_bus_subr.h>
phandle_t
OF_finddevice(const char *path);

DESCRIPTION
OF_finddevice() returns the phandle for the node specified by the path. Returns -1 if the path cannot be found in the tree.

EXAMPLES

        phandle_t root, i2c;
        root = OF_finddevice("/");
        i2c = OF_finddevice("/soc/axi/i2c@a0e0000");
        if (i2c != -1) {
            ...
        }

SEE ALSO
OF_child(9), OF_parent(9), OF_peer(9)

AUTHORS
-nosplit This manual page was written by Oleksandr Tymoshenko <gonzo@FreeBSD.org>.

CAVEATS
The return value should only be checked with equality operators (equal to, not equal to) and not relational comparison (less than, greater than ). There is a discrepancy between IEEE 1275 standard and FreeBSD's internal representation of a phandle: IEEE 1275 requires the return value of this function to be -1 if the path is not found. But phandle_t is an unsigned type, so it cannot be relationally compared with -1 or 0, this comparison is always true or always false.