tn3399_openwrt/tools
Sander Vanheule b11ad48764 ath79: support for TP-Link EAP245 v1
TP-Link EAP245 v1 is an AC1750 (802.11ac Wave-1) ceiling mount access point.

Device specifications:
* SoC: QCA9563 @ 775MHz
* RAM: 128MiB DDR2
* Flash: 16MiB SPI-NOR
* Wireless 2.4GHz (SoC): b/g/n, 3x3
* Wireless 5Ghz (QCA9880): a/n/ac, 3x3
* Ethernet (AR8033): 1× 1GbE, 802.3at PoE

Flashing instructions:
* Upgrade the device to firmware v1.4.0 if necessary
* Exploit the user management page in the web interface to start telnetd
  by changing the username to `;/usr/sbin/telnetd -l/bin/sh&`.
* Immediately change the malformed username back to something valid
  (e.g. 'admin') to make ssh work again.
* Use the root shell via telnet to make /tmp world writeable (chmod 777)
* Extract /usr/bin/uclited from the device via ssh and apply the binary
  patch listed below. The patch is required to prevent `uclited -u` in
  the last step from crashing.
* Copy the patched uclited programme back to the device at /tmp/uclited
  (via ssh)
* Upload the factory image to /tmp/upgrade.bin (via ssh)
* Run `chmod +x /tmp/uclited && /tmp/uclited -u` to install OpenWrt.

    --- xxd uclited
    +++ xxd uclited-patched
    @@ -53796,7 +53796,7 @@
     000d2240: 8c44 0000 0320 f809 0000 0000 8fbc 0010  .D... ..........
     000d2250: 8fa6 0a4c 02c0 2821 8f82 87b8 0000 0000  ...L..(!........
    -000d2260: 8c44 0000 0c13 45e0 27a7 0018 8fbc 0010  .D....E.'.......
    +000d2260: 8c44 0000 2402 0000 0000 0000 8fbc 0010  .D..$...........
     000d2270: 1040 001d 0000 1821 8f99 8374 3c04 0058  .@.....!...t<..X
     000d2280: 3c05 0056 2484 a898 24a5 9a30 0320 f809  <..V$...$..0. ..

Debricking:
* Serial port can be soldered on PCB J3 (1: TXD, 2: RXD, 3: GND, 4: VCC)
    * Bridge unpopulated resistors R225 (TXD) and R237 (RXD).
      Do NOT bridge R230.
    * Use 3.3V, 115200 baud, 8n1
* Interrupt bootloader by holding CTRL+B during boot
* tftp initramfs to flash via the LuCI web interface
    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

Tested on the EAP245 v1 running the latest firmware (v1.4.0). The binary
patch might not apply to uclited from other firmware versions.

EAP245 v1 device support was originally developed and maintained by
Julien Dusser out-of-tree. This patch and "ath79: prepare for 1-port
TP-Link EAP2x5 devices" are based on that work.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2020-11-23 22:53:15 +01:00
..
autoconf treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
autoconf-archive tools: add autoconf-archive 2020-05-20 15:37:16 +02:00
automake tools/automake: Revert "Do not use $(V) - force AM_V=1" 2019-11-06 00:21:15 +01:00
b43-tools tools/b43-tools/b43-fwsquash: convert to Python 3 with 2-to-3 2019-07-26 08:09:16 +02:00
bc tools/bc: use autoreconf to fix build failure on macOS with recent Xcode versions 2020-11-14 14:48:30 +01:00
bison tools/bison: update to 3.7.4 2020-11-21 18:49:08 +01:00
cbootimage tools: add cbootimage for tegra 2019-04-06 14:48:46 +02:00
cbootimage-configs tools: add cbootimage-configs for tegra 2019-04-06 14:48:46 +02:00
ccache tools/ccache: update to 3.7.11 2020-08-23 19:40:51 +02:00
cmake tools/cmake: update to 3.18.5 2020-11-21 18:48:59 +01:00
coreutils tools/coreutils: update to 8.32 2020-08-30 22:21:34 +02:00
dosfstools add PKG_CPE_ID ids to package and tools 2017-11-17 02:24:35 +01:00
e2fsprogs tools/e2fsprogs: fix build under macos 2020-04-10 11:52:00 +01:00
elftosb treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
expat tools/expat: update to 2.2.10 2020-11-21 18:48:39 +01:00
fakeroot tools/fakeroot: fix build on macOS with recent Xcode versions 2020-11-14 14:48:30 +01:00
findutils tools/findutils: Update to 4.7.0 2020-04-09 22:08:38 +02:00
firmware-utils ath79: support for TP-Link EAP245 v1 2020-11-23 22:53:15 +01:00
flex flex: Add a lex symlink 2018-11-25 19:23:03 +01:00
flock tools/flock: add PKG_{VERSION,RELEASE} 2020-07-23 11:30:22 +02:00
genext2fs treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
gengetopt tools/gengetopt: Update to 2.23 2019-07-08 16:42:26 +02:00
gmp tools/gmp: update to 6.2.1 2020-11-21 18:49:17 +01:00
include build: fix kernel 5.4 on macos 2020-03-14 13:20:06 +00:00
isl tools/isl: update to 0.20 2019-02-26 23:20:04 +01:00
kernel2minor tools: kernel2minor: update to latest version 2018-07-12 18:15:33 +02:00
libelf tools/libelf: use autoreconf to fix build failure on macOS with recent Xcode versions 2020-11-14 14:48:30 +01:00
libressl tools/libressl: update to 3.2.1 2020-09-18 20:08:51 +02:00
libtool add PKG_CPE_ID ids to package and tools 2017-11-17 02:24:35 +01:00
lzma treewide: https for downloads.openwrt.org sources 2020-08-31 11:26:10 +01:00
lzma-old treewide: https for downloads.openwrt.org sources 2020-08-31 11:26:10 +01:00
m4 tools: m4: fix compilation with glibc 2.28 2018-08-10 06:29:32 +02:00
make-ext4fs make_ext4fs: Update to version 2020-01-05 2020-01-05 20:04:37 +01:00
missing-macros treewide: remove empty default cases 2020-09-17 12:46:19 +02:00
mkimage tools/mkimage: create .itb file with read-access for group,other not just owner. 2020-07-23 14:25:10 -04:00
mklibs tools/mklibs: update to 0.1.44 and convert to Python 3 2019-07-26 23:50:21 +02:00
mm-macros tools/mm-macros: Update to 1.0.0 2020-04-09 22:09:21 +02:00
mpc tools/mpc: update to 1.2.1 2020-11-21 18:49:27 +01:00
mpfr tools/mpfr: update to 4.1.0 2020-08-23 19:40:32 +02:00
mtd-utils tools: mtd-utils: Update to version 2.1.2 2020-08-26 23:29:35 +02:00
mtools tools/mtools: Update to 4.0.24 2020-04-09 22:09:04 +02:00
padjffs2 tools: drop PKG_VERSION for purely local packages 2020-07-23 10:54:33 +02:00
patch tools/patch: apply upstream patch for cve-2019-13638 2019-08-13 10:00:10 +02:00
patch-image rb532: drop target 2020-09-02 16:29:22 +02:00
patchelf tools/patchelf: Update to 0.10 2020-02-18 21:39:03 +01:00
pkgconf pkgconf: always retain -I and -L flags 2020-03-15 20:32:10 +01:00
qemu tools: qemu: Add patches to support adapter_type and monolithicFlat 2019-12-23 00:22:06 +01:00
quilt tools/quilt: update to 0.66 2019-11-24 21:35:45 +01:00
sdimage tools/sdimage: Fix build with host Linux headers < 3.18 2018-12-16 14:03:35 +01:00
sed tools/sed: Update to 4.8 2020-02-18 21:39:14 +01:00
sparse sparse: updated to version 0.5.2 2018-06-08 09:56:26 +02:00
squashfs squashfs: Fix compile with GCC 10 2020-05-24 14:38:40 +02:00
squashfskit4 tools/squashfskit4: fix build on non-linux systems 2020-09-01 17:01:56 +02:00
sstrip tools/sstrip: add PKG_{VERSION,RELEASE} 2020-07-23 11:30:14 +02:00
tar tools: tar: update to version 1.32 2019-03-10 21:36:28 +01:00
xz tools/xz: Update to 5.2.5 2020-04-09 22:09:13 +02:00
zip tools: zip: add option for reproducible archives 2019-01-15 19:11:53 +01:00
zlib tools: zlib: do not hardcode the install prefix in zlib.pc 2018-05-24 17:07:10 +02:00
zstd tools: add zstd 2020-05-31 11:03:30 +02:00
Makefile tools/bc: use autoreconf to fix build failure on macOS with recent Xcode versions 2020-11-14 14:48:30 +01:00