[openwrt/openwrt] ramips: add support for Linksys RE7000

LEDE Commits lede-commits at lists.infradead.org
Tue May 9 02:55:27 PDT 2023


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/e882af2850ff7077f610eaf0ecee18c371ddf98f

commit e882af2850ff7077f610eaf0ecee18c371ddf98f
Author: Christoph Krapp <achterin at gmail.com>
AuthorDate: Sun Mar 12 10:40:45 2023 +0100

    ramips: add support for Linksys RE7000
    
    Hardware specification:
    
    - SoC: MediaTek MT7621AT (880 MHz)
    - Flash: 16 MB (Macronix MX25L12835FM2I-10G)
    - RAM: 128 MB (Nanya NT5CC64M16GP-DI)
    - WLAN 2.4 GHz: 2x2 MediaTek MT7603EN
    - WLAN 5 GHz: 2x2 MediaTek MT7615N
    - Ethernet: 1x 10/100/1000 Mbps
    - LED: Power, Wifi, WPS
    - Button: Reset, WPS
    - UART: 1:VCC, 2:GND, 3:TX, 4:RX (from LAN port)
      Serial console @ 57600,8n1
    
    Flash instructions:
    
    Connect to serial console and start up the device. As the bootloader got
    locked you need to type in a password to unlock U-Boot access.
    When you see the following output on the console:
    
    relocate_code Pointer at: 87f1c000
    
    type in the super secure password:
    
    1234567890
    
    Then select TFTP boot from RAM by selecting option 1 in the boot menu.
    As Linksys decided to leave out a basic TFTP configuration you need to
    set server- & client ip as well as the image filename the device will
    search for. You need to use the initramfs openwrt image for the TFTP
    boot process.
    
    Once openwrt has booted up, upload the sysupgrade image via scp and run
    sysupgrade as normal.
    
    Signed-off-by: Christoph Krapp <achterin at gmail.com>
---
 package/boot/uboot-envtools/files/ramips           |   1 +
 target/linux/ramips/dts/mt7621_linksys_re7000.dts  | 154 +++++++++++++++++++++
 target/linux/ramips/image/mt7621.mk                |   9 ++
 .../mt7621/base-files/etc/board.d/02_network       |   1 +
 4 files changed, 165 insertions(+)

diff --git a/package/boot/uboot-envtools/files/ramips b/package/boot/uboot-envtools/files/ramips
index f981fc73ef..6f351af212 100644
--- a/package/boot/uboot-envtools/files/ramips
+++ b/package/boot/uboot-envtools/files/ramips
@@ -19,6 +19,7 @@ alfa-network,r36m-e4g|\
 alfa-network,tube-e4g|\
 engenius,epg600|\
 engenius,esr600h|\
+linksys,re7000|\
 sitecom,wlr-4100-v1-002|\
 zyxel,keenetic-lite-iii-a)
 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x1000"
diff --git a/target/linux/ramips/dts/mt7621_linksys_re7000.dts b/target/linux/ramips/dts/mt7621_linksys_re7000.dts
new file mode 100644
index 0000000000..5e33f48915
--- /dev/null
+++ b/target/linux/ramips/dts/mt7621_linksys_re7000.dts
@@ -0,0 +1,154 @@
+// 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>
+
+/ {
+	compatible = "linksys,re7000", "mediatek,mt7621-soc";
+	model = "Linksys RE7000";
+
+	aliases {
+		led-boot = &led_power;
+		led-failsafe = &led_power;
+		led-running = &led_power;
+		led-upgrade = &led_power;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		wifi {
+			label = "orange:wifi";
+			gpios = <&gpio 9 GPIO_ACTIVE_HIGH>;
+			linux,default-trigger = "phy0tpt";
+		};
+
+		wps {
+			label = "orange:wps";
+			gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
+		};
+
+		led_power: power {
+			label = "green:power";
+			gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
+		};
+	};
+
+	keys {
+		compatible = "gpio-keys";
+
+		wps {
+			label = "wps";
+			gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_WPS_BUTTON>;
+		};
+
+		reset {
+			label = "reset";
+			gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_RESTART>;
+		};
+	};
+};
+
+&spi0 {
+	status = "okay";
+
+	flash at 0 {
+		compatible = "jedec,spi-nor";
+		reg = <0>;
+		spi-max-frequency = <10000000>;
+
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition at 0 {
+				label = "u-boot";
+				reg = <0x0 0x30000>;
+				read-only;
+			};
+
+			partition at 30000 {
+				label = "u-boot-env";
+				reg = <0x30000 0x1000>;
+			};
+
+			partition at 32000 {
+				label = "config";
+				reg = <0x32000 0xe000>;
+				read-only;
+			};
+
+			factory: partition at 40000 {
+				label = "factory";
+				reg = <0x40000 0x10000>;
+				read-only;
+			};
+
+			partition at 50000 {
+				compatible = "denx,uimage";
+				label = "firmware";
+				reg = <0x50000 0xfb0000>;
+			};
+		};
+	};
+};
+
+&state_default {
+	gpio {
+		groups = "i2c", "uart2", "rgmii2";
+		function = "gpio";
+	};
+};
+
+&pcie {
+	status = "okay";
+};
+
+&pcie0 {
+	mt76 at 0,0 {
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x0000>;
+		ieee80211-freq-limit = <2400000 2500000>;
+	};
+};
+
+&pcie1 {
+	mt76 at 0,0 {
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x8000>;
+		ieee80211-freq-limit = <5000000 6000000>;
+	};
+};
+
+&gmac0 {
+	nvmem-cells = <&macaddr_factory_2e>;
+	nvmem-cell-names = "mac-address";
+};
+
+&ethernet {
+	pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
+};
+
+&switch0 {
+	ports {
+		port at 0 {
+			status = "okay";
+			label = "lan";
+		};
+	};
+};
+
+&factory {
+	compatible = "nvmem-cells";
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	macaddr_factory_2e: macaddr at 2e {
+		reg = <0x2e 0x6>;
+	};
+};
diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk
index d33937a8d7..582d53c423 100644
--- a/target/linux/ramips/image/mt7621.mk
+++ b/target/linux/ramips/image/mt7621.mk
@@ -1541,6 +1541,15 @@ define Device/linksys_re6500
 endef
 TARGET_DEVICES += linksys_re6500
 
+define Device/linksys_re7000
+  $(Device/uimage-lzma-loader)
+  IMAGE_SIZE := 16064k
+  DEVICE_VENDOR := Linksys
+  DEVICE_MODEL := RE7000
+  DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615-firmware
+endef
+TARGET_DEVICES += linksys_re7000
+
 define Device/mediatek_ap-mt7621a-v60
   $(Device/dsa-migration)
   IMAGE_SIZE := 7872k
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 a986e9bac9..5b7cc7f2ca 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
@@ -17,6 +17,7 @@ ramips_setup_interfaces()
 	dlink,dap-1620-b1|\
 	dlink,dap-x1860-a1|\
 	edimax,re23s|\
+	linksys,re7000|\
 	mikrotik,ltap-2hnd|\
 	mikrotik,routerboard-m11g|\
 	netgear,ex6150|\




More information about the lede-commits mailing list