Main index | Section 9 | Options |
#include <dev/ofw/ofw_bus.h>
#include <dev/ofw/ofw_bus_subr.h>
When a device tree node references another node, the driver may need to get a device_t instance associated with the referenced node. For instance, an Ethernet driver accessing a PHY device. To make this possible, the kernel maintains a table that maps effective handles to device_t instances.
OF_device_register_xref() adds a map entry from the effective phandle xref to device dev. If a mapping entry for xref already exists, it is replaced with the new one. The function always returns 0.
OF_device_from_xref() returns a device_t instance associated with the effective phandle xref. If no such mapping exists, the function returns NULL.
OF_xref_from_device() returns the effective phandle associated with the device dev. If no such mapping exists, the function returns 0.
static int acmephy_attach(device_t dev) { phandle_t node;/* PHY node is referenced from eth device, register it */ node = ofw_bus_get_node(dev); OF_device_register_xref(OF_xref_from_node(node), dev);
return (0); }
OF_DEVICE_FROM_XREF (9) | April 9, 2018 |
Main index | Section 9 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.
“ | Computer science would have progressed much further and faster if all of the time and effort that has been spent maintaining and nurturing Unix had been spent on a sounder operating system. | ” |
— The Unix Haters' handbook |