Lines Matching defs:fifo
224 static int fifo_empty(struct cyapa_softc *sc, struct cyapa_fifo *fifo);
225 static size_t fifo_ready(struct cyapa_softc *sc, struct cyapa_fifo *fifo);
226 static char *fifo_read(struct cyapa_softc *sc, struct cyapa_fifo *fifo,
228 static char *fifo_write(struct cyapa_softc *sc, struct cyapa_fifo *fifo,
231 struct cyapa_fifo *fifo);
232 static void fifo_write_char(struct cyapa_softc *sc, struct cyapa_fifo *fifo,
234 static size_t fifo_space(struct cyapa_softc *sc, struct cyapa_fifo *fifo);
235 static void fifo_reset(struct cyapa_softc *sc, struct cyapa_fifo *fifo);
853 * of the fifo and keep filling.
1667 * Returns non-zero if the fifo is empty
1670 fifo_empty(struct cyapa_softc *sc, struct cyapa_fifo *fifo)
1675 return (fifo->rindex == fifo->windex);
1680 * the fifo without wrapping the fifo buffer.
1683 fifo_ready(struct cyapa_softc *sc, struct cyapa_fifo *fifo)
1689 n = CYAPA_BUFSIZE - (fifo->rindex & CYAPA_BUFMASK);
1690 if (n > (size_t)(fifo->windex - fifo->rindex))
1691 n = (size_t)(fifo->windex - fifo->rindex);
1696 * Returns a read pointer into the fifo and then bumps
1703 fifo_read(struct cyapa_softc *sc, struct cyapa_fifo *fifo, size_t n)
1708 if (n > (CYAPA_BUFSIZE - (fifo->rindex & CYAPA_BUFMASK))) {
1710 return (fifo->buf);
1712 ptr = fifo->buf + (fifo->rindex & CYAPA_BUFMASK);
1713 fifo->rindex += n;
1719 fifo_read_char(struct cyapa_softc *sc, struct cyapa_fifo *fifo)
1725 if (fifo->rindex == fifo->windex) {
1729 c = fifo->buf[fifo->rindex & CYAPA_BUFMASK];
1730 ++fifo->rindex;
1741 fifo_write_char(struct cyapa_softc *sc, struct cyapa_fifo *fifo, uint8_t c)
1746 if (fifo->windex - fifo->rindex < CYAPA_BUFSIZE) {
1747 fifo->buf[fifo->windex & CYAPA_BUFMASK] = c;
1748 ++fifo->windex;
1754 * the fifo.
1757 fifo_space(struct cyapa_softc *sc, struct cyapa_fifo *fifo)
1763 n = CYAPA_BUFSIZE - (fifo->windex & CYAPA_BUFMASK);
1764 if (n > (size_t)(CYAPA_BUFSIZE - (fifo->windex - fifo->rindex)))
1765 n = (size_t)(CYAPA_BUFSIZE - (fifo->windex - fifo->rindex));
1770 fifo_write(struct cyapa_softc *sc, struct cyapa_fifo *fifo, size_t n)
1776 ptr = fifo->buf + (fifo->windex & CYAPA_BUFMASK);
1777 fifo->windex += n;
1783 fifo_reset(struct cyapa_softc *sc, struct cyapa_fifo *fifo)
1788 fifo->rindex = 0;
1789 fifo->windex = 0;