[PATCH v3 0/8] Add support for ZTE zx297520v3

Stefan Dösinger stefandoesinger at gmail.com
Tue Apr 14 14:12:07 PDT 2026


Hi,

This is a follow-up on my RFC patches from January [0]. I made more progress in more work on this SoC and it is time to get serious about code review and upstreaming.

Since my version in January I managed to get more hardware running: SPI, I2C, PMIC with real time clock and voltage regulators, Watchdog. LTE is not working yet, but I am able to start the coprocessor that handles it and talk to it via mailbox + shared memory. Wifi is working on a few more devices. Since WiFi, USB and Ethernet are working, the devices can have actual use with OpenWRT even without LTE.

Another hacker created a free software program to talk to the USB loader [1] and boot uboot and Linux without modifying the on disk files. At the moment it needs a proprietary blob, so my documentation is emphasising booting with the on-device U-Boot.

This patchset here is mostly unmodified from the version I sent in January. It is the bare minimum to get an interactive shell working on the UART. Future patches can be found on my git repository [2] for those curious to peek ahead. The first 30 patches are in reasonable shape, but the further you go the more cleanup is necessary. I expect all of the patches go require a few rounds of feedback though.

My plan for upstreaming is largly this:

1) This bare minimum boot patchset
2) Add clock and pinctrl drivers
3) Add hardware to the device tree that already has existing drivers
4) Add zx29 specific drivers one by one: Watchdog, spi, i2c, DMA, PMIC, battery
5) SDIO backend for rtl8xxxu
6) rproc, mailbox and rpmsg

I am willing to maintain support for the SoC within reason. My patches add myself as maintainer. This is a hobby project for me though, keep that in mind if you want to ship a commercial product with these SoCs and upstreaming Linux.

Cheers,
Stefan

0: https://lists.infradead.org/pipermail/linux-arm-kernel/2026-January/1099306.html
1: https://github.com/zx297520v3-mainline/zx297520v3-loader
2: https://gitlab.com/stefandoesinger/zx297520-kernel/

Stefan Dösinger (8):
  ARM: zte: Add zx297520v3 platform support
  dt-bindings: arm: Add zx297520v3 board binding
  ARM: dts: Add D-Link DWR-932M support
  ARM: zte: Add support for zx29 low level debug
  ARM: dts: Add an armv7 timer for zx297520v3
  ARM: zte: Bring back zx29 UART support
  ARM: dts: Declare UART1 on zx297520v3 boards
  ARM: defconfig: Add a zx29 defconfig file

 Documentation/arch/arm/zte/zx297520v3.rst     | 158 ++++++++++++++++++
 .../devicetree/bindings/arm/zx29.yaml         |  20 +++
 MAINTAINERS                                   |   6 +
 arch/arm/Kconfig                              |   2 +
 arch/arm/Kconfig.debug                        |  12 ++
 arch/arm/Makefile                             |   1 +
 arch/arm/boot/dts/Makefile                    |   1 +
 arch/arm/boot/dts/zte/Makefile                |   3 +
 arch/arm/boot/dts/zte/dlink-dwr-932m.dts      |  21 +++
 arch/arm/boot/dts/zte/zx297520v3.dtsi         |  83 +++++++++
 arch/arm/configs/zx29_defconfig               |  90 ++++++++++
 arch/arm/include/debug/pl01x.S                |   7 +
 arch/arm/mach-zte/Kconfig                     |  24 +++
 arch/arm/mach-zte/Makefile                    |   2 +
 arch/arm/mach-zte/zx297520v3.c                |  19 +++
 drivers/tty/serial/amba-pl011.c               |  37 ++++
 include/linux/amba/bus.h                      |   6 +
 17 files changed, 492 insertions(+)
 create mode 100644 Documentation/arch/arm/zte/zx297520v3.rst
 create mode 100644 Documentation/devicetree/bindings/arm/zx29.yaml
 create mode 100644 arch/arm/boot/dts/zte/Makefile
 create mode 100644 arch/arm/boot/dts/zte/dlink-dwr-932m.dts
 create mode 100644 arch/arm/boot/dts/zte/zx297520v3.dtsi
 create mode 100644 arch/arm/configs/zx29_defconfig
 create mode 100644 arch/arm/mach-zte/Kconfig
 create mode 100644 arch/arm/mach-zte/Makefile
 create mode 100644 arch/arm/mach-zte/zx297520v3.c

-- 
2.52.0




More information about the linux-arm-kernel mailing list