Current status

Base system was submitted by biot. CPU peripherals and RTL8231 are being developed by svanheule.

See Main development branch is base-dev.


  • base system: merged for 5.12-rc1
  • IRQ driver: merged for 5.12-rc1
  • SPI driver: merged for 5.12-rc1
  • built-in GPIO driver: merged for 5.13 start of series
  • Watchdog, doubles as restart driver: merged for 5.17, v4

Under review


  • SOC/chipid driver (svanheule)
  • sys-led driver (svanheule)
  • port led driver (svanheule)

Help needed

  • Reset driver
    • Reset bits for various subsystems in the SoCs are available, in different places per series. Instead of drivers toggling these common registers, Linux reset subsystem driver would make sense.
  • Networking
    • Need MDIO, DSA, phy driver etc.
    • Probably best to port bit by bit from OpenWrt to staging, to get extra exposure. After things mature enough, drivers can be moved to the relevant subsystems.
  • Get buildroot from
  • Clone a kernel git repo from git://
  • Get devconfig.tgz, and move the config files there to `.config` in the two directories above. In the Linux .config file, change `CONFIG_INITRAMFS_SOURCE` to the appropriate path for your buildroot. Drop the `build` script in your Linux directory.
  • Do a make in your buildroot directory, and ./build in your Linux directory. It drops the resulting image in /tftp/img, adjust as needed.

bkobl's git repository of a port to OpenWrt is maintained at Discussion at

RTL838x: complete

RX/TX by the Ethernet driver works, including QoS and prioritization queues, all L2 functionality is implemented, all PHYs are supported, complete support for SFP cages and LEDs available

RTL839x: mostly complete

RX/TX by the Ethernet driver works, including QoS and prioritization queues, all L2 functionality is implemented. Support for the 10Gig SFP+ modules of the 8396 is not available, LEDs only work when configured by u-boot. Some PHYs not supported (e.g.RTL8214QF is not supported, but GPL-dump is available).

RTL930x: mostly complete

RX/TX by the Ethernet driver works, all L2 functionality is implemented. QoS and Rate control is missing, there is no support for the SFP+ cages. PHY support: RTL8218D works and RTL8266 2.5-gig PHY. The Aquantia multi-gig phys are unsupported (upcoming Zyxel XGS1250-10), but GPL code available. GPIOs and LEDs are supported.

RTL931x: initial support only

The Zyxel XS 1920 boots, but GIC irq is not working, only internal timer IRQs, TX/RX code ported but not tested, some L2 code ported, Aquantia PHYs are unsupported, but GPL code available

  • current_status.txt
  • Last modified: 2021/12/13 19:48
  • by svanheule