FreeBSD manual
download PDF document: OF_finddevice.9.pdf
OF_FINDDEVICE(9) FreeBSD Kernel Developer's Manual 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
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.
FreeBSD 14.2-RELEASE April 9, 2018 FreeBSD 14.2-RELEASE