ath79: add support for MikroTik RouterBOARD wAPR-2nD (wAP R)
authorRoger Pueyo Centelles <roger.pueyo@guifi.net>
Mon, 16 Nov 2020 15:54:54 +0000 (16:54 +0100)
committerPetr Štetiar <ynezz@true.cz>
Tue, 22 Dec 2020 18:11:50 +0000 (19:11 +0100)
This patch adds support for the MikroTik RouterBOARD wAPR-2nD (wAP R)
router, a weatherproof 2.4 GHz access point with a miniPCI-e slot and
a SIM card slot.

Specifications:

 - SoC: Qualcomm Atheros QCA9533
 - Flash: 16 MB (SPI)
 - RAM: 64 MB
 - Ethernet: 1x 10/100 Mbps (PoE in)
 - WiFi: AR9531 2T2R 2.4 GHz (SoC)
 - miniPCI-e slot
 - 4x green LEDs (1x WiFi, 3x RSSI)
 - 1x reset button

 See https://mikrotik.com/product/RBwAPR-2nD for more details.

Flashing:
 TFTP boot initramfs image and then perform sysupgrade. Follow common
 MikroTik procedure as in https://openwrt.org/toh/mikrotik/common.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
target/linux/ath79/dts/qca9533_mikrotik_routerboard-wapr-2nd.dts [new file with mode: 0644]
target/linux/ath79/image/mikrotik.mk
target/linux/ath79/mikrotik/base-files/etc/board.d/01_leds
target/linux/ath79/mikrotik/base-files/etc/board.d/02_network
target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom

diff --git a/target/linux/ath79/dts/qca9533_mikrotik_routerboard-wapr-2nd.dts b/target/linux/ath79/dts/qca9533_mikrotik_routerboard-wapr-2nd.dts
new file mode 100644 (file)
index 0000000..ba674c1
--- /dev/null
@@ -0,0 +1,71 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca9533_mikrotik_routerboard-16m.dtsi"
+
+/ {
+       compatible = "mikrotik,routerboard-wapr-2nd", "qca,qca9533";
+       model = "MikroTik RouterBOARD wAPR-2nD (wAP R)";
+
+       aliases {
+               led-boot = &led_rssilow;
+               led-failsafe = &led_rssilow;
+               led-upgrade = &led_rssilow;
+               led-running = &led_rssilow;
+               serial0 = &uart;
+       };
+
+       leds {
+               compatible = "gpio-leds";
+               pinctrl-names = "default";
+
+               led_rssilow: rssilow {
+                       label = "green:rssilow";
+                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+               };
+
+               rssimedium {
+                       label = "green:rssimedium";
+                       gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+               };
+
+               rssihigh {
+                       label = "green:rssihigh";
+                       gpios = <&gpio 3 GPIO_ACTIVE_HIGH>;
+               };
+
+               wlan {
+                       label = "green:wlan";
+                       gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
+                       linux,default-trigger = "phy0tpt";
+               };
+       };
+
+       gpio-export {
+               compatible = "gpio-export";
+
+               minipcie {
+                       gpio-export,name = "minipcie";
+                       gpio-export,output = <1>;
+                       gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
+               };
+       };
+};
+
+&eth0 {
+       status = "okay";
+
+       phy-handle = <&swphy0>;
+
+       gmac-config {
+               device = <&gmac>;
+               switch-phy-swap = <1>;
+       };
+};
+
+&eth1 {
+       compatible = "syscon", "simple-mfd";
+};
+
+&pcie0 {
+       status = "okay";
+};
index 3752c891a7077e332ddf1ef6379d7b262d1f6593..b7d745bc77827eafda9fd0f5dd28c13c1027f62c 100644 (file)
@@ -53,3 +53,12 @@ define Device/mikrotik_routerboard-wap-g-5hact2hnd
   SUPPORTED_DEVICES += rb-wapg-5hact2hnd
 endef
 TARGET_DEVICES += mikrotik_routerboard-wap-g-5hact2hnd
+
+define Device/mikrotik_routerboard-wapr-2nd
+  $(Device/mikrotik_nor)
+  SOC := qca9533
+  DEVICE_MODEL := RouterBOARD wAPR-2nD (wAP R)
+  DEVICE_PACKAGES += rssileds
+  IMAGE_SIZE := 16256k
+endef
+TARGET_DEVICES += mikrotik_routerboard-wapr-2nd
index 60dcef4ff683208820baf18ca5ef28c602c29943..0d3209c2e35ea606c974b23a18d2b001f4f4a729 100755 (executable)
@@ -10,6 +10,12 @@ case "$board" in
 mikrotik,routerboard-lhg-2nd)
        ucidef_set_led_netdev "lan" "lan" "green:lan" "eth0"
        ;;
+mikrotik,routerboard-wapr-2nd)
+       ucidef_set_rssimon "wlan0" "200000" "1"
+       ucidef_set_led_rssi "rssilow" "rssilow" "green:rssilow" "wlan0" "1" "100"
+       ucidef_set_led_rssi "rssimedium" "rssimedium" "green:rssimedium" "wlan0" "33" "100"
+       ucidef_set_led_rssi "rssihigh" "rssihigh" "green:rssihigh" "wlan0" "66" "100"
+       ;;
 mikrotik,routerboard-sxt-5nd-r2)
        ucidef_set_rssimon "wlan0" "200000" "1"
        ucidef_set_led_rssi "rssilow" "rssilow" "green:rssilow" "wlan0" "1" "100"
index 6bc4822551b25b2ae9ef15b94d81bedbf83687db..584acc0feb677a509f4a75656372bb27726463c9 100755 (executable)
@@ -19,7 +19,8 @@ ath79_setup_interfaces()
        mikrotik,routerboard-922uags-5hpacd|\
        mikrotik,routerboard-lhg-2nd|\
        mikrotik,routerboard-sxt-5nd-r2|\
-       mikrotik,routerboard-wap-g-5hact2hnd)
+       mikrotik,routerboard-wap-g-5hact2hnd|\
+       mikrotik,routerboard-wapr-2nd)
                ucidef_set_interface_lan "eth0"
                ;;
        *)
@@ -40,7 +41,8 @@ ath79_setup_macs()
        mikrotik,routerboard-921gs-5hpacd-15s|\
        mikrotik,routerboard-lhg-2nd|\
        mikrotik,routerboard-sxt-5nd-r2|\
-       mikrotik,routerboard-wap-g-5hact2hnd)
+       mikrotik,routerboard-wap-g-5hact2hnd|\
+       mikrotik,routerboard-wapr-2nd)
                label_mac="$mac_base"
                lan_mac="$mac_base"
                ;;
index f2cb1f774fe5f742fb82aa4612bd721dde238ab4..7ef6fdbe0fdb46f3e3f956ad8b39bf35a94fd536 100644 (file)
@@ -24,7 +24,8 @@ case "$FIRMWARE" in
 "ath9k-eeprom-ahb-18100000.wmac.bin")
        case $board in
        mikrotik,routerboard-lhg-2nd|\
-       mikrotik,routerboard-sxt-5nd-r2)
+       mikrotik,routerboard-sxt-5nd-r2|\
+       mikrotik,routerboard-wapr-2nd)
                caldata_mikrotik_ath9k 0x1000 0x440 $(macaddr_add "$mac_base" +1)
                ;;
        mikrotik,routerboard-wap-g-5hact2hnd)