From 8ae2ee99c60382f9f5130009397fd36e40900447 Mon Sep 17 00:00:00 2001 From: Sebastian Schaper Date: Mon, 30 Nov 2020 20:09:29 +0100 Subject: [PATCH] ath79: add support for D-Link DAP-3320 A1 Specifications: * QCA9533, 16 MiB Flash, 64 MiB RAM, 802.11n 2T2R * 10/100 Ethernet Port, 802.11af PoE * IP55 pole-mountable outdoor case Installation: * Factory Web UI is at 192.168.0.50 login with 'admin' and blank password, flash factory.bin * Recovery Web UI is at 192.168.0.50 connect network cable, hold reset button during power-on and keep it pressed until uploading has started (only required when checksum is ok, e.g. for reverting back to oem firmware), flash factory.bin After flashing factory.bin, additional free space can be reclaimed by flashing sysupgrade.bin, since the factory image requires some padding to be accepted for upgrading via OEM Web UI. Signed-off-by: Sebastian Schaper --- .../ath79/dts/qca9533_dlink_dap-3320-a1.dts | 56 +++++++++++++++++++ .../generic/base-files/etc/board.d/02_network | 4 +- .../etc/hotplug.d/ieee80211/10_fix_wifi_mac | 3 +- .../etc/uci-defaults/09_fix-checksum | 3 +- target/linux/ath79/image/generic.mk | 11 ++++ 5 files changed, 74 insertions(+), 3 deletions(-) create mode 100644 target/linux/ath79/dts/qca9533_dlink_dap-3320-a1.dts diff --git a/target/linux/ath79/dts/qca9533_dlink_dap-3320-a1.dts b/target/linux/ath79/dts/qca9533_dlink_dap-3320-a1.dts new file mode 100644 index 000000000000..97f2f62b4a80 --- /dev/null +++ b/target/linux/ath79/dts/qca9533_dlink_dap-3320-a1.dts @@ -0,0 +1,56 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "qca953x.dtsi" +#include "qca95xx_dlink_dap-2xxx.dtsi" + +/ { + compatible = "dlink,dap-3320-a1", "qca,qca9533"; + model = "D-Link DAP-3320 A1"; + + aliases { + led-boot = &led_power_green; + led-failsafe = &led_power_green; + led-running = &led_power_green; + led-upgrade = &led_power_green; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_power_green: power_green { + label = "green:power"; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + }; +}; + +&partitions { + partition@70000 { + label = "firmware"; + reg = <0x70000 0xef0000>; + compatible = "wrg"; + }; + + partition@f60000 { + label = "dlink"; + reg = <0xf60000 0x90000>; + read-only; + }; + + art: partition@ff0000 { + label = "art"; + reg = <0xff0000 0x10000>; + read-only; + }; +}; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index 23b824d7e328..20cf561add4a 100755 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -29,6 +29,7 @@ ath79_setup_interfaces() dlink,dap-1365-a1|\ dlink,dap-2230-a1|\ dlink,dap-2680-a1|\ + dlink,dap-3320-a1|\ dlink,dir-505|\ engenius,eap300-v2|\ engenius,eap350-v1|\ @@ -485,7 +486,8 @@ ath79_setup_macs() ;; dlink,dap-2230-a1|\ dlink,dap-2660-a1|\ - dlink,dap-2680-a1) + dlink,dap-2680-a1|\ + dlink,dap-3320-a1) lan_mac=$(mtd_get_mac_ascii bdcfg "lanmac") label_mac=$lan_mac ;; diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index 8923a2cb114e..5edc2e4a8655 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -22,7 +22,8 @@ case "$board" in dlink,dch-g020-a1) mtd_get_mac_text "mp" 0x13 > /sys${DEVPATH}/macaddress ;; - dlink,dap-2230-a1) + dlink,dap-2230-a1|\ + dlink,dap-3320-a1) mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress ;; dlink,dap-2660-a1|\ diff --git a/target/linux/ath79/generic/base-files/etc/uci-defaults/09_fix-checksum b/target/linux/ath79/generic/base-files/etc/uci-defaults/09_fix-checksum index 0bbe32178849..b522563f178b 100644 --- a/target/linux/ath79/generic/base-files/etc/uci-defaults/09_fix-checksum +++ b/target/linux/ath79/generic/base-files/etc/uci-defaults/09_fix-checksum @@ -16,7 +16,8 @@ case "$board" in dlink,dap-2230-a1|\ dlink,dap-2660-a1|\ dlink,dap-2680-a1|\ -dlink,dap-2695-a1) +dlink,dap-2695-a1|\ +dlink,dap-3320-a1) fixwrgg ;; qihoo,c301) diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index 26ab0fcb34b7..190f477b7ef8 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -804,6 +804,17 @@ define Device/dlink_dap-2695-a1 endef TARGET_DEVICES += dlink_dap-2695-a1 +define Device/dlink_dap-3320-a1 + $(Device/dlink_dap-2xxx) + SOC := qca9533 + DEVICE_VENDOR := D-Link + DEVICE_MODEL := DAP-3320 + DEVICE_VARIANT := A1 + IMAGE_SIZE := 15296k + DAP_SIGNATURE := wapn29_dkbs_dap3320 +endef +TARGET_DEVICES += dlink_dap-3320-a1 + define Device/dlink_dch-g020-a1 SOC := qca9531 DEVICE_VENDOR := D-Link -- 2.30.2