ramips: add support for Kimax U25AWF-H1
authorDaniel Kucera <daniel.kucera@gmail.com>
Sun, 19 Feb 2017 08:46:44 +0000 (09:46 +0100)
committerMathias Kresin <dev@kresin.me>
Sat, 14 Oct 2017 08:48:29 +0000 (10:48 +0200)
Kimax U-25AWF-H1 is is a 2,5" HDD Enclosure with Wi-Fi/Eth conection
and battery, based on MediaTek MT7620A.

Patch rewritten from: https://forum.openwrt.org/viewtopic.php?pid=305643

Specification:

- MT7620A CPU
- 64 MB of RAM
- 16 MB of FLASH
- 802.11bgn WiFi
- 1x 10/100 Mbps Ethernet
- USB 2.0 Host
- UART for serial console

Flash instruction:
1. Download lede-ramips-mt7620-u25awf-h1-squashfs-sysupgrade.bin
2. Open webinterface a upgrade
3. After boot connect via ethernet to ip 192.168.1.1

Signed-off-by: Daniel Kucera <daniel.kucera@gmail.com>
[fix reset button gpio, don't add a lan/wan vlan config for single
port board, add -H1 suffix do make sure that this revision of the
board is supported/tested]
Signed-off-by: Mathias Kresin <dev@kresin.me>
target/linux/ramips/base-files/etc/board.d/01_leds
target/linux/ramips/base-files/etc/board.d/02_network
target/linux/ramips/base-files/etc/diag.sh
target/linux/ramips/base-files/lib/ramips.sh
target/linux/ramips/base-files/lib/upgrade/platform.sh
target/linux/ramips/dts/U25AWF-H1.dts [new file with mode: 0644]
target/linux/ramips/image/mt7620.mk

index c871dc4..75ab0da 100755 (executable)
@@ -368,6 +368,10 @@ tl-wr841n-v13)
        ucidef_set_led_switch "lan4" "lan4" "$board:green:lan4" "switch0" "0x10"
        ucidef_set_led_switch "wan" "wan" "$board:green:wan" "switch0" "0x01"
        ;;
+u25awf-h1)
+       set_wifi_led "u25awf:red:wifi"
+       ucidef_set_led_netdev "eth" "eth" "u25awf:green:lan" "eth0"
+       ;;
 vocore-8M|\
 vocore-16M)
        ucidef_set_led_netdev "eth" "ETH" "vocore:orange:eth" "eth0"
index a1a82d6..1c8505e 100755 (executable)
@@ -237,6 +237,7 @@ ramips_setup_interfaces()
        mzk-ex750np|\
        na930|\
        pbr-d1|\
+       u25awf-h1|\
        wli-tx4-ag300n|\
        wmdr-143n|\
        wmr-300|\
index 0345f1e..4411bab 100644 (file)
@@ -238,6 +238,9 @@ get_status_led() {
        sap-g3200u3)
                status_led="$board:green:usb"
                ;;
+       u25awf-h1)
+               status_led="u25awf:red:wifi"
+               ;;
        v22rw-2x2)
                status_led="$board:green:security"
                ;;
index d0b9bb1..07e776c 100755 (executable)
@@ -505,6 +505,9 @@ ramips_board_detect() {
        *"TL-WR841N v13")
                name="tl-wr841n-v13"
                ;;
+       *"U25AWF-H1")
+               name="u25awf-h1"
+               ;;
        *"UBNT-ERX")
                name="ubnt-erx"
                ;;
index e08c45d..99ebe35 100755 (executable)
@@ -144,6 +144,7 @@ platform_check_image() {
        tew-714tru|\
        timecloud|\
        tiny-ac|\
+       u25awf-h1|\
        ur-326n4g|\
        ur-336un|\
        v22rw-2x2|\
diff --git a/target/linux/ramips/dts/U25AWF-H1.dts b/target/linux/ramips/dts/U25AWF-H1.dts
new file mode 100644 (file)
index 0000000..8021b0f
--- /dev/null
@@ -0,0 +1,106 @@
+/dts-v1/;
+
+#include "mt7620a.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/{
+       compatible = "kimax,u25awf-h1","ralink,mt7620a-soc";
+       model = "Kimax U25AWF-H1";
+
+       gpio-keys-polled {
+               compatible = "gpio-keys-polled";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               poll-interval = <20>;
+
+               reset {
+                       label = "reset";
+                       gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
+               };
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               wifi {
+                       label = "u25awf:red:wifi";
+                       gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
+               };
+
+               lan {
+                       label = "u25awf:green:lan";
+                       gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&gpio2 {
+       status = "okay";
+};
+
+&gpio3 {
+       status = "okay";
+};
+
+&spi0 {
+       status = "okay";
+
+       m25p80@0 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <10000000>;
+
+               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 {
+                       label = "firmware";
+                       reg = <0x50000 0xfb0000>;
+               };
+       };
+};
+
+&ehci {
+       status = "okay";
+};
+
+&ohci {
+       status = "okay";
+};
+
+&ethernet {
+       mtd-mac-address = <&factory 0x4>;
+};
+
+&wmac {
+       ralink,mtd-eeprom = <&factory 0>;
+};
+
+&pinctrl {
+       state_default: pinctrl0 {
+               default {
+                       ralink,group = "uartf", "ephy", "wled";
+                       ralink,function = "gpio";
+               };
+       };
+};
index 8a7eaf4..f45a718 100644 (file)
@@ -193,6 +193,13 @@ define Device/gl-mt300a
 endef
 TARGET_DEVICES += gl-mt300a
 
+define Device/u25awf-h1
+  DTS := U25AWF-H1
+  IMAGE_SIZE := 16064k
+  DEVICE_TITLE := Kimax U25AWF-H1
+endef
+TARGET_DEVICES += u25awf-h1
+
 define Device/gl-mt300n
   DTS := GL-MT300N
   IMAGE_SIZE := $(ralink_default_fw_size_16M)