Lines Matching refs:cb_buff

29 	struct iio_cb_buffer *cb_buff = buffer_to_cb_buffer(buffer);
30 return cb_buff->cb(data, cb_buff->private);
35 struct iio_cb_buffer *cb_buff = buffer_to_cb_buffer(buffer);
37 bitmap_free(cb_buff->buffer.scan_mask);
38 kfree(cb_buff);
54 struct iio_cb_buffer *cb_buff;
62 cb_buff = kzalloc(sizeof(*cb_buff), GFP_KERNEL);
63 if (cb_buff == NULL)
66 iio_buffer_init(&cb_buff->buffer);
68 cb_buff->private = private;
69 cb_buff->cb = cb;
70 cb_buff->buffer.access = &iio_cb_access;
71 INIT_LIST_HEAD(&cb_buff->buffer.demux_list);
73 cb_buff->channels = iio_channel_get_all(dev);
74 if (IS_ERR(cb_buff->channels)) {
75 ret = PTR_ERR(cb_buff->channels);
79 cb_buff->indio_dev = cb_buff->channels[0].indio_dev;
80 cb_buff->buffer.scan_mask = bitmap_zalloc(cb_buff->indio_dev->masklength,
82 if (cb_buff->buffer.scan_mask == NULL) {
86 chan = &cb_buff->channels[0];
88 if (chan->indio_dev != cb_buff->indio_dev) {
93 cb_buff->buffer.scan_mask);
97 return cb_buff;
100 bitmap_free(cb_buff->buffer.scan_mask);
102 iio_channel_release_all(cb_buff->channels);
104 kfree(cb_buff);
109 int iio_channel_cb_set_buffer_watermark(struct iio_cb_buffer *cb_buff,
114 cb_buff->buffer.watermark = watermark;
120 int iio_channel_start_all_cb(struct iio_cb_buffer *cb_buff)
122 return iio_update_buffers(cb_buff->indio_dev, &cb_buff->buffer,
127 void iio_channel_stop_all_cb(struct iio_cb_buffer *cb_buff)
129 iio_update_buffers(cb_buff->indio_dev, NULL, &cb_buff->buffer);
133 void iio_channel_release_all_cb(struct iio_cb_buffer *cb_buff)
135 iio_channel_release_all(cb_buff->channels);
136 iio_buffer_put(&cb_buff->buffer);