Lines Matching refs:recsize
378 unsigned int __kfifo_max_r(unsigned int len, size_t recsize) in __kfifo_max_r() argument
380 unsigned int max = (1 << (recsize << 3)) - 1; in __kfifo_max_r()
394 static unsigned int __kfifo_peek_n(struct __kfifo *fifo, size_t recsize) in __kfifo_peek_n() argument
402 if (--recsize) in __kfifo_peek_n()
417 static void __kfifo_poke_n(struct __kfifo *fifo, unsigned int n, size_t recsize) in __kfifo_poke_n() argument
424 if (recsize > 1) in __kfifo_poke_n()
428 unsigned int __kfifo_len_r(struct __kfifo *fifo, size_t recsize) in __kfifo_len_r() argument
430 return __kfifo_peek_n(fifo, recsize); in __kfifo_len_r()
435 unsigned int len, size_t recsize) in __kfifo_in_r() argument
437 if (len + recsize > kfifo_unused(fifo)) in __kfifo_in_r()
440 __kfifo_poke_n(fifo, len, recsize); in __kfifo_in_r()
442 kfifo_copy_in(fifo, buf, len, fifo->in + recsize); in __kfifo_in_r()
443 fifo->in += len + recsize; in __kfifo_in_r()
449 void *buf, unsigned int len, size_t recsize, unsigned int *n) in kfifo_out_copy_r() argument
451 *n = __kfifo_peek_n(fifo, recsize); in kfifo_out_copy_r()
456 kfifo_copy_out(fifo, buf, len, fifo->out + recsize); in kfifo_out_copy_r()
461 unsigned int len, size_t recsize) in __kfifo_out_peek_r() argument
468 return kfifo_out_copy_r(fifo, buf, len, recsize, &n); in __kfifo_out_peek_r()
473 unsigned int *tail, unsigned int n, size_t recsize) in __kfifo_out_linear_r() argument
479 *tail = fifo->out + recsize; in __kfifo_out_linear_r()
481 return min(n, __kfifo_peek_n(fifo, recsize)); in __kfifo_out_linear_r()
486 unsigned int len, size_t recsize) in __kfifo_out_r() argument
493 len = kfifo_out_copy_r(fifo, buf, len, recsize, &n); in __kfifo_out_r()
494 fifo->out += n + recsize; in __kfifo_out_r()
499 void __kfifo_skip_r(struct __kfifo *fifo, size_t recsize) in __kfifo_skip_r() argument
503 n = __kfifo_peek_n(fifo, recsize); in __kfifo_skip_r()
504 fifo->out += n + recsize; in __kfifo_skip_r()
509 unsigned long len, unsigned int *copied, size_t recsize) in __kfifo_from_user_r() argument
513 len = __kfifo_max_r(len, recsize); in __kfifo_from_user_r()
515 if (len + recsize > kfifo_unused(fifo)) { in __kfifo_from_user_r()
520 __kfifo_poke_n(fifo, len, recsize); in __kfifo_from_user_r()
522 ret = kfifo_copy_from_user(fifo, from, len, fifo->in + recsize, copied); in __kfifo_from_user_r()
527 fifo->in += len + recsize; in __kfifo_from_user_r()
533 unsigned long len, unsigned int *copied, size_t recsize) in __kfifo_to_user_r() argument
543 n = __kfifo_peek_n(fifo, recsize); in __kfifo_to_user_r()
547 ret = kfifo_copy_to_user(fifo, to, len, fifo->out + recsize, copied); in __kfifo_to_user_r()
552 fifo->out += n + recsize; in __kfifo_to_user_r()
558 struct scatterlist *sgl, int nents, unsigned int len, size_t recsize, in __kfifo_dma_in_prepare_r() argument
563 len = __kfifo_max_r(len, recsize); in __kfifo_dma_in_prepare_r()
565 if (len + recsize > kfifo_unused(fifo)) in __kfifo_dma_in_prepare_r()
568 return setup_sgl(fifo, sgl, nents, len, fifo->in + recsize, dma); in __kfifo_dma_in_prepare_r()
573 unsigned int len, size_t recsize) in __kfifo_dma_in_finish_r() argument
575 len = __kfifo_max_r(len, recsize); in __kfifo_dma_in_finish_r()
576 __kfifo_poke_n(fifo, len, recsize); in __kfifo_dma_in_finish_r()
577 fifo->in += len + recsize; in __kfifo_dma_in_finish_r()
582 struct scatterlist *sgl, int nents, unsigned int len, size_t recsize, in __kfifo_dma_out_prepare_r() argument
587 len = __kfifo_max_r(len, recsize); in __kfifo_dma_out_prepare_r()
589 if (len + recsize > fifo->in - fifo->out) in __kfifo_dma_out_prepare_r()
592 return setup_sgl(fifo, sgl, nents, len, fifo->out + recsize, dma); in __kfifo_dma_out_prepare_r()