iio:trigger: Introduce iio_tigger_{set,get}_drvdata
Introduce iio_tigger_{set,get}_drvdata which allows to attach driver specific data to a trigger. The functions wrap access to the triggers private_data field and all current users are updated to use iio_tigger_{set,get}_drvdata instead of directly accessing the private_data field. This is the first step towards removing the private_data field from the iio_trigger struct. The following coccinelle script has been used to update the drivers: <smpl> @@ struct iio_trigger *trigger; expression priv; @@ -trigger->private_data = priv +iio_trigger_set_drv_data(trigger, priv) @@ struct iio_trigger *trigger; @@ -trigger->private_data +iio_trigger_get_drv_data(trigger) </smpl> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:

committed by
Jonathan Cameron

parent
c5cf4606b6
commit
1e9663c62b
@@ -91,6 +91,30 @@ static inline void iio_trigger_get(struct iio_trigger *trig)
|
||||
__module_get(trig->ops->owner);
|
||||
}
|
||||
|
||||
/**
|
||||
* iio_device_set_drvdata() - Set trigger driver data
|
||||
* @trig: IIO trigger structure
|
||||
* @data: Driver specific data
|
||||
*
|
||||
* Allows to attach an arbitrary pointer to an IIO trigger, which can later be
|
||||
* retrieved by iio_trigger_get_drvdata().
|
||||
*/
|
||||
static inline void iio_trigger_set_drvdata(struct iio_trigger *trig, void *data)
|
||||
{
|
||||
trig->private_data = data;
|
||||
}
|
||||
|
||||
/**
|
||||
* iio_trigger_get_drvdata() - Get trigger driver data
|
||||
* @trig: IIO trigger structure
|
||||
*
|
||||
* Returns the data previously set with iio_trigger_set_drvdata()
|
||||
*/
|
||||
static inline void *iio_trigger_get_drvdata(struct iio_trigger *trig)
|
||||
{
|
||||
return trig->private_data;
|
||||
}
|
||||
|
||||
/**
|
||||
* iio_trigger_register() - register a trigger with the IIO core
|
||||
* @trig_info: trigger to be registered
|
||||
|
Reference in New Issue
Block a user