[openwrt/openwrt] ramips: add support for ipTIME T5004

LEDE Commits lede-commits at lists.infradead.org
Sat Jan 1 08:18:40 PST 2022


mans0n pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/a1deab0ec9ced8f1a2c997483efc1fc6e364ae34

commit a1deab0ec9ced8f1a2c997483efc1fc6e364ae34
Author: Sungbo Eo <mans0n at gorani.run>
AuthorDate: Mon Aug 2 00:43:34 2021 +0900

    ramips: add support for ipTIME T5004
    
    ipTIME T5004 is a 5-port Gigabit Ethernet router, based on MediaTek MT7621A.
    
    Specifications:
    * SoC: MT7621AT
    * RAM: 128 MiB
    * Flash: NAND 128 MiB
    * Ethernet: 5x 1GbE
      * Switch: SoC built-in
    * UART: J4 (57600 baud)
      * Pinout: [3V3] (TXD) (RXD) (GND)
    
    Installation via web interface:
    1.  Flash **initramfs** image through the stock web interface.
    2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.
    
    Revert to stock firmware via recovery mode:
    1.  Press reset button, power up the device, wait >15s for CPU LED
        to stop blinking.
    2.  Upload stock image to TFTP server at 192.168.0.1.
    
    Signed-off-by: Sungbo Eo <mans0n at gorani.run>
---
 target/linux/ramips/dts/mt7621_iptime_t5004.dts    | 121 +++++++++++++++++++++
 target/linux/ramips/image/mt7621.mk                |  15 +++
 .../mt7621/base-files/etc/board.d/02_network       |   4 +
 .../mt7621/base-files/lib/upgrade/platform.sh      |   1 +
 4 files changed, 141 insertions(+)

diff --git a/target/linux/ramips/dts/mt7621_iptime_t5004.dts b/target/linux/ramips/dts/mt7621_iptime_t5004.dts
new file mode 100644
index 0000000000..c6c919cfb1
--- /dev/null
+++ b/target/linux/ramips/dts/mt7621_iptime_t5004.dts
@@ -0,0 +1,121 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+	compatible = "iptime,t5004", "mediatek,mt7621-soc";
+	model = "ipTIME T5004";
+
+	aliases {
+		led-boot = &led_cpu;
+		led-failsafe = &led_cpu;
+		led-running = &led_cpu;
+		led-upgrade = &led_cpu;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		led_cpu: led-0 {
+			label = "blue:cpu";
+			color = <LED_COLOR_ID_BLUE>;
+			function = LED_FUNCTION_CPU;
+			gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+		};
+	};
+
+	keys {
+		compatible = "gpio-keys";
+
+		reset {
+			label = "reset";
+			gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_RESTART>;
+		};
+	};
+};
+
+&nand {
+	status = "okay";
+
+	partitions {
+		compatible = "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		partition at 0 {
+			label = "u-boot";
+			reg = <0x0 0x80000>;
+			read-only;
+		};
+
+		partition at 80000 {
+			label = "config";
+			reg = <0x80000 0xc0000>;
+			read-only;
+		};
+
+		partition at 140000 {
+			label = "firmware";
+			reg = <0x140000 0x7e40000>;
+
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition at 0 {
+				label = "kernel";
+				reg = <0x0 0x400000>;
+			};
+
+			partition at 400000 {
+				label = "ubi";
+				reg = <0x400000 0x7a40000>;
+			};
+		};
+	};
+};
+
+&state_default {
+	gpio {
+		groups = "i2c", "wdt";
+		function = "gpio";
+	};
+};
+
+&switch0 {
+	ports {
+		port at 0 {
+			status = "okay";
+			label = "wan";
+		};
+
+		port at 1 {
+			status = "okay";
+			label = "lan4";
+		};
+
+		port at 2 {
+			status = "okay";
+			label = "lan3";
+		};
+
+		port at 3 {
+			status = "okay";
+			label = "lan2";
+		};
+
+		port at 4 {
+			status = "okay";
+			label = "lan1";
+		};
+	};
+};
+
+&xhci {
+	status = "disabled";
+};
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index e1cb0195b0..99884ec1d9 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -804,6 +804,21 @@ define Device/iptime_a8004t
 endef
 TARGET_DEVICES += iptime_a8004t
 
+define Device/iptime_t5004
+  $(Device/dsa-migration)
+  BLOCKSIZE := 128k
+  PAGESIZE := 2048
+  KERNEL_SIZE := 4096k
+  IMAGE_SIZE := 129280k
+  UBINIZE_OPTS := -E 5
+  UIMAGE_NAME := t5004
+  IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
+  DEVICE_VENDOR := ipTIME
+  DEVICE_MODEL := T5004
+  DEVICE_PACKAGES := -wpad-basic-wolfssl
+endef
+TARGET_DEVICES += iptime_t5004
+
 define Device/jcg_jhr-ac876m
   $(Device/dsa-migration)
   IMAGE_SIZE := 16064k
diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
index 342704ee30..0b11c05c84 100644
--- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
+++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network
@@ -135,6 +135,10 @@ ramips_setup_macs()
 		wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
 		label_mac=$wan_mac
 		;;
+	iptime,t5004)
+		lan_mac=$(mtd_get_mac_ascii config ethaddr)
+		wan_mac=$(macaddr_add "$lan_mac" 1)
+		;;
 	jcg,y2|\
 	wavlink,wl-wn531a6|\
 	winstars,ws-wn583a6|\
diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
index 790de22f40..c7ddb55b34 100755
--- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
@@ -59,6 +59,7 @@ platform_do_upgrade() {
 	dlink,dir-853-a3|\
 	hiwifi,hc5962|\
 	iptime,a3004t|\
+	iptime,t5004|\
 	jcg,q20|\
 	linksys,e5600|\
 	linksys,ea7300-v1|\



More information about the lede-commits mailing list