Lines Matching refs:cb_buff
32 struct iio_cb_buffer *cb_buff = buffer_to_cb_buffer(buffer); in iio_buffer_cb_store_to() local
33 return cb_buff->cb(data, cb_buff->private); in iio_buffer_cb_store_to()
38 struct iio_cb_buffer *cb_buff = buffer_to_cb_buffer(buffer); in iio_buffer_cb_release() local
39 kfree(cb_buff->buffer.scan_mask); in iio_buffer_cb_release()
40 kfree(cb_buff); in iio_buffer_cb_release()
56 struct iio_cb_buffer *cb_buff; in iio_channel_get_all_cb() local
59 cb_buff = kzalloc(sizeof(*cb_buff), GFP_KERNEL); in iio_channel_get_all_cb()
60 if (cb_buff == NULL) in iio_channel_get_all_cb()
63 iio_buffer_init(&cb_buff->buffer); in iio_channel_get_all_cb()
65 cb_buff->private = private; in iio_channel_get_all_cb()
66 cb_buff->cb = cb; in iio_channel_get_all_cb()
67 cb_buff->buffer.access = &iio_cb_access; in iio_channel_get_all_cb()
68 INIT_LIST_HEAD(&cb_buff->buffer.demux_list); in iio_channel_get_all_cb()
70 cb_buff->channels = iio_channel_get_all(dev); in iio_channel_get_all_cb()
71 if (IS_ERR(cb_buff->channels)) { in iio_channel_get_all_cb()
72 ret = PTR_ERR(cb_buff->channels); in iio_channel_get_all_cb()
76 cb_buff->indio_dev = cb_buff->channels[0].indio_dev; in iio_channel_get_all_cb()
77 cb_buff->buffer.scan_mask in iio_channel_get_all_cb()
78 = kcalloc(BITS_TO_LONGS(cb_buff->indio_dev->masklength), in iio_channel_get_all_cb()
80 if (cb_buff->buffer.scan_mask == NULL) { in iio_channel_get_all_cb()
84 chan = &cb_buff->channels[0]; in iio_channel_get_all_cb()
86 if (chan->indio_dev != cb_buff->indio_dev) { in iio_channel_get_all_cb()
91 cb_buff->buffer.scan_mask); in iio_channel_get_all_cb()
95 return cb_buff; in iio_channel_get_all_cb()
98 kfree(cb_buff->buffer.scan_mask); in iio_channel_get_all_cb()
100 iio_channel_release_all(cb_buff->channels); in iio_channel_get_all_cb()
102 kfree(cb_buff); in iio_channel_get_all_cb()
107 int iio_channel_cb_set_buffer_watermark(struct iio_cb_buffer *cb_buff, in iio_channel_cb_set_buffer_watermark() argument
112 cb_buff->buffer.watermark = watermark; in iio_channel_cb_set_buffer_watermark()
118 int iio_channel_start_all_cb(struct iio_cb_buffer *cb_buff) in iio_channel_start_all_cb() argument
120 return iio_update_buffers(cb_buff->indio_dev, &cb_buff->buffer, in iio_channel_start_all_cb()
125 void iio_channel_stop_all_cb(struct iio_cb_buffer *cb_buff) in iio_channel_stop_all_cb() argument
127 iio_update_buffers(cb_buff->indio_dev, NULL, &cb_buff->buffer); in iio_channel_stop_all_cb()
131 void iio_channel_release_all_cb(struct iio_cb_buffer *cb_buff) in iio_channel_release_all_cb() argument
133 iio_channel_release_all(cb_buff->channels); in iio_channel_release_all_cb()
134 iio_buffer_put(&cb_buff->buffer); in iio_channel_release_all_cb()