diff --git a/target/linux/ath79/base-files/etc/board.d/01_leds b/target/linux/ath79/base-files/etc/board.d/01_leds index 7ec5300917..99646ad678 100755 --- a/target/linux/ath79/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/base-files/etc/board.d/01_leds @@ -101,6 +101,13 @@ ubnt,rocket-m) ucidef_set_led_rssi "rssimediumhigh" "RSSIMEDIUMHIGH" "ubnt:green:link3" "wlan0" "51" "100" ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "ubnt:green:link4" "wlan0" "76" "100" ;; +ubnt,nanostation-ac) + ucidef_set_rssimon "wlan0" "200000" "1" + ucidef_set_led_rssi "rssilow" "RSSILOW" "ubnt:blue:rssi0" "wlan0" "1" "100" + ucidef_set_led_rssi "rssimediumlow" "RSSIMEDIUMLOW" "ubnt:blue:rssi1" "wlan0" "26" "100" + ucidef_set_led_rssi "rssimediumhigh" "RSSIMEDIUMHIGH" "ubnt:blue:rssi2" "wlan0" "51" "100" + ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "ubnt:blue:rssi3" "wlan0" "76" "100" + ;; wd,mynet-wifi-rangeextender) ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth0" ucidef_set_rssimon "wlan0" "200000" "1" diff --git a/target/linux/ath79/base-files/etc/board.d/02_network b/target/linux/ath79/base-files/etc/board.d/02_network index 30577a1a9f..f782affe34 100755 --- a/target/linux/ath79/base-files/etc/board.d/02_network +++ b/target/linux/ath79/base-files/etc/board.d/02_network @@ -161,6 +161,7 @@ ath79_setup_interfaces() ucidef_add_switch "switch0" \ "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1" ;; + ubnt,nanostation-ac|\ ubnt,unifiac-mesh-pro|\ ubnt,unifiac-pro) ucidef_add_switch "switch0" \ diff --git a/target/linux/ath79/base-files/etc/board.d/03_gpio_switches b/target/linux/ath79/base-files/etc/board.d/03_gpio_switches new file mode 100755 index 0000000000..4af9845b65 --- /dev/null +++ b/target/linux/ath79/base-files/etc/board.d/03_gpio_switches @@ -0,0 +1,20 @@ +#!/bin/sh +# +# Copyright (C) 2018 OpenWrt.org +# + +. /lib/functions/uci-defaults.sh + +board_config_update + +board=$(board_name) + +case "$board" in +ubnt,nanostation-ac) + ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "3" + ;; +esac + +board_config_flush + +exit 0 diff --git a/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index ec490dda7f..9365d67e85 100644 --- a/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -111,6 +111,7 @@ case "$FIRMWARE" in ubnt,unifiac-lite|\ ubnt,unifiac-mesh|\ ubnt,unifiac-mesh-pro|\ + ubnt,nanostation-ac|\ ubnt,nanostation-ac-loco|\ ubnt,unifiac-pro) ath10kcal_extract "EEPROM" 20480 2116 diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts new file mode 100644 index 0000000000..164587dc3f --- /dev/null +++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts @@ -0,0 +1,78 @@ +// SPDX-License-Identifier: GPL-2.0 +/dts-v1/; + +#include +#include + +#include "ar9342_ubnt_wa.dtsi" + +/ { + compatible = "ubnt,nanostation-ac", "ubnt,wa"; + model = "Ubiquiti Nanostation AC (WA)"; + + gpio-leds { + compatible = "gpio-leds"; + + rssi0 { + label = "ubnt:blue:rssi0"; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + }; + + rssi1 { + label = "ubnt:blue:rssi1"; + gpios = <&gpio 16 GPIO_ACTIVE_LOW>; + }; + + rssi2 { + label = "ubnt:blue:rssi2"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + }; + + rssi3 { + label = "ubnt:blue:rssi3"; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&mdio0 { + status = "okay"; + + phy-mask = <4>; + phy0: ethernet-phy@0 { + phy-mode = "rgmii"; + reg = <0>; + + qca,ar8327-initvals = < + 0x04 0x07600000 /* PORT0 PAD MODE CTRL */ + 0x58 0xffb7ffb7 /* LED_CTRL2 */ + 0x5c 0x03ffff00 /* LED_CTRL3 */ + 0x7c 0x0000007e /* PORT0_STATUS */ + >; + }; +}; + +ð0 { + status = "okay"; + + /* default for ar934x, except for 1000M and 10M */ + pll-data = <0x06000000 0x00000101 0x00001313>; + + mtd-mac-address = <&eeprom 0x0>; + + phy-mode = "rgmii"; + phy-handle = <&phy0>; + + gmac-config { + device = <&gmac>; + rxd-delay = <2>; + rxdv-delay = <2>; + }; +}; + +&wmac { + status = "okay"; + + mtd-cal-data = <&eeprom 0x1000>; + mtd-mac-address = <&eeprom 0x1002>; +}; diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk index 86afa11deb..91cd5fc681 100644 --- a/target/linux/ath79/image/generic-ubnt.mk +++ b/target/linux/ath79/image/generic-ubnt.mk @@ -84,6 +84,16 @@ define Device/ubnt_nano-m endef TARGET_DEVICES += ubnt_nano-m +define Device/ubnt_nanostation-ac + $(Device/ubnt-wa) + DEVICE_TITLE := Ubiquiti Nanostation AC + DEVICE_PACKAGES += kmod-ath10k ath10k-firmware-qca988x + IMAGE_SIZE := 15744k + IMAGES += factory.bin + IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | mkubntimage-split +endef +TARGET_DEVICES += ubnt_nanostation-ac + define Device/ubnt_nanostation-ac-loco $(Device/ubnt-wa) DEVICE_TITLE := Ubiquiti Nanostation AC loco