Chapter 6. FIFO Buffer

Table of Contents

kfifo interface

kfifo interface

DECLARE_KFIFO_PTR - macro to declare a fifo pointer object
DECLARE_KFIFO - macro to declare a fifo object
INIT_KFIFO - Initialize a fifo declared by DECLARE_KFIFO
DEFINE_KFIFO - macro to define and initialize a fifo
kfifo_initialized - Check if the fifo is initialized
kfifo_esize - returns the size of the element managed by the fifo
kfifo_recsize - returns the size of the record length field
kfifo_size - returns the size of the fifo in elements
kfifo_reset - removes the entire fifo content
kfifo_reset_out - skip fifo content
kfifo_len - returns the number of used elements in the fifo
kfifo_is_empty - returns true if the fifo is empty
kfifo_is_full - returns true if the fifo is full
kfifo_avail - returns the number of unused elements in the fifo
kfifo_skip - skip output data
kfifo_peek_len - gets the size of the next fifo record
kfifo_alloc - dynamically allocates a new fifo buffer
kfifo_free - frees the fifo
kfifo_init - initialize a fifo using a preallocated buffer
kfifo_put - put data into the fifo
kfifo_get - get data from the fifo
kfifo_peek - get data from the fifo without removing
kfifo_in - put data into the fifo
kfifo_in_spinlocked - put data into the fifo using a spinlock for locking
kfifo_out - get data from the fifo
kfifo_out_spinlocked - get data from the fifo using a spinlock for locking
kfifo_from_user - puts some data from user space into the fifo
kfifo_to_user - copies data from the fifo into user space
kfifo_dma_in_prepare - setup a scatterlist for DMA input
kfifo_dma_in_finish - finish a DMA IN operation
kfifo_dma_out_prepare - setup a scatterlist for DMA output
kfifo_dma_out_finish - finish a DMA OUT operation
kfifo_out_peek - gets some data from the fifo