CLASS_FOR_EACH_DEVIC(9) Device drivers infrastructure CLASS_FOR_EACH_DEVIC(9)
NAME class_for_each_device - device iterator
SYNOPSIS int class_for_each_device(struct class * class, struct device * start, void * data, int (*fn) (struct device *, void *));
ARGUMENTS class the class we´re iterating
start the device to start with in the list, if any.
data data for the callback
fn function to be called for each device
DESCRIPTION Iterate over class´s list of devices, and call fn for each, passing it data. If start is set, the list iteration will start there, otherwise if it is NULL, the iteration starts at the beginning of the list.
We check the return of fn each time. If it returns anything other than 0, we break out and return that value.
fn is allowed to do anything including calling back into class code. There´s no locking restriction.
COPYRIGHT Kernel Hackers Manual 2.6. April 2016 CLASS_FOR_EACH_DEVIC(9)