Openwrt/tools/firmware-utils/src
Sander Vanheule 9dd4ba3d7e ath79: add support for TP-Link EAP245-v3
TP-Link EAP245 v3 is an AC1750 (802.11ac Wave-2) ceiling mount access
point. UART access (for debricking) requires non-trivial soldering.

Specifications:
* SoC: QCA9563 (CPU/DDR/AHB @ 775/650/258 MHz)
* RAM: 128MiB
* Flash: 16MiB SPI-NOR
* Wireless 2.4GHz (SoC): b/g/n 3x3
* Wireless 5GHz (QCA9982): a/n/ac 3x3 with MU-MIMO
* Ethernet (QCA8337N switch): 2× 1GbE, ETH1 (802.3at PoE) and ETH2
* Green and amber status LEDs
* Reset switch (GPIO, available for failsafe)

Flashing instructions:
All recent firmware versions (latest is 2.20.0), can disable firmware
signature verification and use a padded firmware file to flash OpenWrt:
* ssh into target device and run `cliclientd stopcs`
* upload factory image via web interface

The stopcs-method is supported from firmware version 2.3.0. Earlier
versions need to be upgraded to a newer stock version before flashing
OpenWrt.

Factory images for these devices are RSA signed by TP-Link. While the
signature verification can be disabled, the factory image still needs to
have a (fake) 1024 bit signature added to pass file checks.

Debricking instructions:
You can recover using u-boot via the serial port:
* Serial port is available from J3 (1:TX, 2:RX, 3:GND, 4:3.3V)
* Bridge R237 to connect RX, located next to J3
* Bridge R225 to connect TX, located inside can on back-side of board
* Serial port is 115200 baud, 8n1, interrupt u-boot by holding ctrl+B
* Upload initramfs with tftp and upgrade via OpenWrt

Device mac addresses:
Stock firmware has the same mac address for 2.4GHz wireless and
ethernet, 5GHz is incremented by one. The base mac address is stored in
the 'default-mac' partition (offset 0x90000) at an offset of 8 bytes.
ART blobs contain no mac addresses.
From OEM ifconfig:
    ath0      Link encap:Ethernet  HWaddr 74:..:E2
    ath10     Link encap:Ethernet  HWaddr 74:..:E3
    br0       Link encap:Ethernet  HWaddr 74:..:E2
    eth0      Link encap:Ethernet  HWaddr 74:..:E2

Signed-off-by: Sander Vanheule <sander@svanheule.net>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-09-09 20:42:10 +03:00
..
add_header.c
addpattern.c tools/firmware-utils: use UTC for image timestamps 2020-08-07 09:48:33 +02:00
asustrx.c
bcm_tag.h
bcmalgo.c
bcmalgo.h
buffalo-enc.c
buffalo-lib.c
buffalo-lib.h
buffalo-tag.c
buffalo-tftp.c
csysimg.h
cyg_crc16.c
cyg_crc32.c
cyg_crc.h
dgfirmware.c
dgn3500sum.c
dns313-header.c
edimax_fw_header.c
encode_crc.c
fix-u-media-header.c
fw.h firmware-utils: mkfwimage: fix memcpy and strncpy usage 2020-07-11 13:33:28 +02:00
hcsmakeimage.c
imagetag_cmdline.c
imagetag_cmdline.h
imagetag.c
imagetag.ggo
jcgimage.c
lxlfw.c
lzma2eva.c
makeamitbin.c
md5.c
md5.h
mkbrncmdline.c
mkbrnimg.c
mkbuffaloimg.c
mkcameofw.c
mkcasfw.c
mkchkimg.c
mkcsysimg.c
mkdapimg2.c
mkdapimg.c
mkdhpimg.c
mkdlinkfw-lib.c
mkdlinkfw-lib.h
mkdlinkfw.c
mkdniimg.c
mkedimaximg.c
mkfwimage2.c
mkfwimage.c firmware-utils: mkfwimage: fix memcpy and strncpy usage 2020-07-11 13:33:28 +02:00
mkheader_gemtek.c
mkhilinkfw.c
mkmerakifw-old.c
mkmerakifw.c
mkmylofw.c
mkplanexfw.c
mkporayfw.c
mkrasimage.c
mkrtn56uimg.c
mksenaofw.c
mksercommfw.c
mktitanimg.c
mktitanimg.h
mktplinkfw2.c ramips: fix/tidy up 4M tplink-v2-image flash layouts 2020-08-03 12:17:08 +02:00
mktplinkfw-lib.c
mktplinkfw-lib.h
mktplinkfw.c
mkwrggimg.c
mkwrgimg.c
mkzcfw.c
mkzynfw.c
motorola-bin.c
myloader.h
nand_ecc.c
nec-enc.c
osbridge-crc.c
oseama.c
otrx.c
pc1crypt.c
ptgen.c firmware-utils/ptgen: allow explicit placement of partitions 2020-07-08 23:22:30 +02:00
seama.c
seama.h
sha1.c
sha1.h
spw303v.c
srec2bin.c
tplink-safeloader.c ath79: add support for TP-Link EAP245-v3 2020-09-09 20:42:10 +03:00
trx2edips.c
trx2usr.c
trx.c
uimage_padhdr.c
utils.h firmware-utils: mkfwimage: fix memcpy and strncpy usage 2020-07-11 13:33:28 +02:00
wrt400n.c
xorimage.c
zyimage.c
zynos.h
zyxbcm.c