Lines Matching defs:fifo
86 /* fifo access is synchronized on the producer side by
92 struct circ_buf fifo;
99 struct circ_buf *fifo = &rd->fifo;
103 char *fptr = &fifo->buf[fifo->head];
106 wait_event(rd->fifo_event, circ_space(&rd->fifo) > 0 || !rd->open);
114 n = min(sz, circ_space_to_end(&rd->fifo));
117 smp_store_release(&fifo->head, (fifo->head + n) & (BUF_SZ - 1));
137 struct circ_buf *fifo = &rd->fifo;
138 const char *fptr = &fifo->buf[fifo->tail];
144 circ_count(&rd->fifo) > 0);
152 n = min_t(int, sz, circ_count_to_end(&rd->fifo));
158 smp_store_release(&fifo->tail, (fifo->tail + n) & (BUF_SZ - 1));
194 /* Reset fifo to clear any previously unread data: */
195 rd->fifo.head = rd->fifo.tail = 0;
254 rd->fifo.buf = rd->buf;