| bus_for_each_drv(9) - phpMan
BUS_FOR_EACH_DRV(9) Device drivers infrastructure BUS_FOR_EACH_DRV(9)
NAME
bus_for_each_drv - driver iterator
SYNOPSIS
int bus_for_each_drv(struct bus_type * bus, struct device_driver * start, void * data,
int (*fn) (struct device_driver *, void *));
ARGUMENTS
bus
bus we're dealing with.
start
driver to start iterating on.
data
data to pass to the callback.
fn
function to call for each driver.
DESCRIPTION
This is nearly identical to the device iterator above. We iterate over each driver that
belongs to bus, and call fn for each. If fn returns anything but 0, we break out and
return it. If start is not NULL, we use it as the head of the list.
NOTE
we don't return the driver that returns a non-zero value, nor do we leave the reference
count incremented for that driver. If the caller needs to know that info, it must set it
in the callback. It must also be sure to increment the refcount so it doesn't disappear
before returning to the caller.
COPYRIGHT
Kernel Hackers Manual 4.8. January 2017 BUS_FOR_EACH_DRV(9)
|