class_find_device — device iterator for locating a particular device
| struct device * class_find_device ( | struct class * class, | 
| struct device * start, | |
| const void * data, | |
| int (*match) (struct device *, const void *)); | 
classthe class we're iterating
startDevice to begin with
datadata for the match function
matchfunction to check device
   This is similar to the class_for_each_dev function above, but it
   returns a reference to a device that is 'found' for later use, as
   determined by the match callback.
   
The callback should return 0 if the device doesn't match and non-zero if it does. If the callback returns non-zero, this function will return to the caller and not iterate over any more devices.
   Note, you will need to drop the reference with put_device after use.
   
   match is allowed to do anything including calling back into class
   code.  There's no locking restriction.