Lines Matching full:fifo
3 * Sample fifo dma implementation
15 * This module shows how to handle fifo dma operations.
18 /* fifo size in elements (bytes) */
21 static struct kfifo fifo; variable
30 printk(KERN_INFO "DMA fifo test start\n"); in example_init()
32 if (kfifo_alloc(&fifo, FIFO_SIZE, GFP_KERNEL)) { in example_init()
37 printk(KERN_INFO "queue size: %u\n", kfifo_size(&fifo)); in example_init()
39 kfifo_in(&fifo, "test", 4); in example_init()
42 kfifo_put(&fifo, i); in example_init()
45 kfifo_skip(&fifo); in example_init()
47 printk(KERN_INFO "queue len: %u\n", kfifo_len(&fifo)); in example_init()
65 nents = kfifo_dma_in_prepare(&fifo, sg, ARRAY_SIZE(sg), FIFO_SIZE); in example_init()
68 /* fifo is full and no sgl was created */ in example_init()
92 kfifo_dma_in_finish(&fifo, ret); in example_init()
95 nents = kfifo_dma_out_prepare(&fifo, sg, ARRAY_SIZE(sg), 8); in example_init()
121 kfifo_dma_out_finish(&fifo, ret); in example_init()
123 ret = kfifo_len(&fifo); in example_init()
124 printk(KERN_INFO "queue len: %u\n", kfifo_len(&fifo)); in example_init()
137 kfifo_free(&fifo); in example_exit()
142 MODULE_DESCRIPTION("Sample fifo dma implementation");