qemu/hw/char
Rayhan Faizel 988f244297 hw/char/imx_serial: Implement receive FIFO and ageing timer
This patch implements a 32 half word FIFO as per imx serial device
specifications.  If a non empty FIFO is below the trigger level, an
ageing timer will tick for a duration of 8 characters.  On expiry,
AGTIM will be set triggering an interrupt.  AGTIM timer resets when
there is activity in the receive FIFO.

Otherwise, RRDY is set when trigger level is exceeded.  The receive
trigger level is 8 in newer kernel versions and 1 in older ones.

This change will break migration compatibility for the imx boards.

Signed-off-by: Rayhan Faizel <rayhan.faizel@gmail.com>
Message-id: 20240125151931.83494-1-rayhan.faizel@gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: commit message tidyups]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2024-01-26 11:34:21 +00:00
..
avr_usart.c qdev: Move softmmu properties to qdev-properties-system.h 2020-12-18 15:20:17 -05:00
bcm2835_aux.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
cadence_uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
cmsdk-apb-uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
debugcon.c qdev: Move softmmu properties to qdev-properties-system.h 2020-12-18 15:20:17 -05:00
digic-uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
escc.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
etraxfs_ser.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00
exynos4210_uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
goldfish_tty.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
grlib_apbuart.c qdev: Move softmmu properties to qdev-properties-system.h 2020-12-18 15:20:17 -05:00
ibex_uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
imx_serial.c hw/char/imx_serial: Implement receive FIFO and ageing timer 2024-01-26 11:34:21 +00:00
ipoctal232.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
Kconfig hw/char: Add config for shakti uart 2021-09-01 11:59:12 +10:00
mcf_uart.c hw/char/mcf_uart: Have mcf_uart_create() return DeviceState 2023-11-01 07:31:05 +01:00
mchp_pfsoc_mmuart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
meson.build meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
nrf51_uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
omap_uart.c hw/arm/omap: Remove unused omap_uart_attach() 2023-06-05 07:43:23 +01:00
parallel-isa.c hw/char/parallel-isa: Export struct ISAParallelState 2023-06-13 11:28:58 +02:00
parallel.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
pl011.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
renesas_sci.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
riscv_htif.c hw/char: riscv_htif: replace exit calls with proper shutdown 2023-10-12 12:35:36 +10:00
sclpconsole-lm.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
sclpconsole.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
serial-isa.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
serial-pci-multi.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
serial-pci.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
serial.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
sh_serial.c hw/char/sh_serial: Add device id to trace output 2021-10-30 18:39:37 +02:00
shakti_uart.c hw/char: shakti_uart: Register device in 'input' category 2021-10-07 08:41:33 +10:00
sifive_uart.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
spapr_vty.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
stm32f2xx_usart.c hw/char/stm32f2xx_usart: Update IRQ when DR is written 2023-11-02 13:36:45 +00:00
terminal3270.c s390x: css: report errors from ccw_dstream_read/write 2021-04-09 10:52:13 +02:00
trace-events hw/xen: update Xen console to XenDevice model 2023-11-07 08:54:20 +00:00
trace.h
virtio-console.c hw/char: Have FEWatchFunc handlers return G_SOURCE_CONTINUE/REMOVE 2023-08-31 19:47:43 +02:00
virtio-serial-bus.c hw/char: Constify VMState 2023-12-29 11:17:30 +11:00
xen_console.c hw/xen: add support for Xen primary console in emulated mode 2023-11-07 08:54:20 +00:00
xilinx_uartlite.c hw/char/xilinx_uartlite: Expose XILINX_UARTLITE QOM type 2023-02-27 13:27:05 +00:00