This series fixes some details in i.MX platform devices, improves SDHCI compatibility with U-Boot and modernizes some code.
The first 6 patches are bugfixes 1/ resolving infinite loop in U-Boot esdhc driver, 2/ fixing a character echoing issue in imx-serial, 3/ fixing IRQ sharing issue in Designware PCIe emulation, and 4/ fixing GPIO level preservation across resets in imx-gpio. The IRQ sharing issue is fixed using a new device type "TYPE_SHARED_IRQ" which is inspired by TYPE_SPLIT_IRQ. Patches 7 and 8 modernize SD card emulation by turning presence and write-protect GPIOs into qdev GPIOs and then further allowing the GPIOs to be inverted, just like device tree allows. The rest of the series is cosmetics including turning DPRINTF() into trace events which eases debugging. Bernhard Beschow (14): hw/sd/sdhci: Set SDHC_NIS_DMA bit when appropriate hw/char/imx_serial: Fix reset value of UFCR register hw/char/imx_serial: Update all state before restarting ageing timer hw/core: Introduce TYPE_SHARED_IRQ hw/pci-host/designware: Expose MSI IRQ hw/gpio/imx_gpio: Don't clear input GPIO values upon reset hw/sd/sd: Remove legacy sd_set_cb() in favor of GPIOs hw/sd/sd: Allow for inverting polarities of presence and write-protect GPIOs hw/char/imx_serial: Turn some DPRINTF() statements into trace events hw/timer/imx_gpt: Remove unused define tests/qtest/libqos: Reuse TYPE_IMX_I2C define hw/i2c/imx_i2c: Convert DPRINTF() to trace events hw/misc/imx6_src: Convert DPRINTF() to trace events hw/gpio/imx_gpio: Turn DPRINTF() into trace events include/hw/arm/fsl-imx6.h | 4 +- include/hw/arm/fsl-imx7.h | 4 +- include/hw/char/imx_serial.h | 2 +- include/hw/core/shared-irq.h | 39 ++++++++++ include/hw/pci-host/designware.h | 1 + include/hw/sd/sdcard_legacy.h | 1 - hw/arm/fsl-imx6.c | 13 +++- hw/arm/fsl-imx7.c | 13 +++- hw/char/imx_serial.c | 65 ++++++++++------ hw/core/shared-irq.c | 88 ++++++++++++++++++++++ hw/gpio/imx_gpio.c | 17 ++--- hw/i2c/imx_i2c.c | 21 ++---- hw/misc/imx6_src.c | 23 ++---- hw/pci-host/designware.c | 7 +- hw/sd/sd.c | 39 +++++----- hw/sd/sdhci.c | 11 ++- hw/timer/imx_gpt.c | 4 - tests/qtest/libqos/arm-imx25-pdk-machine.c | 5 +- tests/qtest/libqos/i2c-imx.c | 4 +- hw/arm/Kconfig | 2 + hw/char/trace-events | 5 ++ hw/core/Kconfig | 3 + hw/core/meson.build | 1 + hw/gpio/trace-events | 5 ++ hw/i2c/trace-events | 5 ++ hw/misc/trace-events | 6 ++ 26 files changed, 280 insertions(+), 108 deletions(-) create mode 100644 include/hw/core/shared-irq.h create mode 100644 hw/core/shared-irq.c -- 2.47.1