/qemu/util/ |
H A D | fifo8.c | 34 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 D | fifo32.h | 21 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 D | fifo8.h | 22 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 D | fdc.c | 1471 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 D | allwinner_emac.c | 163 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 D | console.c | 36 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 D | pl041.c | 173 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 D | trace-events | 33 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 D | asc.c | 125 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 D | omap_i2c.c | 48 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 D | esp.c | 171 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 D | test-io-channel-command.c | 38 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 D | stellaris.c | 712 } 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 D | 262 | 32 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 D | pnv_i2c.c | 142 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 D | soc_dma.c | 74 } 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 D | lm832x.c | 67 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 D | mcf_uart.c | 30 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 D | omap_gpmc.c | 61 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 D | migrate-bitmaps-postcopy-test | 31 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 D | xilinx_spips.c | 746 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 D | omap_mmc.c | 50 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 D | pl181.c | 55 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 D | jackaudio.c | 72 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 D | vmware_vga.c | 74 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()
|