Lines Matching refs:kf
18 struct kfifo kf; member
38 return __kfifo_alloc((struct __kfifo *)&buf->kf, length, in __iio_allocate_kfifo()
49 kfifo_free(&buf->kf); in iio_request_update_kfifo()
55 kfifo_reset_out(&buf->kf); in iio_request_update_kfifo()
64 struct iio_kfifo *kf = iio_to_kfifo(r); in iio_mark_update_needed_kfifo() local
65 kf->update_needed = true; in iio_mark_update_needed_kfifo()
94 struct iio_kfifo *kf = iio_to_kfifo(r); in iio_store_to_kfifo() local
95 ret = kfifo_in(&kf->kf, data, 1); in iio_store_to_kfifo()
105 struct iio_kfifo *kf = iio_to_kfifo(r); in iio_read_first_n_kfifo() local
107 if (mutex_lock_interruptible(&kf->user_lock)) in iio_read_first_n_kfifo()
110 if (!kfifo_initialized(&kf->kf) || n < kfifo_esize(&kf->kf)) in iio_read_first_n_kfifo()
113 ret = kfifo_to_user(&kf->kf, buf, n, &copied); in iio_read_first_n_kfifo()
114 mutex_unlock(&kf->user_lock); in iio_read_first_n_kfifo()
123 struct iio_kfifo *kf = iio_to_kfifo(r); in iio_kfifo_buf_data_available() local
126 mutex_lock(&kf->user_lock); in iio_kfifo_buf_data_available()
127 samples = kfifo_len(&kf->kf); in iio_kfifo_buf_data_available()
128 mutex_unlock(&kf->user_lock); in iio_kfifo_buf_data_available()
135 struct iio_kfifo *kf = iio_to_kfifo(buffer); in iio_kfifo_buffer_release() local
137 mutex_destroy(&kf->user_lock); in iio_kfifo_buffer_release()
138 kfifo_free(&kf->kf); in iio_kfifo_buffer_release()
139 kfree(kf); in iio_kfifo_buffer_release()
156 struct iio_kfifo *kf; in iio_kfifo_allocate() local
158 kf = kzalloc(sizeof(*kf), GFP_KERNEL); in iio_kfifo_allocate()
159 if (!kf) in iio_kfifo_allocate()
162 kf->update_needed = true; in iio_kfifo_allocate()
163 iio_buffer_init(&kf->buffer); in iio_kfifo_allocate()
164 kf->buffer.access = &kfifo_access_funcs; in iio_kfifo_allocate()
165 kf->buffer.length = 2; in iio_kfifo_allocate()
166 mutex_init(&kf->user_lock); in iio_kfifo_allocate()
168 return &kf->buffer; in iio_kfifo_allocate()