ramips: add support for GL.iNet microuter-N300
authorDavid Bauer <mail@david-bauer.net>
Sun, 5 Jan 2020 23:31:24 +0000 (00:31 +0100)
committerDavid Bauer <mail@david-bauer.net>
Wed, 29 Jan 2020 14:10:54 +0000 (15:10 +0100)
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 <mail@david-bauer.net>
target/linux/ramips/dts/mt7628an_glinet_microuter-n300.dts [new file with mode: 0644]
target/linux/ramips/dts/mt7628an_glinet_vixmini.dts
target/linux/ramips/dts/mt7628an_glinet_vixmini_microuter.dtsi [new file with mode: 0644]
target/linux/ramips/image/mt76x8.mk
target/linux/ramips/mt76x8/base-files/etc/board.d/02_network

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 (file)
index 0000000..5a965f9
--- /dev/null
@@ -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>;
+};
index 0935ec869be9e5034b8206374f0fe87b3a88b015..770998a87a8355e11f8d5e2f7a4501eb2fe79413 100644 (file)
 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 /dts-v1/;
 
-#include "mt7628an.dtsi"
+#include "mt7628an_glinet_vixmini_microuter.dtsi"
 
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-
-/{
+/ {
        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 = <KEY_RESTART>;
-               };
-       };
 };
 
-&state_default {
-       gpio {
-               ralink,group = "wdt", "wled_an", "p1led_an";
-               ralink,function = "gpio";
-       };
+&led_power_blue {
+       label = "vixmini:blue:power";
 };
 
-&ethernet {
-       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 (file)
index 0000000..b88f9e7
--- /dev/null
@@ -0,0 +1,104 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7628an.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+       aliases {
+               led-boot = &led_power_blue;
+               led-failsafe = &led_power_blue;
+               led-running = &led_power_blue;
+               led-upgrade = &led_power_blue;
+
+               label-mac-device = &ethernet;
+       };
+
+       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 = <KEY_RESTART>;
+               };
+       };
+};
+
+&state_default {
+       gpio {
+               ralink,group = "wdt", "wled_an", "p1led_an";
+               ralink,function = "gpio";
+       };
+};
+
+&ethernet {
+       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";
+                       };
+               };
+       };
+};
index 5ddeec14d5ec1c1d2ed824b59a66889c96e9b44a..37cac84229d070cc73c0e9893534b76411288d21 100644 (file)
@@ -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
index b036eb76e64041f135b1b78125fcbd3b0b442476..259a257f16897680690f966cdacb484ef5f8f0c8 100755 (executable)
@@ -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"