summaryrefslogtreecommitdiffstats
path: root/target/linux/realtek
diff options
context:
space:
mode:
authorJacob Potter <jacob@j4cbo.com>2023-12-23 21:37:54 -0500
committerSander Vanheule <sander@svanheule.net>2024-01-13 16:45:05 +0100
commit735efbfb7c1d2b29bb53d833a9ddd16cc29355e6 (patch)
tree65a7b4c95d2a463b6800fcdd87c0fa4ef145fef8 /target/linux/realtek
parent92e0baba42b61e8c9819ef95cd5bc734f7ebc103 (diff)
downloadopenwrt-735efbfb7c1d2b29bb53d833a9ddd16cc29355e6.tar.gz
openwrt-735efbfb7c1d2b29bb53d833a9ddd16cc29355e6.tar.bz2
openwrt-735efbfb7c1d2b29bb53d833a9ddd16cc29355e6.zip
realtek: rtl838x: add Netgear GS110TUP v1 support
The GS110TUP v1 is a managed switch similar to the GS110TPP v1, but with port 10 as SFP instead of RJ-45 and a total budget of 240 watts. Ports 1-4 support 60-watt 802.3bt PoE and ports 5-8 support 30-watt 802.3at. The flash layout of the two switches are identical, and the U-Boot configurations are the same except for having a different magic number, so installation can be done via the same U-Boot method. The following command will be needed to enable the port LEDs as per https://forum.openwrt.org/t/72510/51 : fw_setenv bootcmd "rtk network on; boota" Additionally, port 9 (1000base-T from a separate QSGMII PHY) does not function without this. Port 10 was not tested as no SFP module was available. Signed-off-by: Jacob Potter <jacob@j4cbo.com> [rebase on merged flash layout] Signed-off-by: Sander Vanheule <sander@svanheule.net>
Diffstat (limited to 'target/linux/realtek')
-rw-r--r--target/linux/realtek/base-files/etc/board.d/02_network3
-rw-r--r--target/linux/realtek/dts-5.15/rtl8380_netgear_gs110tup-v1.dts61
-rw-r--r--target/linux/realtek/image/rtl838x.mk26
3 files changed, 90 insertions, 0 deletions
diff --git a/target/linux/realtek/base-files/etc/board.d/02_network b/target/linux/realtek/base-files/etc/board.d/02_network
index 4a5fe7666c..fb9c28d794 100644
--- a/target/linux/realtek/base-files/etc/board.d/02_network
+++ b/target/linux/realtek/base-files/etc/board.d/02_network
@@ -91,6 +91,9 @@ hpe,1920-8g-poe-180w)
netgear,gs110tpp-v1)
ucidef_set_poe 130 "$lan_list" "lan9 lan10"
;;
+netgear,gs110tup-v1)
+ ucidef_set_poe 240 "$lan_list" "lan9 lan10"
+ ;;
netgear,gs310tp-v1)
ucidef_set_poe 55 "$lan_list" "lan9 lan10"
;;
diff --git a/target/linux/realtek/dts-5.15/rtl8380_netgear_gs110tup-v1.dts b/target/linux/realtek/dts-5.15/rtl8380_netgear_gs110tup-v1.dts
new file mode 100644
index 0000000000..76653fa210
--- /dev/null
+++ b/target/linux/realtek/dts-5.15/rtl8380_netgear_gs110tup-v1.dts
@@ -0,0 +1,61 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "rtl8380_netgear_gigabit.dtsi"
+#include <dt-bindings/leds/common.h>
+
+/ {
+ compatible = "netgear,gs110tup-v1", "realtek,rtl838x-soc";
+ model = "Netgear GS110TUP v1";
+
+ aliases {
+ led-boot = &led_status_green;
+ led-failsafe = &led_status_red;
+ led-running = &led_status_green;
+ led-upgrade = &led_status_blue;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_status_red: led-0 {
+ label = "red:status";
+ color = <LED_COLOR_ID_RED>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio1 31 GPIO_ACTIVE_LOW>;
+ };
+
+ led_status_green: led-1 {
+ label = "green:status";
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio1 32 GPIO_ACTIVE_LOW>;
+ };
+
+ led_status_blue: led-2 {
+ label = "blue:status";
+ color = <LED_COLOR_ID_BLUE>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio1 34 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+&firmware {
+ openwrt,ih-magic = <0x4e474720>;
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&mdio {
+ EXTERNAL_PHY(16)
+ EXTERNAL_PHY(24)
+};
+
+&switch0 {
+ ports {
+ SWITCH_PORT(16, 9, qsgmii)
+ SWITCH_SFP_PORT(24, 10, rgmii-id)
+ };
+};
diff --git a/target/linux/realtek/image/rtl838x.mk b/target/linux/realtek/image/rtl838x.mk
index 9a9a310713..60249ff2fd 100644
--- a/target/linux/realtek/image/rtl838x.mk
+++ b/target/linux/realtek/image/rtl838x.mk
@@ -171,6 +171,24 @@ define Device/netgear_nge
DEVICE_VENDOR := NETGEAR
endef
+# "NGG" refers to the uImage magic
+define Device/netgear_ngg
+ KERNEL := \
+ kernel-bin | \
+ append-dtb | \
+ lzma | \
+ uImage lzma
+ KERNEL_INITRAMFS := \
+ kernel-bin | \
+ append-dtb | \
+ lzma | \
+ uImage lzma
+ SOC := rtl8380
+ IMAGE_SIZE := 14848k
+ UIMAGE_MAGIC := 0x4e474720
+ DEVICE_VENDOR := NETGEAR
+endef
+
define Device/netgear_gs108t-v3
$(Device/netgear_nge)
DEVICE_MODEL := GS108T
@@ -186,6 +204,14 @@ define Device/netgear_gs110tpp-v1
endef
TARGET_DEVICES += netgear_gs110tpp-v1
+define Device/netgear_gs110tup-v1
+ $(Device/netgear_ngg)
+ DEVICE_MODEL := GS110TUP
+ DEVICE_VARIANT := v1
+ DEVICE_PACKAGES += realtek-poe
+endef
+TARGET_DEVICES += netgear_gs110tup-v1
+
define Device/netgear_gs308t-v1
$(Device/netgear_nge)
DEVICE_MODEL := GS308T