| Message ID | 20250111183711.2338-1-shentey@gmail.com |
|---|---|
| Headers | show |
| Series | i.MX and SDHCI improvements | expand |
Am 11. Januar 2025 18:36:58 UTC schrieb Bernhard Beschow <shentey@gmail.com>: >This series fixes some details in i.MX platform devices, improves SDHCI > >compatibility with U-Boot and modernizes some code. > > > >The first 5 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. > > > >Patches 6 and 7 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. > > > >v2: > >* Drop redundant implementation of TYPE_OR_IRQ (David, Zoltan) > >* Use absolute QOM paths when tracing in imx_gpio and imx_i2c (Phil) > >* Trace hexadecimal values in imx_serial (Phil) > >* Do NOT move inversion of presence and write-protect GPIOs since that changes > >the internal logic of the device > > > >Bernhard Beschow (13): > > 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/pci-host/designware: Expose MSI IRQ > > hw/gpio/imx_gpio: Don't clear input GPIO values upon reset > Does anybody feel comfortable enough reviewing the above four patches? I hit those issues while working on i.MX machines. The below two patches are less critical for my work but there were patches with discussions floating around recently, e.g. [1]. Thanks, Bernhard [1] <https://patchew.org/QEMU/20250108100240.960593-1-clg@redhat.com/> > 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/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/gpio/imx_gpio.c | 19 +++---- > > 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/gpio/trace-events | 5 ++ > > hw/i2c/trace-events | 5 ++ > > hw/misc/trace-events | 6 ++ > > 22 files changed, 151 insertions(+), 108 deletions(-) > > > >-- > >2.48.0 > > >
On Sat, 11 Jan 2025 at 18:37, Bernhard Beschow <shentey@gmail.com> wrote: > > This series fixes some details in i.MX platform devices, improves SDHCI > compatibility with U-Boot and modernizes some code. > > The first 5 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. > > Patches 6 and 7 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. > > v2: > * Drop redundant implementation of TYPE_OR_IRQ (David, Zoltan) > * Use absolute QOM paths when tracing in imx_gpio and imx_i2c (Phil) > * Trace hexadecimal values in imx_serial (Phil) > * Do NOT move inversion of presence and write-protect GPIOs since that changes > the internal logic of the device > > Bernhard Beschow (13): > hw/char/imx_serial: Fix reset value of UFCR register > hw/char/imx_serial: Update all state before restarting ageing timer > hw/pci-host/designware: Expose MSI IRQ I've taken these three into target-arm.next; I see Philippe has taken most of the rest; and the hw/sd patches I've left some review comments on. thanks -- PMM
This series fixes some details in i.MX platform devices, improves SDHCI compatibility with U-Boot and modernizes some code. The first 5 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. Patches 6 and 7 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. v2: * Drop redundant implementation of TYPE_OR_IRQ (David, Zoltan) * Use absolute QOM paths when tracing in imx_gpio and imx_i2c (Phil) * Trace hexadecimal values in imx_serial (Phil) * Do NOT move inversion of presence and write-protect GPIOs since that changes the internal logic of the device Bernhard Beschow (13): 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/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/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/gpio/imx_gpio.c | 19 +++---- 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/gpio/trace-events | 5 ++ hw/i2c/trace-events | 5 ++ hw/misc/trace-events | 6 ++ 22 files changed, 151 insertions(+), 108 deletions(-)