openwrt/target/linux/realtek/dts
Jonas Jelonek 0c98150650 realtek: add support for Zyxel GS1920-24HPv2
Add support for V2 of Zyxel GS1920-24HP with 24 copper ports, 4 combo
SFP/copper ports and PoE.

Specifications:
---------------

 * SoC: Realtek RTL8391M
 * Flash: 32MiB Flash
 * RAM: 256MiB
 * Ethernet: 24x 10/100/1000 Mbps
 * SFP: 4 combo copper/SFP ports (via RTL8214FC)
 * PoE: 24x
 * Fan controller: ADT7468
 * Serial: UART 3.3V TTL logic, 115200 8N1
     * pinout (front to back): GND RX TX VCC
 * Buttons: 1x Reset, 1x Restore

Notable differences to V1 (which require dedicated support):
 * "smaller" SoC (RTL8391M)
 * more RAM (256MiB vs 128MiB)
 * more Flash (32MiB vs 16MiB) + different layout
 * RTL8214FC uses different port numbers
 * SFP 25 and 26 use shared SCL
 * SFP 27 and 28 use different SDA
 * different monitoring IC (LM96000 vs ADT7468)
 * faster serial console by default
 * serial header easier accessible

Note that the port LEDs do not work correctly yet due to missing
LED configuration for RTL839X.

Installation:
-------------

(copied mostly as-is from 2a55846bf4)

This device uses ZyNOS instead of Linux, this makes installation a bit
more cumbersome. Serial console is required!

1. Set the switch to boot from the first image. This step is crucial,
   it will fail to boot if this is not set properly.

2. Connect to the switch using serial and interrupt the boot process
   to enter debug/recovery mode.

3. Load the OpenWrt initramfs image via XMODEM. You need to obtain an
   unlock code, based on your MAC address, first. See the excellent write
   up at https://www.ixo.de/info/zyxel_uclinux/ for details. Replace
   unlock_code in the commands below by the code obtained.
   The file length in bytes needs to be given instead of file_length below.
   You also need an XMODEM upload utility like "lrzsz-sx -X" to transfer
   the file. Start the XMODEM upload after running the ATUPxxxx command:

     > ATEN1,unlock_code
     > ATUP80100000,file_length
     > ATGO80100000

4. Wait for OpenWrt to boot. Once this is done, transfer the loader binary
   and the sysupgrade image to "/tmp" using scp.

5. Install OpenWrt permanently by running the following two commands on
   the switch (over SSH):

    > mtd write /tmp/loader.bin loader
    > mtd write /tmp/sysupgrade.bin firmware

6. Reboot the switch and enjoy OpenWrt.

NB: You do not need to touch the loader binary unless it's recommended.
    The loader is not part of a regular sysupgrade file and will be left
    untouched. The boot loader only checks if the loader is valid to be
    able to boot.

Recovery/ Return to stock:
--------------------------

