openwrt/target/linux
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
..
apm821xx kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
arc770 arc770: drop support for kernel 4.14 2020-09-02 16:29:22 +02:00
archs38 treewide: use wpad-basic-wolfssl as default 2020-08-20 14:19:39 +02:00
armvirt kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
at91 at91: explicitly set CONFIG_USB_SUPPORT for sam9x subtarget 2020-08-27 16:36:18 +02:00
ath25 ath25: fix preinit Ethernet port configuration 2020-09-10 18:52:15 +02:00
ath79 ath79: support for TP-Link EAP245 v1 2020-11-23 22:53:15 +01:00
bcm27xx kernel: bump 5.4 to 5.4.77 2020-11-18 21:13:46 +01:00
bcm47xx kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
bcm53xx kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
bcm63xx bcm63xx: reorganize board patches into fewer files 2020-10-26 23:48:08 +01:00
gemini kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
generic kernel: mtd: parser: cmdline: Fix parsing of part-names with colons 2020-11-23 22:53:15 +01:00
imx6 kernel: bump 5.4 to 5.4.77 2020-11-18 21:13:46 +01:00
ipq40xx ipq40xx: DTS style updates for OpenMesh devices 2020-11-23 13:44:47 +01:00
ipq806x kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
ipq807x kernel: unify CONFIG_GPIO_SYSFS in kernel configs 2020-08-06 12:37:04 +02:00
kirkwood target: update SPDX license names 2020-09-22 20:58:26 +02:00
lantiq kernel: bump 5.4 to 5.4.73 2020-11-01 14:44:06 +01:00
layerscape layerscape: enable spi-uart in LS1012A-FRDM 2020-11-23 22:53:15 +01:00
malta kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
mediatek kernel: bump 5.4 to 5.4.77 2020-11-18 21:13:46 +01:00
mpc85xx kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
mvebu mvebu: add initial support for Globalscale ESPRESSObin-Ultra 2020-11-23 22:53:15 +01:00
mxs treewide: make dependency on kmod-usb-net selective 2020-08-10 12:54:30 +02:00
octeon kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
octeontx kernel: move F2FS_FS_XATTR and F2FS_STAT_FS symbols to generic 2020-10-09 23:20:19 +01:00
omap kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
oxnas kernel: bump 5.4 to 5.4.75 2020-11-10 13:11:32 +01:00
pistachio kernel: bump 5.4 to 5.4.77 2020-11-18 21:13:46 +01:00
ramips ramips: phy: at803x: Select SFP interface mode that both sides supports. 2020-11-23 22:53:15 +01:00
rockchip rockchip: remove unused config symbols 2020-11-04 23:58:27 +01:00
rtl838x rtl838x: Add switch and ethernet driver support for RTL839x SoCs 2020-11-12 18:21:55 +01:00
sunxi sunxi: add support for Libre Computer ALL-H3-CC H5 2020-11-12 18:21:17 +01:00
tegra kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
uml kernel: bump 5.4 to 5.4.71 2020-10-15 17:46:54 +02:00
x86 x86: generic: disable CONFIG_EFI_VARS 2020-11-12 18:21:55 +01:00
zynq kernel: remove support for kernel 4.19 2020-10-30 19:29:59 +01:00
Makefile build: add 'make kernel_xconfig' command 2020-07-08 16:07:05 +02:00