diff options
6 files changed, 113 insertions, 2 deletions
diff --git a/target/linux/ath79/dts/qca9558_dlink_dap-2680-a1.dts b/target/linux/ath79/dts/qca9558_dlink_dap-2680-a1.dts new file mode 100644 index 0000000000..c3c82937a8 --- /dev/null +++ b/target/linux/ath79/dts/qca9558_dlink_dap-2680-a1.dts @@ -0,0 +1,89 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "qca955x.dtsi" +#include "qca95xx_dlink_dap-2xxx.dtsi" + +/ { + compatible = "dlink,dap-2680-a1", "qca,qca9558"; + model = "D-Link DAP-2680 A1"; + + aliases { + led-boot = &led_power_green; + led-failsafe = &led_power_red; + led-running = &led_power_green; + led-upgrade = &led_power_red; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = <KEY_RESTART>; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_power_red: power_red { + label = "red:power"; + gpios = <&gpio 20 GPIO_ACTIVE_LOW>; + }; + + led_power_green: power_green { + label = "green:power"; + gpios = <&gpio 19 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + }; +}; + +&partitions { + partition@70000 { + label = "firmware"; + reg = <0x70000 0xee0000>; + compatible = "wrg"; + }; + + partition@f50000 { + label = "dlink"; + reg = <0xf50000 0xa0000>; + read-only; + }; + + art: partition@ff0000 { + label = "art"; + reg = <0xff0000 0x10000>; + read-only; + }; +}; + +&mdio0 { + status = "okay"; + + phy4: ethernet-phy@4 { + reg = <4>; + }; +}; + +ð0 { + status = "okay"; + + pll-data = <0x82000000 0x80000101 0x80001313>; + + phy-handle = <&phy4>; + phy-mode = "rgmii-id"; + + gmac-config { + device = <&gmac>; + rgmii-enabled = <1>; + rxd-delay = <3>; + rxdv-delay = <3>; + }; +}; + +&pcie0 { + status = "okay"; +}; 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 86c9a0b8d6..23b824d7e3 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 @@ -28,6 +28,7 @@ ath79_setup_interfaces() dlink,dap-1330-a1|\ dlink,dap-1365-a1|\ dlink,dap-2230-a1|\ + dlink,dap-2680-a1|\ dlink,dir-505|\ engenius,eap300-v2|\ engenius,eap350-v1|\ @@ -483,7 +484,8 @@ ath79_setup_macs() label_mac=$lan_mac ;; dlink,dap-2230-a1|\ - dlink,dap-2660-a1) + dlink,dap-2660-a1|\ + dlink,dap-2680-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/firmware/11-ath10k-caldata b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index 3ab01afcf3..295bc1b180 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -174,6 +174,12 @@ case "$FIRMWARE" in /lib/firmware/ath10k/QCA9888/hw2.0/board.bin rm /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin ;; + dlink,dap-2680-a1) + caldata_extract "art" 0x5000 0x2f20 + ath10k_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac_a) + ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \ + /lib/firmware/ath10k/QCA9888/hw2.0/board.bin + ;; dlink,dir-842-c1|\ dlink,dir-842-c2|\ dlink,dir-842-c3) 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 c3dc2a8b5b..8923a2cb11 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 @@ -25,7 +25,8 @@ case "$board" in dlink,dap-2230-a1) mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress ;; - dlink,dap-2660-a1) + dlink,dap-2660-a1|\ + dlink,dap-2680-a1) [ "$PHYNBR" -eq 1 ] && \ mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress ;; 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 9b98213022..0bbe321788 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 @@ -15,6 +15,7 @@ board=$(board_name) case "$board" in dlink,dap-2230-a1|\ dlink,dap-2660-a1|\ +dlink,dap-2680-a1|\ dlink,dap-2695-a1) fixwrgg ;; diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index 080c6a1603..26ab0fcb34 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -772,6 +772,18 @@ define Device/dlink_dap-2660-a1 endef TARGET_DEVICES += dlink_dap-2660-a1 +define Device/dlink_dap-2680-a1 + $(Device/dlink_dap-2xxx) + SOC := qca9558 + DEVICE_VENDOR := D-Link + DEVICE_MODEL := DAP-2680 + DEVICE_VARIANT := A1 + DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct kmod-ath10k-ct + IMAGE_SIZE := 15232k + DAP_SIGNATURE := wapac36_dkbs_dap2680 +endef +TARGET_DEVICES += dlink_dap-2680-a1 + define Device/dlink_dap-2695-a1 SOC := qca9558 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct |