Lines Matching defs:fifo
88 /* fifo access is synchronized on the producer side by
96 struct circ_buf fifo;
103 struct circ_buf *fifo = &rd->fifo;
107 char *fptr = &fifo->buf[fifo->head];
110 wait_event(rd->fifo_event, circ_space(&rd->fifo) > 0 || !rd->open);
118 n = min(sz, circ_space_to_end(&rd->fifo));
121 smp_store_release(&fifo->head, (fifo->head + n) & (BUF_SZ - 1));
141 struct circ_buf *fifo = &rd->fifo;
142 const char *fptr = &fifo->buf[fifo->tail];
148 circ_count(&rd->fifo) > 0);
156 n = min_t(int, sz, circ_count_to_end(&rd->fifo));
162 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;
248 rd->fifo.buf = rd->buf;
354 /* writing into fifo is serialized by caller, and