ath79: support for TP-Link EAP225-Outdoor v1
TP-Link EAP225-Outdoor v1 is an AC1200 (802.11ac Wave-2) pole or wall
mount access point. Debricking requires access to the serial port, which
is non-trivial.
Device specifications:
* SoC: QCA9563 @ 775MHz
* Memory: 128MiB DDR2
* Flash: 16MiB SPI-NOR
* Wireless 2.4GHz (SoC): b/g/n 2x2
* Wireless 5GHz (QCA9886): a/n/ac 2x2 MU-MIMO
* Ethernet (AR8033): 1× 1GbE, PoE
Flashing instructions:
* ssh into target device with recent (>= v1.6.0) firmware
* run `cliclientd stopcs` on target device
* upload factory image via web interface
Debricking:
To recover the device, you need access to the serial port. This requires
fine soldering to test points, or the use of probe pins.
* Open the case and solder wires to the test points: RXD, TXD and TPGND4
* Use a 3.3V UART, 115200 baud, 8n1
* Interrupt bootloader by holding ctrl+B during boot
* upload initramfs via built-in tftp client and perform sysupgrade
setenv ipaddr 192.168.1.1 # default, change as required
setenv serverip 192.168.1.10 # default, change as required
tftp 0x80800000 initramfs.bin
bootelf $fileaddr
MAC addresses:
MAC address (as on device label) is stored in device info partition at
an offset of 8 bytes. ath9k device has same address as ethernet, ath10k
uses address incremented by 1.
From stock ifconfig:
ath0 Link encap:Ethernet HWaddr D8:...:2E
ath10 Link encap:Ethernet HWaddr D8:...:2F
br0 Link encap:Ethernet HWaddr D8:...:2E
eth0 Link encap:Ethernet HWaddr D8:...:2E
Tested by forum user PolynomialDivision on firmware v1.7.0.
UART access tested by forum user arinc9.
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2020-07-07 16:04:37 +00:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
|
|
|
|
|
|
|
#include "qca9563_tplink_eap2x5-1port.dtsi"
|
|
|
|
|
|
|
|
/ {
|
|
|
|
compatible = "tplink,eap225-outdoor-v1", "qca,qca9563";
|
|
|
|
model = "TP-Link EAP225-Outdoor v1";
|
|
|
|
|
|
|
|
aliases {
|
|
|
|
led-boot = &led_status_green;
|
|
|
|
led-failsafe = &led_status_amber;
|
|
|
|
led-running = &led_status_green;
|
|
|
|
led-upgrade = &led_status_amber;
|
|
|
|
};
|
|
|
|
|
|
|
|
leds {
|
|
|
|
compatible = "gpio-leds";
|
|
|
|
|
|
|
|
led_status_green: status_green {
|
|
|
|
label = "green:status";
|
|
|
|
gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
|
|
|
|
default-state = "on";
|
|
|
|
};
|
|
|
|
|
|
|
|
led_status_amber: status_amber {
|
|
|
|
label = "amber:status";
|
|
|
|
gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
2022-06-05 10:01:51 +00:00
|
|
|
|
|
|
|
&art {
|
2023-11-09 23:18:44 +00:00
|
|
|
nvmem-layout {
|
|
|
|
compatible = "fixed-layout";
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <1>;
|
|
|
|
|
|
|
|
macaddr_info_8: macaddr@8 {
|
|
|
|
reg = <0x8 0x6>;
|
|
|
|
};
|
|
|
|
|
|
|
|
precalibration_ath10k: pre-calibration@5000 {
|
|
|
|
reg = <0x5000 0x2f20>;
|
|
|
|
};
|
2022-06-05 10:01:51 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-06-05 09:55:58 +00:00
|
|
|
ð0 {
|
|
|
|
phy-handle = <&phy4>;
|
|
|
|
phy-mode = "sgmii";
|
|
|
|
};
|
|
|
|
|
|
|
|
&mdio0 {
|
|
|
|
phy4: ethernet-phy@4 {
|
|
|
|
reg = <4>;
|
|
|
|
reset-gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-06-05 10:01:51 +00:00
|
|
|
&pcie {
|
|
|
|
wifi@0,0 {
|
|
|
|
compatible = "qcom,ath10k";
|
|
|
|
reg = <0 0 0 0 0>;
|
|
|
|
|
|
|
|
mac-address-increment = <1>;
|
|
|
|
|
2022-06-18 12:42:08 +00:00
|
|
|
nvmem-cells = <&macaddr_info_8>, <&precalibration_ath10k>;
|
|
|
|
nvmem-cell-names = "mac-address", "pre-calibration";
|
2022-06-05 10:01:51 +00:00
|
|
|
};
|
|
|
|
};
|