Lines Matching defs:cibuf
75 void ci_get_data(struct dvb_ringbuffer *cibuf, u8 *data, int len)
77 if (dvb_ringbuffer_free(cibuf) < len + 2)
80 DVB_RINGBUFFER_WRITE_BYTE(cibuf, len >> 8);
81 DVB_RINGBUFFER_WRITE_BYTE(cibuf, len & 0xff);
82 dvb_ringbuffer_write(cibuf, data, len);
83 wake_up_interruptible(&cibuf->queue);
124 static int ci_ll_reset(struct dvb_ringbuffer *cibuf, struct file *file,
136 if (dvb_ringbuffer_free(cibuf) < len)
142 dvb_ringbuffer_write(cibuf, msg, 8);
150 static ssize_t ci_ll_write(struct dvb_ringbuffer *cibuf, struct file *file,
169 free = dvb_ringbuffer_free(cibuf);
175 if (wait_event_interruptible(cibuf->queue,
176 (dvb_ringbuffer_free(cibuf) >= count + 2)))
180 DVB_RINGBUFFER_WRITE_BYTE(cibuf, count >> 8);
181 DVB_RINGBUFFER_WRITE_BYTE(cibuf, count & 0xff);
183 res = dvb_ringbuffer_write(cibuf, page, count);
189 static ssize_t ci_ll_read(struct dvb_ringbuffer *cibuf, struct file *file,
196 if (!cibuf->data || !count)
198 if (non_blocking && (dvb_ringbuffer_empty(cibuf)))
200 if (wait_event_interruptible(cibuf->queue,
201 !dvb_ringbuffer_empty(cibuf)))
203 avail = dvb_ringbuffer_avail(cibuf);
206 len = DVB_RINGBUFFER_PEEK(cibuf, 0) << 8;
207 len |= DVB_RINGBUFFER_PEEK(cibuf, 1);
210 DVB_RINGBUFFER_SKIP(cibuf, 2);
212 return dvb_ringbuffer_read_user(cibuf, buf, len);