diff options
| author | Sander Vanheule | 2025-01-22 11:25:18 +0000 |
|---|---|---|
| committer | Sander Vanheule | 2025-01-25 14:07:13 +0000 |
| commit | 7322d3266d84ec4062046254792d78ebca3ea26d (patch) | |
| tree | c5510de10fdd9305185356731a604dc35fffe2ce | |
| parent | efffcfa43693b68028a4aed4dea151b82158cc52 (diff) | |
| download | openwrt-7322d3266d84ec4062046254792d78ebca3ea26d.tar.gz | |
realtek: Split Zyxel GS1900-8 into v1 and v2
Zyxel GS1900-8 v2 devices have been produced more recently than v1
devices. As there are v1 boards with RTL8380M rev. C SoCs, it can likely
safely be assumed that all v2 devices will also have a recent SoC
revision, supporting the hardware auxiliary MDIO controller.
Make the GS1900-8 v1 use an emulated auxiliary MDIO bus, for backward
compatibility with devices containing an RTL8380M rev. A.
Since the devicetrees are otherwise identical, GS1900-8 v1 devices with
an RTL8380M rev. B or C will also be able to use the (more efficient) v2
image. This includes any currently functioning device with OpenWrt, so
include the old compatible as a supported device for the GS1900-8 v2.
Link: https://github.com/openwrt/openwrt/issues/9534
Signed-off-by: Sander Vanheule <sander@svanheule.net>
| -rw-r--r-- | target/linux/realtek/base-files/etc/board.d/05_compat-version | 3 | ||||
| -rw-r--r-- | target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v1.dts | 13 | ||||
| -rw-r--r-- | target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v2.dts (renamed from target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts) | 4 | ||||
| -rw-r--r-- | target/linux/realtek/image/rtl838x.mk | 18 |
4 files changed, 30 insertions, 8 deletions
diff --git a/target/linux/realtek/base-files/etc/board.d/05_compat-version b/target/linux/realtek/base-files/etc/board.d/05_compat-version index 9c27314b24..52dbdc627e 100644 --- a/target/linux/realtek/base-files/etc/board.d/05_compat-version +++ b/target/linux/realtek/base-files/etc/board.d/05_compat-version @@ -13,7 +13,8 @@ case "$(board_name)" in hpe,1920-24g-poe-370w) ucidef_set_compat_version "1.1" ;; - zyxel,gs1900-8 | \ + zyxel,gs1900-8-v1 | \ + zyxel,gs1900-8-v2 | \ zyxel,gs1900-8hp-v1 | \ zyxel,gs1900-8hp-v2 | \ zyxel,gs1900-10hp | \ diff --git a/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v1.dts b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v1.dts new file mode 100644 index 0000000000..9838c023da --- /dev/null +++ b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v1.dts @@ -0,0 +1,13 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "rtl8380_zyxel_gs1900.dtsi" +#include "rtl8380_zyxel_gs1900_gpio_emulated.dtsi" + +/ { + compatible = "zyxel,gs1900-8-v1", "realtek,rtl838x-soc"; + model = "Zyxel GS1900-8 v1 Switch"; +}; + +&gpio1 { + /delete-node/ poe_enable; +}; diff --git a/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v2.dts index 1d76f55d6a..84f87ea037 100644 --- a/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts +++ b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8-v2.dts @@ -4,8 +4,8 @@ #include "rtl8380_zyxel_gs1900_gpio.dtsi" / { - compatible = "zyxel,gs1900-8", "realtek,rtl838x-soc"; - model = "Zyxel GS1900-8v1/v2 Switch"; + compatible = "zyxel,gs1900-8-v2", "realtek,rtl838x-soc"; + model = "Zyxel GS1900-8 v2 Switch"; }; &gpio1 { diff --git a/target/linux/realtek/image/rtl838x.mk b/target/linux/realtek/image/rtl838x.mk index 0d6acd483a..3763418233 100644 --- a/target/linux/realtek/image/rtl838x.mk +++ b/target/linux/realtek/image/rtl838x.mk @@ -360,17 +360,25 @@ define Device/zyxel_gs1900-16 endef TARGET_DEVICES += zyxel_gs1900-16 -define Device/zyxel_gs1900-8 +define Device/zyxel_gs1900-8-v1 $(Device/zyxel_gs1900) SOC := rtl8380 DEVICE_MODEL := GS1900-8 DEVICE_VARIANT := v1 - DEVICE_ALT0_VENDOR := Zyxel - DEVICE_ALT0_MODEL := GS1900-8 - DEVICE_ALT0_VARIANT := v2 ZYXEL_VERS := AAHH + SUPPORTED_DEVICES += zyxel,gs1900-8 endef -TARGET_DEVICES += zyxel_gs1900-8 +TARGET_DEVICES += zyxel_gs1900-8-v1 + +define Device/zyxel_gs1900-8-v2 + $(Device/zyxel_gs1900) + SOC := rtl8380 + DEVICE_MODEL := GS1900-8 + DEVICE_VARIANT := v2 + ZYXEL_VERS := AAHH + SUPPORTED_DEVICES += zyxel,gs1900-8 +endef +TARGET_DEVICES += zyxel_gs1900-8-v2 define Device/zyxel_gs1900-8hp-v1 $(Device/zyxel_gs1900) |