From: Tomasz Maciej Nowak Date: Wed, 24 Aug 2022 16:05:58 +0000 (+0200) Subject: ath79: add support for MikroTik RouterBOARD 911 Lite2/Lite5 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=43c7132bf8e7dc0756b527f985a1ac6056007f62;p=openwrt%2Fstaging%2Fnbd.git ath79: add support for MikroTik RouterBOARD 911 Lite2/Lite5 Forward-port from ar71xx target the board introduced in commit eb9e3651dd1a (" ar71xx: add support for the MikroTik RB911-2Hn/5Hn boards"). Citing: The patch adds support for the MikroTik RB911-2Hn (911 Lite2) and the RB911-5Hn (911 Lite5) boards: https://mikrotik.com/product/RB911-2Hn https://mikrotik.com/product/RB911-5Hn The two boards are using the same hardware design, the only difference between the two is the supported wireless band. Specifications: * SoC: Atheros AR9344 (600MHz) * RAM: 64MiB * Storage: 16 MiB SPI NOR flash * Ethernet: 1x100M (Passive PoE in) * Wireless: AR9344 built-in wireless MAC, single chain 802.11b/g/n (911-2Hn) or 802.11a/g/n (911-5Hn) Notes: * Older versions of these boards might be equipped with a NAND flash chip instead of the SPI NOR device. Those boards are not supported (yet).[1] * The MikroTik RB911-5HnD (911 Lite5 Dual) board also uses the same hardware. Support for that can be added later with little effort probably.[2] End of citation. Follow intallation instruction from that commit message, using openwrt-ath79-mikrotik-mikrotik_routerboard-911-lite-initramfs-kernel.bin and openwrt-ath79-mikrotik-mikrotik_routerboard-911-lite-squashfs-sysupgrade.bin images found in ath79/mikrotik directory. Be advised that the board accepts 10-30 V on PoE input. Known issues Compared to ar71xx target image, there is still small leak of current to user LED, which makes it lit, although weaker, even if brightness is set to 0. The cause of that is still unknown. 1. https://github.com/openwrt/openwrt/pull/3652 2. RB911-5HnD should work with this commit or with [1], depending on what flash topology was used. Signed-off-by: Tomasz Maciej Nowak --- diff --git a/target/linux/ath79/dts/ar9344_mikrotik_routerboard-911-lite.dts b/target/linux/ath79/dts/ar9344_mikrotik_routerboard-911-lite.dts new file mode 100644 index 0000000000..d77078c5a2 --- /dev/null +++ b/target/linux/ath79/dts/ar9344_mikrotik_routerboard-911-lite.dts @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "ar9344_mikrotik_routerboard.dtsi" +#include "ar9344_mikrotik_routerboard-16m-nor.dtsi" + +/ { + model = "MikroTik RouterBOARD 911-2Hn/5Hn (Lite2/Lite5)"; + compatible = "mikrotik,routerboard-911-lite", "qca,ar9344"; +}; + +&leds { + pinctrl-names = "default"; + pinctrl-0 = <&enable_gpio_20>; + + lan { + label = "green:lan"; + gpios = <&gpio 20 GPIO_ACTIVE_LOW>; + }; + + power { + label = "green:power"; + gpios = <&gpio 11 GPIO_ACTIVE_HIGH>; + default-state = "on"; + }; + + led_user: user { + label = "green:user"; + gpios = <&gpio 3 GPIO_ACTIVE_LOW>; + }; +}; + +&pinmux { + enable_gpio_20: pinmux_gpio_out_function5 { + pinctrl-single,bits = <0x14 0x0 0xff>; + }; +}; diff --git a/target/linux/ath79/image/mikrotik.mk b/target/linux/ath79/image/mikrotik.mk index c90579fbb5..fb0035fb65 100644 --- a/target/linux/ath79/image/mikrotik.mk +++ b/target/linux/ath79/image/mikrotik.mk @@ -9,6 +9,16 @@ define Device/mikrotik_routerboard-493g endef TARGET_DEVICES += mikrotik_routerboard-493g +define Device/mikrotik_routerboard-911-lite + $(Device/mikrotik_nor) + SOC := ar9344 + DEVICE_MODEL := RouterBOARD 911 Lite2/Lite5 (2Hn/5Hn) + DEVICE_PACKAGES += rssileds + IMAGE_SIZE := 16256k + SUPPORTED_DEVICES += rb-911-2hn rb-911-5hn +endef +TARGET_DEVICES += mikrotik_routerboard-911-lite + define Device/mikrotik_routerboard-912uag-2hpnd $(Device/mikrotik_nand) SOC := ar9342 diff --git a/target/linux/ath79/mikrotik/base-files/etc/board.d/01_leds b/target/linux/ath79/mikrotik/base-files/etc/board.d/01_leds index 76b91a54a5..4c1b98fff2 100644 --- a/target/linux/ath79/mikrotik/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/mikrotik/base-files/etc/board.d/01_leds @@ -6,6 +6,16 @@ board_config_update board=$(board_name) case "$board" in +mikrotik,routerboard-911-lite|\ +mikrotik,routerboard-lhg-5nd) + ucidef_set_led_netdev "lan" "lan" "green:lan" "eth0" + ucidef_set_rssimon "wlan0" "200000" "1" + ucidef_set_led_rssi "rssilow" "rssilow" "green:rssilow" "wlan0" "1" "100" + ucidef_set_led_rssi "rssimediumlow" "rssimediumlow" "green:rssimediumlow" "wlan0" "20" "100" + ucidef_set_led_rssi "rssimedium" "rssimedium" "green:rssimedium" "wlan0" "40" "100" + ucidef_set_led_rssi "rssimediumhigh" "rssimediumhigh" "green:rssimediumhigh" "wlan0" "60" "100" + ucidef_set_led_rssi "rssihigh" "rssihigh" "green:rssihigh" "wlan0" "80" "100" + ;; mikrotik,routerboard-951ui-2nd|\ mikrotik,routerboard-952ui-5ac2nd) ucidef_set_led_netdev "port1" "port1" "green:port1" "eth1" @@ -19,15 +29,6 @@ mikrotik,routerboard-mapl-2nd|\ mikrotik,routerboard-wap-2nd) ucidef_set_led_netdev "lan" "lan" "green:lan" "eth0" ;; -mikrotik,routerboard-lhg-5nd) - ucidef_set_led_netdev "lan" "lan" "green:lan" "eth0" - ucidef_set_rssimon "wlan0" "200000" "1" - ucidef_set_led_rssi "rssilow" "rssilow" "green:rssilow" "wlan0" "1" "100" - ucidef_set_led_rssi "rssimediumlow" "rssimediumlow" "green:rssimediumlow" "wlan0" "20" "100" - ucidef_set_led_rssi "rssimedium" "rssimedium" "green:rssimedium" "wlan0" "40" "100" - ucidef_set_led_rssi "rssimediumhigh" "rssimediumhigh" "green:rssimediumhigh" "wlan0" "60" "100" - ucidef_set_led_rssi "rssihigh" "rssihigh" "green:rssihigh" "wlan0" "80" "100" - ;; mikrotik,routerboard-map-2nd) ucidef_set_led_netdev "eth_1" "eth_1" "green:eth_1" "eth1" ucidef_set_led_switch "eth_2" "eth_2" "green:eth_2" "switch0" "0x4" diff --git a/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network b/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network index 5646d8cf68..da63347c3c 100644 --- a/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network +++ b/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network @@ -14,6 +14,7 @@ ath79_setup_interfaces() ucidef_add_switch "switch1" \ "0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3" ;; + mikrotik,routerboard-911-lite|\ mikrotik,routerboard-912uag-2hpnd|\ mikrotik,routerboard-lhg-2nd|\ mikrotik,routerboard-lhg-5nd|\ @@ -52,6 +53,7 @@ ath79_setup_macs() local mac_base="$(cat /sys/firmware/mikrotik/hard_config/mac_base)" case "$board" in + mikrotik,routerboard-911-lite|\ mikrotik,routerboard-912uag-2hpnd|\ mikrotik,routerboard-lhg-2nd|\ mikrotik,routerboard-lhg-5nd|\ diff --git a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom index aa5354bfdb..e0bf1e47ef 100644 --- a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom +++ b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -23,6 +23,7 @@ board=$(board_name) case "$FIRMWARE" in "ath9k-eeprom-ahb-18100000.wmac.bin") case $board in + mikrotik,routerboard-911-lite|\ mikrotik,routerboard-912uag-2hpnd|\ mikrotik,routerboard-lhg-2nd|\ mikrotik,routerboard-lhg-5nd|\