Home
last modified time | relevance | path

Searched refs:fifo (Results 1 – 25 of 52) sorted by relevance

123

/qemu/util/
H A Dfifo8.c34 assert(fifo->num < fifo->capacity); in fifo8_push()
35 fifo->data[(fifo->head + fifo->num) % fifo->capacity] = data; in fifo8_push()
43 assert(fifo->num + num <= fifo->capacity); in fifo8_push_all()
45 start = (fifo->head + fifo->num) % fifo->capacity; in fifo8_push_all()
63 ret = fifo->data[fifo->head++]; in fifo8_pop()
64 fifo->head %= fifo->capacity; in fifo8_pop()
76 num = MIN(fifo->capacity - fifo->head, max); in fifo8_peekpop_buf()
77 ret = &fifo->data[fifo->head]; in fifo8_peekpop_buf()
81 fifo->head %= fifo->capacity; in fifo8_peekpop_buf()
113 return (fifo->num == fifo->capacity); in fifo8_is_full()
[all …]
/qemu/include/qemu/
H A Dfifo32.h21 Fifo8 fifo; member
35 fifo8_create(&fifo->fifo, capacity * sizeof(uint32_t)); in fifo32_create()
48 fifo8_destroy(&fifo->fifo); in fifo32_destroy()
62 return DIV_ROUND_UP(fifo8_num_free(&fifo->fifo), sizeof(uint32_t)); in fifo32_num_free()
76 return DIV_ROUND_UP(fifo8_num_used(&fifo->fifo), sizeof(uint32_t)); in fifo32_num_used()
94 fifo8_push(&fifo->fifo, data & 0xff); in fifo32_push()
116 fifo32_push(fifo, data[i]); in fifo32_push_all()
137 ret |= (fifo8_pop(&fifo->fifo) << (i * 8)); in fifo32_pop()
157 fifo8_reset(&fifo->fifo); in fifo32_reset()
171 return fifo8_is_empty(&fifo->fifo); in fifo32_is_empty()
[all …]
H A Dfifo8.h22 void fifo8_create(Fifo8 *fifo, uint32_t capacity);
32 void fifo8_destroy(Fifo8 *fifo);
43 void fifo8_push(Fifo8 *fifo, uint8_t data);
56 void fifo8_push_all(Fifo8 *fifo, const uint8_t *data, uint32_t num);
68 uint8_t fifo8_pop(Fifo8 *fifo);
94 const uint8_t *fifo8_pop_buf(Fifo8 *fifo, uint32_t max, uint32_t *numptr);
130 void fifo8_reset(Fifo8 *fifo);
141 bool fifo8_is_empty(Fifo8 *fifo);
152 bool fifo8_is_full(Fifo8 *fifo);
163 uint32_t fifo8_num_free(Fifo8 *fifo);
[all …]
/qemu/hw/block/
H A Dfdc.c1471 kt = fdctrl->fifo[2]; in fdctrl_start_transfer()
1531 fdctrl->data_len = 128 << (fdctrl->fifo[5] > 7 ? 7 : fdctrl->fifo[5]); in fdctrl_start_transfer()
1858 fdctrl->fifo[2] = 0; in fdctrl_handle_dumpreg()
1859 fdctrl->fifo[3] = 0; in fdctrl_handle_dumpreg()
1912 fdctrl->fifo[0] = 0; in fdctrl_handle_save()
1913 fdctrl->fifo[1] = 0; in fdctrl_handle_save()
1921 fdctrl->fifo[4] = 0; in fdctrl_handle_save()
1922 fdctrl->fifo[5] = 0; in fdctrl_handle_save()
1959 fdctrl->fifo[2] > 7 ? 16384 : 128 << fdctrl->fifo[2]; in fdctrl_handle_format_track()
2077 fdctrl->fifo[0] = fdctrl->fifo[1]; in fdctrl_handle_powerdown_mode()
[all …]
/qemu/hw/net/
H A Dallwinner_emac.c163 fifo8_push(fifo, val); in fifo8_push_word()
164 fifo8_push(fifo, val >> 8); in fifo8_push_word()
165 fifo8_push(fifo, val >> 16); in fifo8_push_word()
166 fifo8_push(fifo, val >> 24); in fifo8_push_word()
173 ret = fifo8_pop(fifo); in fifo8_pop_word()
174 ret |= fifo8_pop(fifo) << 8; in fifo8_pop_word()
175 ret |= fifo8_pop(fifo) << 16; in fifo8_pop_word()
196 Fifo8 *fifo = &s->rx_fifo; in aw_emac_receive() local
218 fifo8_push_word(fifo, crc); in aw_emac_receive()
250 Fifo8 *fifo = &s->rx_fifo; in aw_emac_read() local
[all …]
/qemu/semihosting/
H A Dconsole.c36 Fifo8 fifo; member
47 return (int)fifo8_num_free(&c->fifo); in console_can_read()
62 while (size-- && !fifo8_is_full(&c->fifo)) { in console_read()
63 fifo8_push(&c->fifo, *buf++); in console_read()
74 return !fifo8_is_empty(&c->fifo); in qemu_semihosting_console_ready()
84 if (fifo8_is_empty(&c->fifo)) { in qemu_semihosting_console_block_until_ready()
102 *(char *)(buf + ret) = fifo8_pop(&c->fifo); in qemu_semihosting_console_read()
104 } while (ret < len && !fifo8_is_empty(&c->fifo)); in qemu_semihosting_console_read()
123 fifo8_create(&console.fifo, FIFO_SIZE); in qemu_semihosting_console_init()
/qemu/hw/audio/
H A Dpl041.c173 pl041_fifo *fifo = &s->fifo1.tx_fifo; in pl041_fifo1_write() local
179 if (fifo->level < s->fifo_depth) { in pl041_fifo1_write()
197 fifo->data[fifo->level++] = value; in pl041_fifo1_write()
227 fifo->data[fifo->level++] = sample; in pl041_fifo1_write()
238 if (fifo->level > 0) { in pl041_fifo1_write()
242 if (fifo->level >= (s->fifo_depth / 2)) { in pl041_fifo1_write()
246 if (fifo->level >= s->fifo_depth) { in pl041_fifo1_write()
256 pl041_fifo *fifo = &s->fifo1.tx_fifo; in pl041_fifo1_transmit() local
282 fifo->level -= written_samples; in pl041_fifo1_transmit()
286 fifo->data[i] = fifo->data[written_samples + i]; in pl041_fifo1_transmit()
[all …]
H A Dtrace-events33 asc_read_fifo(const char fifo, int reg, unsigned size, uint64_t value) "fifo %c reg=0x%03x size=%u …
35 asc_read_extreg(const char fifo, int reg, unsigned size, uint64_t value) "fifo %c reg=0x%03x size=%…
36 asc_fifo_get(const char fifo, int rptr, int cnt, uint64_t value) "fifo %c rptr=0x%x cnt=0x%x value=…
37 asc_write_fifo(const char fifo, int reg, unsigned size, int wrptr, int cnt, uint64_t value) "fifo %…
39 asc_write_extreg(const char fifo, int reg, unsigned size, uint64_t value) "fifo %c reg=0x%03x size=…
H A Dasc.c125 val = fs->fifo[fs->rptr]; in asc_fifo_get()
300 sample = fs->fifo[0x200 * (channel >> 1) + offset]; in generate_wavetable()
370 trace_asc_read_fifo('A' + fs->index, addr, size, fs->fifo[addr]); in asc_fifo_read()
371 return fs->fifo[addr]; in asc_fifo_read()
384 fs->fifo[fs->wptr++] = value; in asc_fifo_write()
407 fs->fifo[addr] = value; in asc_fifo_write()
559 VMSTATE_UINT8_ARRAY(fifo, ASCFIFOState, ASC_FIFO_SIZE),
/qemu/hw/i2c/
H A Domap_i2c.c48 uint32_t fifo; member
147 s->fifo = 0; in omap_i2c_reset()
200 ret |= ((s->fifo >> 0) & 0xff) << 8; in omap_i2c_read()
201 ret |= ((s->fifo >> 8) & 0xff) << 0; in omap_i2c_read()
203 ret |= ((s->fifo >> 8) & 0xff) << 8; in omap_i2c_read()
204 ret |= ((s->fifo >> 0) & 0xff) << 0; in omap_i2c_read()
211 s->fifo >>= 16; in omap_i2c_read()
308 s->fifo <<= 16; in omap_i2c_write()
359 s->fifo = 0; in omap_i2c_write()
421 s->fifo <<= 8; in omap_i2c_writeb()
[all …]
/qemu/hw/scsi/
H A Desp.c171 if (fifo8_num_used(&s->fifo) == s->fifo.capacity) { in esp_fifo_push()
174 fifo8_push(&s->fifo, val); in esp_fifo_push()
182 fifo8_push_all(&s->fifo, buf, len); in esp_fifo_push_buf()
190 if (fifo8_is_empty(&s->fifo)) { in esp_fifo_pop()
193 val = fifo8_pop(&s->fifo); in esp_fifo_pop()
211 buf = fifo8_pop_buf(fifo, len, &n); in esp_fifo8_pop_buf()
218 len = MIN(len, fifo8_num_used(fifo)); in esp_fifo8_pop_buf()
918 if (fifo8_is_empty(&s->fifo)) { in esp_do_nodma()
1122 fifo8_reset(&s->fifo); in esp_hard_reset()
1170 fifo8_reset(&s->fifo); in esp_run_cmd()
[all …]
/qemu/tests/unit/
H A Dtest-io-channel-command.c38 g_autofree gchar *fifo = g_build_filename(tmpdir, TEST_FIFO, NULL); in test_io_channel_command_fifo() local
39 g_autofree gchar *srcargs = g_strdup_printf("%s - PIPE:%s,wronly", socat, fifo); in test_io_channel_command_fifo()
40 g_autofree gchar *dstargs = g_strdup_printf("%s PIPE:%s,rdonly -", socat, fifo); in test_io_channel_command_fifo()
47 if (mkfifo(fifo, 0600)) { in test_io_channel_command_fifo()
65 err = g_unlink(fifo); in test_io_channel_command_fifo()
/qemu/hw/arm/
H A Dstellaris.c712 } fifo[4]; member
723 tail = s->fifo[n].state & 0xf; in stellaris_adc_fifo_read()
727 s->fifo[n].state = (s->fifo[n].state & ~0xf) | ((tail + 1) & 0xf); in stellaris_adc_fifo_read()
732 return s->fifo[n].data[tail]; in stellaris_adc_fifo_read()
742 head = (s->fifo[n].state >> 4) & 0xf; in stellaris_adc_fifo_write()
747 s->fifo[n].data[head] = value; in stellaris_adc_fifo_write()
749 s->fifo[n].state &= ~STELLARIS_ADC_FIFO_EMPTY; in stellaris_adc_fifo_write()
750 s->fifo[n].state = (s->fifo[n].state & ~0xf0) | (head << 4); in stellaris_adc_fifo_write()
751 if ((s->fifo[n].state & 0xf) == head) in stellaris_adc_fifo_write()
752 s->fifo[n].state |= STELLARIS_ADC_FIFO_FULL; in stellaris_adc_fifo_write()
[all …]
/qemu/tests/qemu-iotests/
H A D26232 iotests.FilePath('mig_fifo') as fifo, \
57 os.mkfifo(fifo)
61 vm_b.add_incoming("exec: cat '%s'" % (fifo))
73 iotests.log(vm_a.qmp('migrate', uri='exec:cat >%s' % (fifo)))
/qemu/hw/ppc/
H A Dpnv_i2c.c142 if (fifo8_is_full(&i2c->fifo)) { in pnv_i2c_fifo_flush()
147 fifo8_push(&i2c->fifo, data); in pnv_i2c_fifo_flush()
149 if (fifo8_is_empty(&i2c->fifo)) { in pnv_i2c_fifo_flush()
153 data = fifo8_pop(&i2c->fifo); in pnv_i2c_fifo_flush()
242 if (fifo8_is_full(&i2c->fifo)) { in pnv_i2c_fifo_in()
249 fifo8_push(&i2c->fifo, data); in pnv_i2c_fifo_in()
277 if (fifo8_is_empty(&i2c->fifo)) { in pnv_i2c_fifo_out()
284 data = fifo8_pop(&i2c->fifo); in pnv_i2c_fifo_out()
351 fifo8_reset(&i2c->fifo); in pnv_i2c_reset()
399 fifo8_reset(&i2c->fifo); in pnv_i2c_xscom_write()
[all …]
/qemu/hw/dma/
H A Dsoc_dma.c74 } fifo; member
134 entry->u.fifo.out != port) in soc_dma_ch_update_type()
136 if (entry->addr != ch->vaddr[port] || entry->u.fifo.out != port) in soc_dma_ch_update_type()
142 ch->io_fn[port] = entry->u.fifo.fn; in soc_dma_ch_update_type()
143 ch->io_opaque[port] = entry->u.fifo.opaque; in soc_dma_ch_update_type()
286 if (entry->addr == virt_base && entry->u.fifo.out == out) { in soc_dma_port_add_fifo()
304 entry->u.fifo.fn = fn; in soc_dma_port_add_fifo()
305 entry->u.fifo.opaque = opaque; in soc_dma_port_add_fifo()
306 entry->u.fifo.out = out; in soc_dma_port_add_fifo()
/qemu/hw/input/
H A Dlm832x.c67 uint8_t fifo[16]; member
220 s->kbd.start &= sizeof(s->kbd.fifo) - 1; in lm_kbd_read()
223 return s->kbd.fifo[s->kbd.start]; in lm_kbd_read()
228 return s->kbd.fifo[(s->kbd.start + byte) & (sizeof(s->kbd.fifo) - 1)]; in lm_kbd_read()
462 VMSTATE_BUFFER(kbd.fifo, LM823KbdState),
490 if (s->kbd.len >= sizeof(s->kbd.fifo)) { in lm832x_key_event()
495 s->kbd.fifo[(s->kbd.start + s->kbd.len ++) & (sizeof(s->kbd.fifo) - 1)] = in lm832x_key_event()
/qemu/hw/char/
H A Dmcf_uart.c30 uint8_t fifo[4]; member
98 val = s->fifo[0]; in mcf_uart_read()
101 s->fifo[i] = s->fifo[i + 1]; in mcf_uart_read()
253 s->fifo[s->fifo_len] = data; in mcf_uart_push_byte()
/qemu/hw/misc/
H A Domap_gpmc.c61 uint8_t fifo[64]; member
258 s->prefetch.fifo[fptr] = s->prefetch.fifo[fptr + bytes]; in fill_prefetch_fifo()
264 s->prefetch.fifo[fptr++] = v & 0xff; in fill_prefetch_fifo()
265 s->prefetch.fifo[fptr++] = (v >> 8) & 0xff; in fill_prefetch_fifo()
267 s->prefetch.fifo[fptr++] = omap_nand_read(&s->cs_file[cs], 0, 1); in fill_prefetch_fifo()
306 data = s->prefetch.fifo[63 - s->prefetch.fifopointer]; in omap_gpmc_prefetch_read()
349 s->prefetch.fifo[0] = value; in omap_gpmc_prefetch_write()
352 value = (value << 8) | s->prefetch.fifo[0]; in omap_gpmc_prefetch_write()
/qemu/tests/qemu-iotests/tests/
H A Dmigrate-bitmaps-postcopy-test31 fifo = os.path.join(iotests.test_dir, 'mig_fifo') variable
100 os.remove(fifo)
103 os.mkfifo(fifo)
110 self.vm_b.add_incoming("exec: cat '" + fifo + "'")
163 self.vm_a.cmd('migrate', uri='exec:cat>' + fifo)
/qemu/hw/ssi/
H A Dxilinx_spips.c746 for (i = 0; i < num && !fifo8_is_full(fifo); ++i) { in tx_data_bytes()
748 fifo8_push(fifo, (uint8_t)(value >> 24)); in tx_data_bytes()
751 fifo8_push(fifo, (uint8_t)value); in tx_data_bytes()
815 for (i = 0; i < max && !fifo8_is_empty(fifo); ++i) { in rx_data_bytes()
816 value[i] = fifo8_pop(fifo); in rx_data_bytes()
825 if (max == 0 || max > fifo->num) { in pop_buf()
828 *num = MIN(fifo->capacity - fifo->head, max); in pop_buf()
829 ret = &fifo->data[fifo->head]; in pop_buf()
830 fifo->head += *num; in pop_buf()
831 fifo->head %= fifo->capacity; in pop_buf()
[all …]
/qemu/hw/sd/
H A Domap_mmc.c50 uint16_t fifo[32]; member
236 host->fifo[(host->fifo_start + host->fifo_len) & 31] = value; in omap_mmc_transfer()
239 host->fifo[(host->fifo_start + host->fifo_len) & 31] |= in omap_mmc_transfer()
249 value = host->fifo[host->fifo_start] & 0xff; in omap_mmc_transfer()
252 value = host->fifo[host->fifo_start] >> 8; in omap_mmc_transfer()
361 i = s->fifo[s->fifo_start]; in omap_mmc_read()
497 s->fifo[(s->fifo_start + s->fifo_len) & 31] = value; in omap_mmc_write()
H A Dpl181.c55 uint32_t fifo[PL181_FIFO_LEN]; /* TODO use Fifo32 */ member
82 VMSTATE_UINT32_ARRAY(fifo, PL181State, PL181_FIFO_LEN),
153 s->fifo[n] = value; in pl181_fifo_push()
165 value = s->fifo[s->fifo_pos]; in pl181_fifo_pop()
/qemu/audio/
H A Djackaudio.c72 QJackBuffer fifo; member
279 qjack_buffer_read_l(&c->fifo, c->process_buffers, nframes); in qjack_process()
287 qjack_buffer_write_l(&c->fifo, c->process_buffers, nframes); in qjack_process()
309 qjack_buffer_clear(&c->fifo); in qjack_xrun()
354 return qjack_buffer_write(&jo->c.fifo, buf, len); in qjack_write()
368 return qjack_buffer_read(&ji->c.fifo, buf, len); in qjack_read()
493 qjack_buffer_create(&c->fifo, c->nchannels, c->buffersize * 3); in qjack_client_init()
585 qjack_buffer_free(&c->fifo); in qjack_client_fini_locked()
/qemu/hw/display/
H A Dvmware_vga.c74 uint32_t *fifo; member
570 s->fifo_min = le32_to_cpu(s->fifo[SVGA_FIFO_MIN]); in vmsvga_fifo_length()
571 s->fifo_max = le32_to_cpu(s->fifo[SVGA_FIFO_MAX]); in vmsvga_fifo_length()
572 s->fifo_next = le32_to_cpu(s->fifo[SVGA_FIFO_NEXT]); in vmsvga_fifo_length()
573 s->fifo_stop = le32_to_cpu(s->fifo[SVGA_FIFO_STOP]); in vmsvga_fifo_length()
601 uint32_t cmd = s->fifo[s->fifo_stop >> 2]; in vmsvga_fifo_read_raw()
607 s->fifo[SVGA_FIFO_STOP] = cpu_to_le32(s->fifo_stop); in vmsvga_fifo_read_raw()
788 s->fifo[SVGA_FIFO_STOP] = cpu_to_le32(s->fifo_stop); in vmsvga_fifo_run()
1048 s->fifo = (uint32_t *) s->fifo_ptr; in vmsvga_value_write()
1203 s->fifo = (uint32_t *) s->fifo_ptr; in vmsvga_post_load()

123