Lines Matching refs:trig_info
43 * @trig_info: the trigger
47 static int iio_trigger_register_sysfs(struct iio_trigger *trig_info)
51 if (trig_info->control_attrs)
52 ret = sysfs_create_group(&trig_info->dev.kobj,
53 trig_info->control_attrs);
58 static void iio_trigger_unregister_sysfs(struct iio_trigger *trig_info)
60 if (trig_info->control_attrs)
61 sysfs_remove_group(&trig_info->dev.kobj,
62 trig_info->control_attrs);
68 * @trig_info: the trigger
70 static int iio_trigger_register_id(struct iio_trigger *trig_info)
79 ret = idr_get_new(&iio_trigger_idr, NULL, &trig_info->id);
84 trig_info->id = trig_info->id & MAX_ID_MASK;
91 * @trig_info: the trigger
93 static void iio_trigger_unregister_id(struct iio_trigger *trig_info)
96 idr_remove(&iio_trigger_idr, trig_info->id);
100 int iio_trigger_register(struct iio_trigger *trig_info)
104 ret = iio_trigger_register_id(trig_info);
108 dev_set_name(&trig_info->dev, "trigger%ld",
109 (unsigned long) trig_info->id);
111 ret = device_add(&trig_info->dev);
115 ret = iio_trigger_register_sysfs(trig_info);
121 list_add_tail(&trig_info->list, &iio_trigger_list);
127 device_del(&trig_info->dev);
129 iio_trigger_unregister_id(trig_info);
135 void iio_trigger_unregister(struct iio_trigger *trig_info)
141 if (cursor == trig_info) {
147 iio_trigger_unregister_sysfs(trig_info);
148 iio_trigger_unregister_id(trig_info);
150 device_unregister(&trig_info->dev);