From 57e6b48061d773e4e52d3633a58ec377cc3ff067 Mon Sep 17 00:00:00 2001 From: Alexey Kosmakov Date: Mon, 30 May 2022 13:46:34 +0500 Subject: [PATCH] ramips: add support for SNR SNR-CPE-ME2-Lite SNR SNR-CPE-ME2-Lite is a 2.4/5 GHz band 11ac (Wi-Fi 5) router, based on MT7621A. Specification: - SoC : MediaTek MT7621A - RAM : DDR3 128 MiB - Flash : SPI-NOR 16 MiB - WLAN : 2.4 GHz 2T2R (MediaTek MT7603E) 5 GHz 2T2R (MediaTek MT7613BE) - Ethernet : 10/100/1000 Mbps x5 - Switch : MediaTek MT7530 (SoC) - UART : through-hole on PCB - J4: 3.3V, GND, TX, RX - 57600n8 - Power : 12 VDC, 1.5 A Flash instruction via WEB (firmware 1.10.4 and later) 1. Boot SNR-CPE-ME2-Lite normally with "Router" mode 2. Access to "http://192.168.1.1/" and open "Administration -> Management" page 3. Select the OpenWrt factory image in "Firmware update" section and click "Update" button 4. Wait ~120 seconds to complete flashing Flash instruction via TFTP (all version): 1. Boot SNR-CPE-ME2-Lite to recovery mode (hold the reset button while power on) 2. Send firmware via TFTP client: TFTP Server address: 192.168.1.1 TFTP Client address: 192.168.1.131 3. Wait ~120 seconds to complete flashing Signed-off-by: Alexey Kosmakov --- .../dts/mt7621_snr_snr-cpe-me2-lite.dts | 173 ++++++++++++++++++ target/linux/ramips/image/mt7621.mk | 11 ++ 2 files changed, 184 insertions(+) create mode 100644 target/linux/ramips/dts/mt7621_snr_snr-cpe-me2-lite.dts diff --git a/target/linux/ramips/dts/mt7621_snr_snr-cpe-me2-lite.dts b/target/linux/ramips/dts/mt7621_snr_snr-cpe-me2-lite.dts new file mode 100644 index 00000000000000..38cd1cd8fd87c0 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_snr_snr-cpe-me2-lite.dts @@ -0,0 +1,173 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +#include "mt7621.dtsi" + +#include +#include +#include + +/ { + compatible = "snr,snr-cpe-me2-lite", "mediatek,mt7621-soc"; + model = "SNR-CPE-ME2-Lite"; + + leds { + compatible = "gpio-leds"; + + led_sys: led-0 { + label = "green:sys"; + color = ; + function = LED_FUNCTION_STATUS; + gpios = <&gpio 15 GPIO_ACTIVE_HIGH>; + }; + + led_vpn: led-1 { + label = "green:vpn"; + color = ; + function = LED_FUNCTION_STATUS; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; +}; + +&state_default { + gpio { + groups = "jtag", "wdt"; + function = "gpio"; + }; +}; + +&gdma { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <104000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "config"; + reg = <0x30000 0x10000>; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + compatible = "denx,uimage"; + label = "firmware"; + reg = <0x50000 0xfb0000>; + }; + }; + }; +}; + +&sdhci { + status = "okay"; +}; + +&mdio { + ethphy0: ethernet-phy@0 { + reg = <0>; + }; +}; + +&gmac0 { + nvmem-cells = <&macaddr_factory_e000>; + nvmem-cell-names = "mac-address"; +}; + +&gmac1 { + status = "okay"; + label = "wan"; + phy-handle = <ðphy0>; + + nvmem-cells = <&macaddr_factory_e006>; + nvmem-cell-names = "mac-address"; +}; + +&switch0 { + ports { + port@1 { + status = "okay"; + label = "lan1"; + }; + + port@2 { + status = "okay"; + label = "lan2"; + }; + + port@3 { + status = "okay"; + label = "lan3"; + }; + + port@4 { + status = "okay"; + label = "lan4"; + }; + }; +}; + +&pcie { + status = "okay"; +}; + +&pcie0 { + wifi@0,0 { + compatible = "mediatek,mt76"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x0000>; + ieee80211-freq-limit = <2400000 2500000>; + }; +}; + +&pcie1 { + wifi@0,0 { + compatible = "mediatek,mt76"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x8000>; + ieee80211-freq-limit = <5000000 6000000>; + }; +}; + +&factory { + compatible = "nvmem-cells"; + #address-cells = <1>; + #size-cells = <1>; + + macaddr_factory_e000: macaddr@e000 { + reg = <0xe000 0x6>; + }; + + macaddr_factory_e006: macaddr@e006 { + reg = <0xe006 0x6>; + }; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index dbafaaddde1ddc..f3e439e3446958 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -1668,6 +1668,17 @@ define Device/sercomm_na502s endef TARGET_DEVICES += sercomm_na502s +define Device/snr_snr-cpe-me2-lite + $(Device/dsa-migration) + $(Device/uimage-lzma-loader) + IMAGE_SIZE := 16064k + DEVICE_VENDOR := SNR + DEVICE_MODEL := SNR-CPE-ME2-Lite + UIMAGE_NAME := $$(DEVICE_MODEL) + DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap +endef +TARGET_DEVICES += snr_snr-cpe-me2-lite + define Device/storylink_sap-g3200u3 $(Device/dsa-migration) IMAGE_SIZE := 7872k