Home
last modified time | relevance | path

Searched full:fifo (Results 1 – 25 of 1895) sorted by relevance

12345678910>>...76

/linux/lib/
H A Dkfifo.c3 * A generic kernel FIFO implementation
18 * internal helper to calculate the unused elements in a fifo
20 static inline unsigned int kfifo_unused(struct __kfifo *fifo) in kfifo_unused()
22 return (fifo->mask + 1) - (fifo->in - fifo->out); in kfifo_unused()
25 int __kfifo_alloc(struct __kfifo *fifo, unsigned int size, in __kfifo_alloc()
34 fifo->in = 0; in __kfifo_alloc()
35 fifo->out = 0; in __kfifo_alloc()
36 fifo in __kfifo_alloc()
19 kfifo_unused(struct __kfifo * fifo) kfifo_unused() argument
24 __kfifo_alloc(struct __kfifo * fifo,unsigned int size,size_t esize,gfp_t gfp_mask) __kfifo_alloc() argument
55 __kfifo_free(struct __kfifo * fifo) __kfifo_free() argument
66 __kfifo_init(struct __kfifo * fifo,void * buffer,unsigned int size,size_t esize) __kfifo_init() argument
89 kfifo_copy_in(struct __kfifo * fifo,const void * src,unsigned int len,unsigned int off) kfifo_copy_in() argument
113 __kfifo_in(struct __kfifo * fifo,const void * buf,unsigned int len) __kfifo_in() argument
128 kfifo_copy_out(struct __kfifo * fifo,void * dst,unsigned int len,unsigned int off) kfifo_copy_out() argument
152 __kfifo_out_peek(struct __kfifo * fifo,void * buf,unsigned int len) __kfifo_out_peek() argument
166 __kfifo_out(struct __kfifo * fifo,void * buf,unsigned int len) __kfifo_out() argument
175 kfifo_copy_from_user(struct __kfifo * fifo,const void __user * from,unsigned int len,unsigned int off,unsigned int * copied) kfifo_copy_from_user() argument
210 __kfifo_from_user(struct __kfifo * fifo,const void __user * from,unsigned long len,unsigned int * copied) __kfifo_from_user() argument
236 kfifo_copy_to_user(struct __kfifo * fifo,void __user * to,unsigned int len,unsigned int off,unsigned int * copied) kfifo_copy_to_user() argument
270 __kfifo_to_user(struct __kfifo * fifo,void __user * to,unsigned long len,unsigned int * copied) __kfifo_to_user() argument
334 setup_sgl(struct __kfifo * fifo,struct scatterlist * sgl,int nents,unsigned int len,unsigned int off) setup_sgl() argument
356 __kfifo_dma_in_prepare(struct __kfifo * fifo,struct scatterlist * sgl,int nents,unsigned int len) __kfifo_dma_in_prepare() argument
369 __kfifo_dma_out_prepare(struct __kfifo * fifo,struct scatterlist * sgl,int nents,unsigned int len) __kfifo_dma_out_prepare() argument
398 __kfifo_peek_n(struct __kfifo * fifo,size_t recsize) __kfifo_peek_n() argument
421 __kfifo_poke_n(struct __kfifo * fifo,unsigned int n,size_t recsize) __kfifo_poke_n() argument
432 __kfifo_len_r(struct __kfifo * fifo,size_t recsize) __kfifo_len_r() argument
438 __kfifo_in_r(struct __kfifo * fifo,const void * buf,unsigned int len,size_t recsize) __kfifo_in_r() argument
452 kfifo_out_copy_r(struct __kfifo * fifo,void * buf,unsigned int len,size_t recsize,unsigned int * n) kfifo_out_copy_r() argument
464 __kfifo_out_peek_r(struct __kfifo * fifo,void * buf,unsigned int len,size_t recsize) __kfifo_out_peek_r() argument
476 __kfifo_out_r(struct __kfifo * fifo,void * buf,unsigned int len,size_t recsize) __kfifo_out_r() argument
490 __kfifo_skip_r(struct __kfifo * fifo,size_t recsize) __kfifo_skip_r() argument
499 __kfifo_from_user_r(struct __kfifo * fifo,const void __user * from,unsigned long len,unsigned int * copied,size_t recsize) __kfifo_from_user_r() argument
523 __kfifo_to_user_r(struct __kfifo * fifo,void __user * to,unsigned long len,unsigned int * copied,size_t recsize) __kfifo_to_user_r() argument
548 __kfifo_dma_in_prepare_r(struct __kfifo * fifo,struct scatterlist * sgl,int nents,unsigned int len,size_t recsize) __kfifo_dma_in_prepare_r() argument
562 __kfifo_dma_in_finish_r(struct __kfifo * fifo,unsigned int len,size_t recsize) __kfifo_dma_in_finish_r() argument
571 __kfifo_dma_out_prepare_r(struct __kfifo * fifo,struct scatterlist * sgl,int nents,unsigned int len,size_t recsize) __kfifo_dma_out_prepare_r() argument
585 __kfifo_dma_out_finish_r(struct __kfifo * fifo,size_t recsize) __kfifo_dma_out_finish_r() argument
[all...]
/linux/include/linux/
H A Dkfifo.h3 * A generic kernel FIFO implementation
12 * How to porting drivers to the new generic FIFO API:
31 * and one writer is using the fifo and no kfifo_reset() will be called.
103 * helper macro to distinguish between real in place fifo where the fifo
104 * array is a part of the structure and the fifo type where the array is
105 * outside of the fifo structure.
107 #define __is_kfifo_ptr(fifo) \ argument
108 (sizeof(*fifo) == sizeof(STRUCT_KFIFO_PTR(typeof(*(fifo)->type))))
111 * DECLARE_KFIFO_PTR - macro to declare a fifo pointer object
112 * @fifo: name of the declared fifo
[all …]
H A Dpxa2xx_ssp.h62 #define SSCR0_RIM BIT(22) /* Receive FIFO overrun interrupt mask */
63 #define SSCR0_TUM BIT(23) /* Transmit FIFO underrun interrupt mask */
66 #define SSCR0_FPCKE BIT(29) /* FIFO packing enable */
70 #define SSCR1_RIE BIT(0) /* Receive FIFO Interrupt Enable */
71 #define SSCR1_TIE BIT(1) /* Transmit FIFO Interrupt Enable */
78 #define SSSR_TNF BIT(2) /* Transmit FIFO Not Full */
79 #define SSSR_RNE BIT(3) /* Receive FIFO Not Empty */
81 #define SSSR_TFS BIT(5) /* Transmit FIFO Service Request */
82 #define SSSR_RFS BIT(6) /* Receive FIFO Service Request */
83 #define SSSR_ROR BIT(7) /* Receive FIFO Overrun */
[all …]
/linux/fs/bcachefs/
H A Dfifo.h7 #define FIFO(type) \ macro
13 #define DECLARE_FIFO(type, name) FIFO(type) name
15 #define fifo_buf_size(fifo) \ argument
16 ((fifo)->size \
17 ? roundup_pow_of_two((fifo)->size) * sizeof((fifo)->data[0]) \
20 #define init_fifo(fifo, _size, _gfp) \ argument
22 (fifo)->front = (fifo)->back = 0; \
23 (fifo)->size = (_size); \
24 (fifo)->mask = (fifo)->size \
25 ? roundup_pow_of_two((fifo)->size) - 1 \
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/engine/fifo/
H A Dbase.c44 nvkm_runl_foreach(runl, engine->subdev.device->fifo) { in nvkm_fifo_ctxsw_in_progress()
55 nvkm_fifo_pause(struct nvkm_fifo *fifo, unsigned long *flags) in nvkm_fifo_pause() argument
57 return fifo->func->pause(fifo, flags); in nvkm_fifo_pause()
61 nvkm_fifo_start(struct nvkm_fifo *fifo, unsigned long *flags) in nvkm_fifo_start() argument
63 return fifo->func->start(fifo, flags); in nvkm_fifo_start()
67 nvkm_fifo_fault(struct nvkm_fifo *fifo, struct nvkm_fault_data *info) in nvkm_fifo_fault() argument
69 return fifo->func->mmu_fault->recover(fifo, info); in nvkm_fifo_fault()
76 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_new() local
78 if (oclass->engn == &fifo->func->cgrp.user) in nvkm_fifo_class_new()
79 return nvkm_ucgrp_new(fifo, oclass, argv, argc, pobject); in nvkm_fifo_class_new()
[all …]
H A DKbuild2 nvkm-y += nvkm/engine/fifo/base.o
3 nvkm-y += nvkm/engine/fifo/cgrp.o
4 nvkm-y += nvkm/engine/fifo/chan.o
5 nvkm-y += nvkm/engine/fifo/chid.o
6 nvkm-y += nvkm/engine/fifo/runl.o
7 nvkm-y += nvkm/engine/fifo/runq.o
9 nvkm-y += nvkm/engine/fifo/nv04.o
10 nvkm-y += nvkm/engine/fifo/nv10.o
11 nvkm-y += nvkm/engine/fifo/nv17.o
12 nvkm-y += nvkm/engine/fifo/nv40.o
[all …]
H A Dgf100.c43 nvkm_wr32(chan->cgrp->runl->fifo->engine.subdev.device, 0x002634, chan->id); in gf100_chan_preempt()
49 struct nvkm_device *device = chan->cgrp->runl->fifo->engine.subdev.device; in gf100_chan_stop()
57 struct nvkm_device *device = chan->cgrp->runl->fifo->engine.subdev.device; in gf100_chan_start()
67 struct nvkm_fifo *fifo = chan->cgrp->runl->fifo; in gf100_chan_unbind() local
68 struct nvkm_device *device = fifo->engine.subdev.device; in gf100_chan_unbind()
71 gf100_fifo_intr_engine(fifo); in gf100_chan_unbind()
79 struct nvkm_device *device = chan->cgrp->runl->fifo->engine.subdev.device; in gf100_chan_bind()
205 struct nvkm_fifo *fifo = runl->fifo; in gf100_engn_mmu_fault_triggered() local
206 struct nvkm_device *device = fifo->engine.subdev.device; in gf100_engn_mmu_fault_triggered()
213 spin_lock(&fifo->lock); in gf100_engn_mmu_fault_triggered()
[all …]
H A Dnv04.c43 struct nvkm_fifo *fifo = chan->cgrp->runl->fifo; in nv04_chan_stop() local
44 struct nvkm_device *device = fifo->engine.subdev.device; in nv04_chan_stop()
51 /* prevent fifo context switches */ in nv04_chan_stop()
52 spin_lock_irqsave(&fifo->lock, flags); in nv04_chan_stop()
56 chid = nvkm_rd32(device, NV03_PFIFO_CACHE1_PUSH1) & fifo->chid->mask; in nv04_chan_stop()
80 nvkm_wr32(device, NV03_PFIFO_CACHE1_PUSH1, fifo->chid->mask); in nv04_chan_stop()
88 spin_unlock_irqrestore(&fifo->lock, flags); in nv04_chan_stop()
94 struct nvkm_fifo *fifo = chan->cgrp->runl->fifo; in nv04_chan_start() local
97 spin_lock_irqsave(&fifo->lock, flags); in nv04_chan_start()
98 nvkm_mask(fifo->engine.subdev.device, NV04_PFIFO_MODE, BIT(chan->id), BIT(chan->id)); in nv04_chan_start()
[all …]
/linux/sound/soc/meson/
H A Daxg-fifo.c17 #include "axg-fifo.h"
21 * capture frontend DAI. The logic behind this two types of fifo is very
68 static void __dma_enable(struct axg_fifo *fifo, bool enable) in __dma_enable() argument
70 regmap_update_bits(fifo->map, FIFO_CTRL0, CTRL0_DMA_EN, in __dma_enable()
77 struct axg_fifo *fifo = axg_fifo_data(ss); in axg_fifo_pcm_trigger() local
83 __dma_enable(fifo, true); in axg_fifo_pcm_trigger()
88 __dma_enable(fifo, false); in axg_fifo_pcm_trigger()
101 struct axg_fifo *fifo = axg_fifo_data(ss); in axg_fifo_pcm_pointer() local
105 regmap_read(fifo->map, FIFO_STATUS2, &addr); in axg_fifo_pcm_pointer()
116 struct axg_fifo *fifo = axg_fifo_data(ss); in axg_fifo_pcm_hw_params() local
[all …]
H A Daiu-fifo.c13 #include "aiu-fifo.h"
37 struct aiu_fifo *fifo = snd_soc_dai_dma_data_get_playback(dai); in aiu_fifo_pointer() local
41 addr = snd_soc_component_read(component, fifo->mem_offset + AIU_MEM_RD); in aiu_fifo_pointer()
49 struct aiu_fifo *fifo = snd_soc_dai_dma_data_get_playback(dai); in aiu_fifo_enable() local
54 fifo->mem_offset + AIU_MEM_CONTROL, in aiu_fifo_enable()
83 struct aiu_fifo *fifo = snd_soc_dai_dma_data_get_playback(dai); in aiu_fifo_prepare() local
86 fifo->mem_offset + AIU_MEM_CONTROL, in aiu_fifo_prepare()
90 fifo->mem_offset + AIU_MEM_CONTROL, in aiu_fifo_prepare()
101 struct aiu_fifo *fifo = snd_soc_dai_dma_data_get_playback(dai); in aiu_fifo_hw_params() local
104 /* Setup the fifo boundaries */ in aiu_fifo_hw_params()
[all …]
/linux/drivers/platform/mellanox/
H A Dmlxbf-tmfifo.c38 /* Virtual devices sharing the TM FIFO. */
76 * @fifo: pointer to the tmfifo structure
95 struct mlxbf_tmfifo *fifo; member
134 * @tx_buf: tx buffer used to buffer data before writing into the FIFO
150 * @fifo: pointer to the tmfifo structure
155 struct mlxbf_tmfifo *fifo; member
180 * @rx_fifo_size: number of entries of the Rx FIFO
181 * @tx_fifo_size: number of entries of the Tx FIFO
211 * @len: payload length in network byte order. Messages sent into the FIFO
245 /* Free vrings of the FIFO device. */
[all …]
/linux/drivers/usb/renesas_usbhs/
H A Dfifo.c98 struct usbhs_fifo *fifo);
99 static struct dma_chan *usbhsf_dma_chan_get(struct usbhs_fifo *fifo,
109 struct usbhs_fifo *fifo = usbhs_pipe_to_fifo(pipe); in usbhs_pkt_pop() local
123 if (fifo) in usbhs_pkt_pop()
124 chan = usbhsf_dma_chan_get(fifo, pkt); in usbhs_pkt_pop()
141 if (fifo) in usbhs_pkt_pop()
142 usbhsf_fifo_unselect(pipe, fifo); in usbhs_pkt_pop()
255 * FIFO ctrl
258 struct usbhs_fifo *fifo) in usbhsf_send_terminator() argument
262 usbhs_bset(priv, fifo->ctr, BVAL, BVAL); in usbhsf_send_terminator()
[all …]
/linux/drivers/iio/imu/inv_icm42600/
H A Dinv_icm42600_buffer.c20 /* FIFO header: 1 byte */
52 /* FIFO empty */ in inv_icm42600_fifo_decode_packet()
105 if (st->fifo.en & INV_ICM42600_SENSOR_GYRO) in inv_icm42600_buffer_update_fifo_period()
110 if (st->fifo.en & INV_ICM42600_SENSOR_ACCEL) in inv_icm42600_buffer_update_fifo_period()
120 st->fifo.period = period; in inv_icm42600_buffer_update_fifo_period()
129 /* update only FIFO EN bits */ in inv_icm42600_buffer_set_fifo_en()
147 st->fifo.en = fifo_en; in inv_icm42600_buffer_set_fifo_en()
182 * inv_icm42600_buffer_update_watermark - update watermark FIFO threshold
187 * FIFO watermark threshold is computed based on the required watermark values
200 * to the FIFO frequency. Beware that this is only true because we are not
[all …]
/linux/drivers/md/bcache/
H A Dutil.h56 #define fifo_for_each(c, fifo, iter) \ argument
57 for (iter = (fifo)->front; \
58 c = (fifo)->data[iter], iter != (fifo)->back; \
59 iter = (iter + 1) & (fifo)->mask)
61 #define __init_fifo(fifo, gfp) \ argument
64 BUG_ON(!(fifo)->size); \
66 _allocated_size = roundup_pow_of_two((fifo)->size + 1); \
67 _bytes = _allocated_size * sizeof(*(fifo)->data); \
69 (fifo)->mask = _allocated_size - 1; \
70 (fifo)->front = (fifo)->back = 0; \
[all …]
/linux/drivers/usb/fotg210/
H A Dfotg210-udc.h47 /* Cx configuration and FIFO Empty Status register(0x120) */
49 #define DCFESR_FIFO_EMPTY(fifo) (1 << 8 << (fifo)) argument
78 #define DMISGR1_MF_IN_INT(fifo) (1 << (16 + (fifo))) argument
87 #define DMISGR1_MF_OUTSPK_INT(fifo) (0x3 << (fifo) * 2) argument
111 #define DISGR1_OUT_INT(fifo) (1 << ((fifo) * 2)) argument
112 #define DISGR1_SPK_INT(fifo) (1 << 1 << ((fifo) * 2)) argument
113 #define DISGR1_IN_INT(fifo) (1 << 16 << (fifo)) argument
165 /* Device FIFO Map Register (0x1A8) */
167 #define FIFOMAP_DIROUT(fifo) (0x0 << 4 << (fifo) * 8) argument
168 #define FIFOMAP_DIRIN(fifo) (0x1 << 4 << (fifo) * 8) argument
[all …]
/linux/drivers/net/ethernet/intel/fm10k/
H A Dfm10k_mbx.c7 * fm10k_fifo_init - Initialize a message FIFO
8 * @fifo: pointer to FIFO
9 * @buffer: pointer to memory to be used to store FIFO
10 * @size: maximum message size to store in FIFO, must be 2^n - 1
12 static void fm10k_fifo_init(struct fm10k_mbx_fifo *fifo, u32 *buffer, u16 size) in fm10k_fifo_init() argument
14 fifo->buffer = buffer; in fm10k_fifo_init()
15 fifo->size = size; in fm10k_fifo_init()
16 fifo->head = 0; in fm10k_fifo_init()
17 fifo->tail = 0; in fm10k_fifo_init()
21 * fm10k_fifo_used - Retrieve used space in FIFO
[all …]
/linux/sound/core/seq/
H A Dseq_fifo.h3 * ALSA sequencer FIFO
13 /* === FIFO === */
16 struct snd_seq_pool *pool; /* FIFO pool */
17 struct snd_seq_event_cell *head; /* pointer to head of fifo */
18 struct snd_seq_event_cell *tail; /* pointer to tail of fifo */
27 /* create new fifo (constructor) */
30 /* delete fifo (destructor) */
34 /* enqueue event to fifo */
37 /* lock fifo from release */
38 #define snd_seq_fifo_lock(fifo) snd_use_lock_use(&(fifo)->use_lock) argument
[all …]
/linux/drivers/isdn/hardware/mISDN/
H A Dhfcsusb.c698 conhdlc = 8; /* enable FIFO */ in hfcsusb_setup_bch()
804 hfcsusb_rx_frame(struct usb_fifo *fifo, __u8 *data, unsigned int len, in hfcsusb_rx_frame() argument
807 struct hfcsusb *hw = fifo->hw; in hfcsusb_rx_frame()
810 int fifon = fifo->fifonum; in hfcsusb_rx_frame()
816 printk(KERN_DEBUG "%s: %s: fifo(%i) len(%i) " in hfcsusb_rx_frame()
819 fifo->dch, fifo->bch, fifo->ech); in hfcsusb_rx_frame()
824 if ((!!fifo->dch + !!fifo->bch + !!fifo->ech) != 1) { in hfcsusb_rx_frame()
831 if (fifo->dch) { in hfcsusb_rx_frame()
832 rx_skb = fifo->dch->rx_skb; in hfcsusb_rx_frame()
833 maxlen = fifo->dch->maxlen; in hfcsusb_rx_frame()
[all …]
/linux/arch/powerpc/platforms/powernv/
H A Dvas-fault.c21 * The maximum FIFO size for fault window can be 8MB
22 * (VAS_RX_FIFO_SIZE_MAX). Using 4MB FIFO since each VAS
24 * 8MB FIFO can be used if expects more faults for each VAS
32 unsigned long *fifo = entry; in dump_fifo() local
35 pr_err("Fault fifo size %d, Max crbs %d\n", vinst->fault_fifo_size, in dump_fifo()
38 /* Dump 10 CRB entries or until end of FIFO */ in dump_fifo()
39 pr_err("Fault FIFO Dump:\n"); in dump_fifo()
40 for (i = 0; i < 10*(CRB_SIZE/8) && fifo < end; i += 4, fifo += 4) { in dump_fifo()
42 i, fifo, *fifo, *(fifo+1), *(fifo+2), *(fifo+3)); in dump_fifo()
47 * Process valid CRBs in fault FIFO.
[all …]
/linux/drivers/spi/
H A Dspi-mpc512x-psc.c55 struct mpc512x_psc_fifo __iomem *fifo; member
147 struct mpc512x_psc_fifo __iomem *fifo = mps->fifo; in mpc512x_psc_spi_transfer_rxtx() local
167 fifosz = MPC512x_PSC_FIFO_SZ(in_be32(&fifo->txsz)); in mpc512x_psc_spi_transfer_rxtx()
169 fifosz = MPC512x_PSC_FIFO_SZ(in_be32(&fifo->rxsz)); in mpc512x_psc_spi_transfer_rxtx()
170 fifosz -= in_be32(&fifo->rxcnt) + 1; in mpc512x_psc_spi_transfer_rxtx()
174 /* fill the TX FIFO */ in mpc512x_psc_spi_transfer_rxtx()
178 setbits32(&fifo->txcmd, in mpc512x_psc_spi_transfer_rxtx()
180 out_8(&fifo->txdata_8, data); in mpc512x_psc_spi_transfer_rxtx()
184 /* have the ISR trigger when the TX FIFO is empty */ in mpc512x_psc_spi_transfer_rxtx()
186 out_be32(&fifo->txisr, MPC512x_PSC_FIFO_EMPTY); in mpc512x_psc_spi_transfer_rxtx()
[all …]
/linux/Documentation/devicetree/bindings/powerpc/fsl/
H A Dmpc5121-psc.txt8 fsl,mpc5121-immr SoC node. Additionally the PSC FIFO
9 Controller node fsl,mpc5121-psc-fifo is required there:
19 PSC FIFO Controller and b is a field that represents an
23 - fsl,rx-fifo-size : the size of the RX fifo slice (a multiple of 4)
24 - fsl,tx-fifo-size : the size of the TX fifo slice (a multiple of 4)
30 for that is fsl,mpc5121-psc-spi. It requires a fsl,mpc5121-psc-fifo as well.
35 fsl,mpc512x-psc-fifo node
39 - compatible : Should be "fsl,<soc>-psc-fifo"
42 FIFO Controller
44 PSC FIFO Controller and b is a field that represents an
[all …]
/linux/sound/arm/
H A Dpxa2xx-ac97-regs.h10 #define POCR_FEIE (1 << 3) /* FIFO Error Interrupt Enable */
11 #define POCR_FSRIE (1 << 1) /* FIFO Service Request Interrupt Enable */
14 #define PICR_FEIE (1 << 3) /* FIFO Error Interrupt Enable */
15 #define PICR_FSRIE (1 << 1) /* FIFO Service Request Interrupt Enable */
18 #define MCCR_FEIE (1 << 3) /* FIFO Error Interrupt Enable */
19 #define MCCR_FSRIE (1 << 1) /* FIFO Service Request Interrupt Enable */
38 #define POSR_FIFOE (1 << 4) /* FIFO error */
39 #define POSR_FSR (1 << 2) /* FIFO Service Request */
42 #define PISR_FIFOE (1 << 4) /* FIFO error */
44 #define PISR_FSR (1 << 2) /* FIFO Service Request */
[all …]
/linux/drivers/mailbox/
H A Domap-mailbox.c106 /* Mailbox FIFO handle functions */
109 struct omap_mbox_fifo *fifo = &mbox->rx_fifo; in mbox_fifo_read() local
111 return mbox_read_reg(mbox->parent, fifo->msg); in mbox_fifo_read()
116 struct omap_mbox_fifo *fifo = &mbox->tx_fifo; in mbox_fifo_write() local
118 mbox_write_reg(mbox->parent, msg, fifo->msg); in mbox_fifo_write()
123 struct omap_mbox_fifo *fifo = &mbox->rx_fifo; in mbox_fifo_empty() local
125 return (mbox_read_reg(mbox->parent, fifo->msg_stat) == 0); in mbox_fifo_empty()
130 struct omap_mbox_fifo *fifo = &mbox->tx_fifo; in mbox_fifo_full() local
132 return mbox_read_reg(mbox->parent, fifo->fifo_stat); in mbox_fifo_full()
138 struct omap_mbox_fifo *fifo = (irq == IRQ_TX) ? in ack_mbox_irq() local
[all …]
/linux/samples/kfifo/
H A Ddma-example.c3 * 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()
[all …]
/linux/drivers/char/xillybus/
H A Dxillyusb.c8 * a pipe between a hardware FIFO in the programmable logic and a device
76 int fill; /* Number of bytes in the FIFO */
107 struct xillyfifo fifo; member
219 * calls to each on the same FIFO is not allowed) however it's OK to have
220 * threads calling each of the two functions once on the same FIFO, and
224 static int fifo_write(struct xillyfifo *fifo, in fifo_write() argument
231 unsigned int writepos = fifo->writepos; in fifo_write()
232 unsigned int writebuf = fifo->writebuf; in fifo_write()
236 nmax = fifo->size - READ_ONCE(fifo->fill); in fifo_write()
239 unsigned int nrail = fifo->bufsize - writepos; in fifo_write()
[all …]

12345678910>>...76