There is a utility helper for dealing with 8 bit fifos. This should be applicable to other integer widths as well. These two patches generalise this FIFO to work for 16, 32 and 64 bit ints.
Peter Crosthwaite (2): util/fifo: s/fifo8/fifo globally util/fifo: Generalise for common integer widths hw/char/serial.c | 30 +++++----- hw/ssi/xilinx_spi.c | 42 ++++++------- hw/ssi/xilinx_spips.c | 66 ++++++++++---------- include/hw/char/serial.h | 6 +- include/qemu/fifo.h | 104 ++++++++++++++++++++++++++++++++ include/qemu/fifo8.h | 99 ------------------------------ util/Makefile.objs | 2 +- util/fifo.c | 152 +++++++++++++++++++++++++++++++++++++++++++++++ util/fifo8.c | 79 ------------------------ 9 files changed, 329 insertions(+), 251 deletions(-) create mode 100644 include/qemu/fifo.h delete mode 100644 include/qemu/fifo8.h create mode 100644 util/fifo.c delete mode 100644 util/fifo8.c -- 1.8.5.2