From b30f2281cce6649567e0194d203f06517d173115 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Mon, 6 Jan 2020 00:31:24 +0100 Subject: [PATCH] ramips: add support for GL.iNet microuter-N300 The GL.iNet microuter-N300 (internally referred as MT300N-v4) is a pocket-size travel router. It is essentially identical to the VIXMINI (internally referred as MT300N-v3) but with double the RAM and SPI-flash. Additionally, set the label-mac for both the VIXMINI as well as the microuter-N300. Hardware -------- SoC: MediaTek MT7628NN RAM: 128M DDR2 FLASH: 16M LED: Power - WLAN BTN: Reset UART: 115200 8N1 TX and RX are labled on the board as pads next to the SoC Installation via web-interface ------------------------------ 1. Visit the web-interface at 192.168.8.1 Note: The ethernet port is by default WAN. So you need to connect to the router via WiFi 2. Navigate to the Update tab on the left side. 3. Select "Local Update" 4. Upload the OpenWrt sysupgrade image. Note: Make sure you select not to preserve the configuration. Installation via U-Boot ----------------------- 1. Hold down the reset button while powering on the device. Wait for the LED to flash 5 times. 2. Assign yourself a static IPv4 in 192.168.1.0/24 3. Upload the OpenWrt sysupgrade image at 192.168.1.1. Signed-off-by: David Bauer --- .../dts/mt7628an_glinet_microuter-n300.dts | 21 ++++ .../ramips/dts/mt7628an_glinet_vixmini.dts | 99 ++--------------- .../mt7628an_glinet_vixmini_microuter.dtsi | 104 ++++++++++++++++++ target/linux/ramips/image/mt76x8.mk | 8 ++ .../mt76x8/base-files/etc/board.d/02_network | 1 + 5 files changed, 142 insertions(+), 91 deletions(-) create mode 100644 target/linux/ramips/dts/mt7628an_glinet_microuter-n300.dts create mode 100644 target/linux/ramips/dts/mt7628an_glinet_vixmini_microuter.dtsi diff --git a/target/linux/ramips/dts/mt7628an_glinet_microuter-n300.dts b/target/linux/ramips/dts/mt7628an_glinet_microuter-n300.dts new file mode 100644 index 0000000000..5a965f96bc --- /dev/null +++ b/target/linux/ramips/dts/mt7628an_glinet_microuter-n300.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7628an_glinet_vixmini_microuter.dtsi" + +/ { + compatible = "glinet,microuter-n300", "mediatek,mt7628an-soc"; + model = "GL.iNet microuter-N300"; +}; + +&led_power_blue { + label = "microuter-n300:blue:power"; +}; + +&led_wlan_white { + label = "microuter-n300:white:wlan"; +}; + +&firmware_part { + reg = <0x50000 0xfb0000>; +}; diff --git a/target/linux/ramips/dts/mt7628an_glinet_vixmini.dts b/target/linux/ramips/dts/mt7628an_glinet_vixmini.dts index 0935ec869b..770998a87a 100644 --- a/target/linux/ramips/dts/mt7628an_glinet_vixmini.dts +++ b/target/linux/ramips/dts/mt7628an_glinet_vixmini.dts @@ -1,104 +1,21 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT /dts-v1/; -#include "mt7628an.dtsi" +#include "mt7628an_glinet_vixmini_microuter.dtsi" -#include -#include - -/{ +/ { compatible = "glinet,vixmini", "mediatek,mt7628an-soc"; model = "GL.iNet VIXMINI"; - - aliases { - led-boot = &led_power; - led-failsafe = &led_power; - led-running = &led_power; - led-upgrade = &led_power; - }; - - chosen { - bootargs = "console=ttyS0,115200"; - }; - - leds { - compatible = "gpio-leds"; - - led_power: power { - label = "vixmini:blue:power"; - default-state = "on"; - gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; - }; - - wlan { - label = "vixmini:white:wlan"; - gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy0tpt"; - }; - }; - - keys { - compatible = "gpio-keys"; - - reset { - label = "reset"; - gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; }; -&state_default { - gpio { - ralink,group = "wdt", "wled_an", "p1led_an"; - ralink,function = "gpio"; - }; +&led_power_blue { + label = "vixmini:blue:power"; }; -ðernet { - mtd-mac-address = <&factory 0x4>; +&led_wlan_white { + label = "vixmini:white:wlan"; }; -&wmac { - status = "okay"; -}; - -&spi0 { - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <10000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "u-boot"; - reg = <0x0 0x30000>; - read-only; - }; - - partition@30000 { - label = "u-boot-env"; - reg = <0x30000 0x10000>; - read-only; - }; - - factory: partition@40000 { - label = "factory"; - reg = <0x40000 0x10000>; - read-only; - }; - - partition@50000 { - compatible = "denx,uimage"; - label = "firmware"; - reg = <0x50000 0x7b0000>; - }; - }; - }; +&firmware_part { + reg = <0x50000 0x7b0000>; }; diff --git a/target/linux/ramips/dts/mt7628an_glinet_vixmini_microuter.dtsi b/target/linux/ramips/dts/mt7628an_glinet_vixmini_microuter.dtsi new file mode 100644 index 0000000000..b88f9e7356 --- /dev/null +++ b/target/linux/ramips/dts/mt7628an_glinet_vixmini_microuter.dtsi @@ -0,0 +1,104 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "mt7628an.dtsi" + +#include +#include + +/ { + aliases { + led-boot = &led_power_blue; + led-failsafe = &led_power_blue; + led-running = &led_power_blue; + led-upgrade = &led_power_blue; + + label-mac-device = ðernet; + }; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + leds { + compatible = "gpio-leds"; + + led_power_blue: power { + /* Name is set device-specific */ + gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; + }; + + led_wlan_white: wlan { + /* Name is set device-specific */ + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; +}; + +&state_default { + gpio { + ralink,group = "wdt", "wled_an", "p1led_an"; + ralink,function = "gpio"; + }; +}; + +ðernet { + mtd-mac-address = <&factory 0x4>; +}; + +&wmac { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + + partitions: partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + /* + * Firmware-partition size is model-specific + * due to different flash sizes. + */ + firmware_part: partition@50000 { + compatible = "denx,uimage"; + label = "firmware"; + }; + }; + }; +}; diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk index 5ddeec14d5..37cac84229 100644 --- a/target/linux/ramips/image/mt76x8.mk +++ b/target/linux/ramips/image/mt76x8.mk @@ -70,6 +70,14 @@ define Device/glinet_gl-mt300n-v2 endef TARGET_DEVICES += glinet_gl-mt300n-v2 +define Device/glinet_microuter-n300 + IMAGE_SIZE := 16064k + DEVICE_VENDOR := GL.iNet + DEVICE_MODEL := microuter-N300 + SUPPORTED_DEVICES += microuter-n300 +endef +TARGET_DEVICES += glinet_microuter-n300 + define Device/glinet_vixmini IMAGE_SIZE := 7872k DEVICE_VENDOR := GL.iNet diff --git a/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network b/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network index b036eb76e6..259a257f16 100755 --- a/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt76x8/base-files/etc/board.d/02_network @@ -33,6 +33,7 @@ ramips_setup_interfaces() ucidef_add_switch "switch0" \ "1:lan" "0:wan" "6@eth0" ;; + glinet,microuter-n300|\ glinet,vixmini) ucidef_add_switch "switch0" \ "0:lan" "6@eth0"