Just spam the "u" key during (or "z" for 9600 baud) during memory testing
to trigger a recovery XMODEM upload at 115200 baud. A standard OEM upgrade
image works properly.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21944
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2026-02-13 23:33:25 +01:00
..
macros.dtsi realtek: drop sds property 2025-09-25 11:01:11 +02:00
rtl83xx_d-link_dgs-1210_common.dtsi realtek: Drop unused property on DGS-1210 gpio0 2025-01-28 07:30:32 +01:00
rtl83xx_d-link_dgs-1210_gpio.dtsi realtek: switch RTL8231 driver for D-Link DGS-1210 2025-01-28 07:30:33 +01:00
rtl83xx_d-link_dgs-1210_gpio_sfp.dtsi realtek: add full SFP support to D-Link DGS-1210-28 series 2024-09-15 16:40:40 +02:00
rtl83xx_hpe_1920.dtsi realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl83xx_panasonic_mxxeg-pn28xx0k.dtsi realtek: normalize dts directory 2024-09-14 16:56:37 +02:00
rtl93xx_linksys_lgs3xxc_nand_common.dtsi realtek: dts: RTL93xx whitespace cleanup 2026-01-09 20:39:50 +02:00
rtl838x.dtsi realtek: dsa: make use of device_get_match_data() 2026-02-05 11:40:24 +01:00
rtl839x.dtsi realtek: dsa: make use of device_get_match_data() 2026-02-05 11:40:24 +01:00
rtl839x_zyxel_gs1920-24hp-common.dtsi realtek: move common GS1920-24HP parts to common definitions 2026-02-13 23:33:25 +01:00
rtl930x.dtsi realtek: dsa: make use of device_get_match_data() 2026-02-05 11:40:24 +01:00
rtl931x.dtsi realtek: dsa: make use of device_get_match_data() 2026-02-05 11:40:24 +01:00
rtl8380_d-link_dgs-1210-10mp-f.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_engenius_ews2910p-v1.dts realtek: engenius_ews2910p: support multiple hardware versions 2025-05-31 23:19:01 +02:00
rtl8380_engenius_ews2910p-v3.dts realtek: support EnGenius EWS2910P v3 2025-05-31 23:19:01 +02:00
rtl8380_engenius_ews2910p.dtsi realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_hpe_1920-8g-poe-65w.dts realtek: normalize dts directory 2024-09-14 16:56:37 +02:00
rtl8380_hpe_1920-8g-poe-180w.dts realtek: HPE 1920 8G PoE+ 180W move fans to hwmon 2025-01-15 08:21:08 +01:00
rtl8380_hpe_1920-8g.dts realtek: normalize dts directory 2024-09-14 16:56:37 +02:00
rtl8380_hpe_1920-8g.dtsi realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8380_linksys_lgs310c.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_netgear_gigabit.dtsi realtek: dts: rearrange mdio-bus below mdio-controller 2025-09-12 20:58:17 +02:00
rtl8380_netgear_gs108t-v3.dts realtek: normalize dts directory 2024-09-14 16:56:37 +02:00
rtl8380_netgear_gs110tpp-v1.dts realtek: dts: rearrange mdio-bus below mdio-controller 2025-09-12 20:58:17 +02:00
rtl8380_netgear_gs110tup-v1.dts realtek: rtl838x: fix lan9 and lan10 on Netgear GS110TUP 2026-01-02 18:10:05 +01:00
rtl8380_netgear_gs308t-v1.dts realtek: normalize dts directory 2024-09-14 16:56:37 +02:00
rtl8380_netgear_gs310tp-v1.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_panasonic_m8eg-pn28080k.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_tplink_sg2xxx.dtsi realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_tplink_sg2008p-v1.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_tplink_sg2210p-v3.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_zyxel_gs1900-8-a1.dts realtek: rtl838x: rename GS1900 series v1/v2 to A1/B1 2025-09-24 13:41:04 +02:00
rtl8380_zyxel_gs1900-8-b1.dts realtek: rtl838x: rename GS1900 series v1/v2 to A1/B1 2025-09-24 13:41:04 +02:00
rtl8380_zyxel_gs1900-8hp-a1.dts realtek: rtl838x: rename GS1900 series v1/v2 to A1/B1 2025-09-24 13:41:04 +02:00
rtl8380_zyxel_gs1900-8hp-b1.dts realtek: rtl838x: rename GS1900 series v1/v2 to A1/B1 2025-09-24 13:41:04 +02:00
rtl8380_zyxel_gs1900-10hp-a1.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8380_zyxel_gs1900.dtsi realtek: RTL838x: make u-boot-env writeable ZyXEL GS1900 2025-11-09 23:34:12 +01:00
rtl8380_zyxel_gs1900_gpio.dtsi realtek: Move GS1900 external GPIO to new DTSI 2025-01-25 15:06:03 +01:00
rtl8380_zyxel_gs1900_gpio_emulated.dtsi realtek: Move GS1900 external GPIO to new DTSI 2025-01-25 15:06:03 +01:00
rtl8382_allnet_all-sg8208m.dts realtek: dts: rearrange mdio-bus below mdio-controller 2025-09-12 20:58:17 +02:00
rtl8382_apresia_aplgs120gtss.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_d-link_dgs-1210-10p.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8382_d-link_dgs-1210-16.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_d-link_dgs-1210-20.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_d-link_dgs-1210-26.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8382_d-link_dgs-1210-28.dts realtek: add full SFP support to D-Link DGS-1210-28 series 2024-09-15 16:40:40 +02:00
rtl8382_d-link_dgs-1210-28_common.dtsi realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_d-link_dgs-1210-28mp-f.dts realtek: d-link: add support for dgs-1210-28p-f 2024-09-24 20:59:50 +02:00
rtl8382_d-link_dgs-1210-28p-f.dts realtek: d-link: add support for dgs-1210-28p-f 2024-09-24 20:59:50 +02:00
rtl8382_d-link_dgs-1210-28p_common.dtsi realtek: d-link: add support for dgs-1210-28p-f 2024-09-24 20:59:50 +02:00
rtl8382_hpe_1920-16g.dts realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8382_hpe_1920-24g-poe-180w.dts realtek: HPE 1920 24G PoE+ 180W/370W move fans to hwmon 2025-01-16 07:32:16 +01:00
rtl8382_hpe_1920-24g-poe-370w.dts realtek: HPE 1920 24G PoE+ 180W/370W move fans to hwmon 2025-01-16 07:32:16 +01:00
rtl8382_hpe_1920-24g.dts realtek: rtl838x: refactor hpe_1920-24g dts 2024-12-31 08:29:56 +01:00
rtl8382_hpe_1920-24g.dtsi realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8382_hpe_1920.dtsi realtek: dts: rearrange mdio-bus below mdio-controller 2025-09-12 20:58:17 +02:00
rtl8382_inaba_aml2-17gp.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_iodata_bsh-g24mb.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_panasonic_m16eg-pn28160k.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_panasonic_m24eg-pn28240k.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_tplink_t1600g-28ts-v3.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_zyxel_gs1900-16-a1.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_zyxel_gs1900-24-a1.dts realtek: use common dtsi for Zyxel GS1900-24 2026-01-27 01:34:21 +01:00
rtl8382_zyxel_gs1900-24-b1.dts realtek: add Zyxel GS1900-24 B1 device definition 2026-01-27 01:34:21 +01:00
rtl8382_zyxel_gs1900-24.dtsi realtek: use common dtsi for Zyxel GS1900-24 2026-01-27 01:34:21 +01:00
rtl8382_zyxel_gs1900-24e-a1.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_zyxel_gs1900-24ep-a1.dts realtek: rtl838x: setup SDS entirely in PCS driver 2025-12-09 00:28:38 +01:00
rtl8382_zyxel_gs1900-24hp-a1.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8382_zyxel_gs1900-24hp-b1.dts realtek: rtl838x: drop SFP pseudo-PHYs and phy-handle 2025-12-09 00:28:41 +01:00
rtl8391_zyxel_gs1920-24hp-v2.dts realtek: add support for Zyxel GS1920-24HPv2 2026-02-13 23:33:25 +01:00
rtl8392_zyxel_gs1920-24hp-v1.dts realtek: move common GS1920-24HP parts to common definitions 2026-02-13 23:33:25 +01:00
rtl8393_d-link_dgs-1210-52.dts realtek: pcs: rtl839x: setup SerDes in PCS driver 2026-01-09 14:32:52 +02:00
rtl8393_edgecore_ecs4100-12ph.dts realtek/rtl839x: Edgecore ECS4100-12PH support 2026-01-09 21:03:41 +02:00
rtl8393_hpe_1920-48g-poe.dts realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8393_hpe_1920-48g.dts realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8393_hpe_1920.dtsi realtek: switch HPE 1920 series to NVMEM 2026-02-13 12:06:20 +01:00
rtl8393_netgear_gs750e.dts realtek: pcs: rtl839x: setup SerDes in PCS driver 2026-01-09 14:32:52 +02:00
rtl8393_panasonic_m48eg-pn28480k.dts realtek: pcs: rtl839x: setup SerDes in PCS driver 2026-01-09 14:32:52 +02:00
rtl8393_tplink_sg2452p-v4.dts realtek: pcs: rtl839x: setup SerDes in PCS driver 2026-01-09 14:32:52 +02:00
rtl8393_zyxel_gs1900-48-a1.dts realtek: pcs: rtl839x: setup SerDes in PCS driver 2026-01-09 14:32:52 +02:00
rtl9301_linksys_lgs328c.dts realtek: dts: add LGS328C port 21 definition 2026-01-31 11:18:02 +01:00
rtl9302_plasmacloud_common.dtsi realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_plasmacloud_mcx3.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_plasmacloud_psx8.dts realtek: rtl930x: Add support for Plasma Cloud PSX8 Switch 2025-08-28 21:07:57 +02:00
rtl9302_plasmacloud_psx10.dts realtek: rtl93xx: remove pseudo-PHYs and phy-handle from SFP ports 2025-11-02 16:32:10 +01:00
rtl9302_xikestor_sks8300-12e2t2x.dts realtek: add support for Xikestor SKS8300-12E2T2X 2026-02-07 19:37:49 +01:00
rtl9302_zyxel_xgs1x10-12-common.dtsi realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1010-12-a1.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1210-12-a1.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1210-12-b1.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1210-12-common.dtsi realtek: restructure Zyxel XGS1210-12 device tree files 2025-11-03 11:07:20 +01:00
rtl9302_zyxel_xgs1250-12-a1.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1250-12-b1.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9302_zyxel_xgs1250-12-common.dtsi realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9303_hasivo_s1100w-8xgt-se.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9303_hasivo_s1100wp-8gt-se.dts realtek: rtl930x: Add Hasivo s1100wp-8gt-se (excl. PoE) 2026-01-28 00:43:16 +01:00
rtl9303_tplink_tl-st1008f-v2.dts realtek: rtl93xx: remove pseudo-PHYs and phy-handle from SFP ports 2025-11-02 16:32:10 +01:00
rtl9303_vimin_vm-s100-0800ms.dts realtek: rtl93xx: remove pseudo-PHYs and phy-handle from SFP ports 2025-11-02 16:32:10 +01:00
rtl9303_xikestor_sks8300-8t.dts realtek: add support for XikeStor SKS8300-8T 2026-01-28 00:33:13 +01:00
rtl9303_xikestor_sks8300-8x.dts realtek: rtl93xx: remove pseudo-PHYs and phy-handle from SFP ports 2025-11-02 16:32:10 +01:00
rtl9303_xikestor_sks8310-8x.dts realtek: rtl93xx: remove pseudo-PHYs and phy-handle from SFP ports 2025-11-02 16:32:10 +01:00
rtl9311_linksys_lgs352c.dts realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9312_plasmacloud_common.dtsi realtek: mdio: derive phy smi-bus from parent node 2026-01-21 23:32:54 +01:00
rtl9312_plasmacloud_esx28.dts realtek: rtl931x: Add support for Plasma Cloud ESX28 Switch 2025-10-04 16:16:22 +02:00
rtl9312_plasmacloud_psx28.dts realtek: rtl931x: Add support for Plasma Cloud PSX28 Switch 2025-10-04 16:16:22 +02:00