From cad843e1f57790a08dd4804011b6cd3a4796786b Mon Sep 17 00:00:00 2001 From: Lucian Cristian Date: Tue, 5 Jun 2018 15:38:02 +0300 Subject: [PATCH] ath79: add ubiquiti unifi ap ac lite/lr Signed-off-by: Lucian Cristian --- .../ath79/base-files/etc/board.d/02_network | 1 + .../etc/hotplug.d/firmware/11-ath10k-caldata | 3 + .../ath79/dts/qca9563_ubnt-unifiac-lite.dts | 148 ++++++++++++++++++ target/linux/ath79/image/generic-ubnt.mk | 19 +++ 4 files changed, 171 insertions(+) create mode 100644 target/linux/ath79/dts/qca9563_ubnt-unifiac-lite.dts 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 0c9a5fa4e4..6a344b7467 100755 --- a/target/linux/ath79/base-files/etc/board.d/02_network +++ b/target/linux/ath79/base-files/etc/board.d/02_network @@ -15,6 +15,7 @@ ath79_setup_interfaces() "avm,fritz300e"|\ "tplink,tl-mr10u"|\ "tplink,tl-wr703n"|\ + "ubnt,ubnt-unifiac-lite"|\ "ubnt,unifi") ucidef_set_interface_lan "eth0" ;; 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 d862f611e5..e3a3432dd1 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 @@ -91,6 +91,9 @@ case "$FIRMWARE" in ath10kcal_extract "ART" 20480 2116 ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +16) ;; + "ubnt,ubnt-unifiac-lite") + ath10kcal_extract "EEPROM" 20480 2116 + ;; esac ;; "ath10k/pre-cal-pci-0000:00:00.0.bin") diff --git a/target/linux/ath79/dts/qca9563_ubnt-unifiac-lite.dts b/target/linux/ath79/dts/qca9563_ubnt-unifiac-lite.dts new file mode 100644 index 0000000000..0bfda12421 --- /dev/null +++ b/target/linux/ath79/dts/qca9563_ubnt-unifiac-lite.dts @@ -0,0 +1,148 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include +#include + +#include "qca956x.dtsi" + +/ { + compatible = "ubnt,ubnt-unifiac-lite", "qca,qca9563"; + model = "Ubiquiti UniFi-AC-LITE/MESH/LR"; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x8000000>; + }; + + chosen { + bootargs = "console=ttyS0,115200n8"; + }; + + leds { + compatible = "gpio-leds"; + + wifi_ac { + label = "ubnt:white:dome"; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + default-state = "off"; + linux,default-trigger = "phy0tpt"; + }; + + wifi_n { + label = "ubnt:blue:dome"; + gpios = <&gpio 8 GPIO_ACTIVE_LOW>; + default-state = "off"; + linux,default-trigger = "phy1tpt"; + }; + + }; + + keys { + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + + reset { + label = "Reset button"; + linux,code = ; + gpios = <&gpio 2 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; +}; + +&uart { + status = "okay"; +}; + +&gpio { + status = "okay"; +}; + +&pcie { + status = "okay"; +}; + +&spi { + status = "okay"; + num-cs = <1>; + + flash@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x000000 0x060000>; + read-only; + }; + + partition@60000 { + label = "u-boot-env"; + reg = <0x060000 0x010000>; + read-only; + }; + + partition@70000 { + label = "firmware"; + reg = <0x070000 0x790000>; + }; + + partition@800000 { + label = "ubnt-airos"; + reg = <0x800000 0x790000>; + read-only; + }; + + partition@f90000 { + label = "bs"; + reg = <0xf90000 0x020000>; + read-only; + }; + + partition@fb0000 { + label = "cfg"; + reg = <0xfb0000 0x040000>; + read-only; + }; + + eeprom: partition@ff0000 { + label = "EEPROM"; + reg = <0xff0000 0x010000>; + read-only; + }; + }; + }; +}; + +&mdio0 { + status = "okay"; + + phy-mask = <4>; + phy4: ethernet-phy@4 { + phy-mode = "sgmii"; + reg = <4>; + }; +}; + +ð0 { + status = "okay"; + + mtd-mac-address = <&eeprom 0x0>; + phy-handle = <&phy4>; +}; + +&wmac { + status = "okay"; + mtd-cal-data = <&eeprom 0x1000>; + mtd-mac-address = <&eeprom 0x0>; +}; diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk index 1aae93869e..900167f626 100644 --- a/target/linux/ath79/image/generic-ubnt.mk +++ b/target/linux/ath79/image/generic-ubnt.mk @@ -79,3 +79,22 @@ define Device/ubnt_unifi SUPPORTED_DEVICES += unifi endef TARGET_DEVICES += ubnt_unifi + +define Device/ubnt-unifiac + DEVICE_PACKAGES := kmod-usb-core kmod-usb2 + DEVICE_PROFILE := UBNT + IMAGE_SIZE := 7744k + IMAGES := sysupgrade.bin + IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) +endef + + +define Device/ubnt-unifiac-lite + $(Device/ubnt-unifiac) + DEVICE_TITLE := Ubiquiti UniFi AC-Lite + DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x + DEVICE_PROFILE += UBNTUNIFIACLITE + BOARDNAME := UBNT-UF-AC-LITE + ATH_SOC := qca9563 +endef +TARGET_DEVICES += ubnt-unifiac-lite -- 2.30.2