EXAMPLES
The following pseudo-code shows an example of a function that probes for a piece of hardware and registers it and its resource (an I/O port) with the kernel.
void
foo_identify(driver_t *driver, device_t parent)
{
device_t child;
retrieve_device_information;
if (devices matches one of your supported devices &&
not already in device tree) {
child = BUS_ADD_CHILD(parent, 0, "foo", -1);
bus_set_resource(child, SYS_RES_IOPORT, 0, FOO_IOADDR, 1);
}
}
SEE ALSO
BUS_ADD_CHILD(9), bus_set_resource(9), device(9), device_add_child(9), DEVICE_ATTACH(9), DEVICE_DETACH(9), DEVICE_PROBE(9), DEVICE_SHUTDOWN(9)
AUTHORS