I recently tried to upgrade my TP-Link 810N v1.1 (EU) from the 18.06 branch to 19.07.0-rc1. As I understand ar71xx won't be supported much longer and therefore I wanted to switch to ath79. The device name changed in ath79 so I had to force the upgrade to make it work.
At first it seemed fine, but it didn't boot properly and was softbricked as a result. After the tedious process of opening that device and getting serial access, my suspicions were confirmed as it was stuck in a bootloop caused by kernel panic.
I tried flashing a known working image using TFTP recovery, but didn't succeed. Eventually, I was only able to restore to OEM firmware using TFTP and serial. After that I flashed the 19.07.0-rc1 default image for ar71xx target and it worked fine.
Then again tried the latest snapshot image for ath79 resulting in bootloop.
So it seems to me that there is some issue with the current ath79 images for this device.
Didn't find any information regarding switching to ath79 or known bugs for this particular device, hence I'm writing this.
bootlog
U-Boot 1.1.4 (Sep 18 2015 - 11:52:31)
ap143-2.0 - Honey Bee 2.0
DRAM: 64 MB
Flash Manuf Id 0xef, DeviceId0 0x40, DeviceId1 0x17
flash size 8MB, sector count = 128
Flash: 8 MB
Using default environment
In: serial
Out: serial
Err: serial
Net: ath_gmac_enet_initialize...
ath_gmac_enet_initialize: reset mask:c02200
Scorpion ---->S27 PHY*
S27 reg init
: cfg1 0x800c0000 cfg2 0x7114
eth0: ba:be:fa:ce:08:41
athrs27_phy_setup ATHR_PHY_CONTROL 4 :1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 4 :10
eth0 up
Honey Bee ----> MAC 1 S27 PHY *
S27 reg init
ATHRS27: resetting s27
ATHRS27: s27 reset done
: cfg1 0x800c0000 cfg2 0x7214
eth1: ba:be:fa:ce:08:41
athrs27_phy_setup ATHR_PHY_CONTROL 0 :1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 0 :10
athrs27_phy_setup ATHR_PHY_CONTROL 1 :1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 1 :10
athrs27_phy_setup ATHR_PHY_CONTROL 2 :1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 2 :10
athrs27_phy_setup ATHR_PHY_CONTROL 3 :1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 3 :10
eth1 up
eth0, eth1
Setting 0x181162c0 to 0x60c1a100
is_auto_upload_firmware=0
Autobooting in 1 seconds
## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK
Starting kernel ...
[ 0.000000] Linux version 4.19.81 (builder@buildhost) (gcc version 8.3.0 (OpenWrt GCC 8.3.0 r11473-5dc535419f)) #0 Sun Nov 10 23:33:34 2019
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU0 revision is: 00019374 (MIPS 24Kc)
[ 0.000000] MIPS: machine is TP-Link TL-WR810N v1
[ 0.000000] SoC: Qualcomm Atheros QCA9533 ver 2 rev 0
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 04000000 @ 00000000 (usable)
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] random: get_random_bytes called from start_kernel+0x98/0x4b0 with crng_init=0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 16240
[ 0.000000] Kernel command line: console=ttyS0,115200n8 rootfstype=squashfs,jffs2
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] Memory: 57252K/65536K available (4507K kernel code, 184K rwdata, 1056K rodata, 1220K init, 213K bss, 8284K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS: 51
[ 0.000000] CPU clock: 650.000 MHz
[ 0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 5880801374 ns
[ 0.000010] sched_clock: 32 bits at 325MHz, resolution 3ns, wraps every 6607641598ns
[ 0.008273] Calibrating delay loop... 432.53 BogoMIPS (lpj=2162688)
[ 0.074874] pid_max: default: 32768 minimum: 301
[ 0.080023] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.086996] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.100086] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.110544] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.117167] pinctrl core: initialized pinctrl subsystem
[ 0.126098] NET: Registered protocol family 16
[ 0.169596] clocksource: Switched to clocksource MIPS
[ 0.176430] NET: Registered protocol family 2
[ 0.182227] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
[ 0.190444] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.197804] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.204546] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.211461] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.217645] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.224765] NET: Registered protocol family 1
[ 0.233713] Crashlog allocated RAM at address 0x3f00000
[ 0.241412] workingset: timestamp_bits=14 max_order=14 bucket_order=0
[ 0.256399] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.262621] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.290458] io scheduler noop registered
[ 0.294599] io scheduler deadline registered (default)
[ 0.301134] ar7200-usb-phy 18030000.usb-phy: phy reset is missing
[ 0.309928] pinctrl-single 1804002c.pinmux: 576 pins, size 72
[ 0.317226] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.326870] console [ttyS0] disabled
[ 0.330766] 18020000.uart: ttyS0 at MMIO 0x18020000 (irq = 9, base_baud = 1562500) is a 16550A
[ 0.339893] console [ttyS0] enabled
[ 0.339893] console [ttyS0] enabled
[ 0.347444] bootconsole [early0] disabled
[ 0.347444] bootconsole [early0] disabled
[ 0.369843] m25p80 spi0.0: unrecognized JEDEC id bytes: 00, 00, 00
[ 0.376286] m25p80: probe of spi0.0 failed with error -2
[ 0.383210] libphy: Fixed MDIO Bus: probed
[ 0.391624] ag71xx 19000000.eth: invalid MAC address, using random address
[ 0.730702] ag71xx 19000000.eth: Could not connect to PHY device. Deferring probe.
[ 0.738880] ag71xx 1a000000.eth: invalid MAC address, using random address
[ 1.420059] libphy: ag71xx_mdio: probed
[ 1.425546] libphy: ar8xxx-mdio: probed
[ 1.436088] switch0: Atheros AR8229 rev. 1 switch registered on mdio-bus.0
[ 1.491508] ag71xx 1a000000.eth: connected to PHY at fixed-0:00 [uid=00000000, driver=Generic PHY]
[ 1.501638] eth0: Atheros AG71xx at 0xba000000, irq 5, mode: gmii
[ 1.510926] NET: Registered protocol family 10
[ 1.522843] Segment Routing with IPv6
[ 1.526769] NET: Registered protocol family 17
[ 1.531583] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 1.544994] 8021q: 802.1Q VLAN Support v1.8
[ 1.551369] ag71xx 19000000.eth: invalid MAC address, using random address
[ 1.891925] ag71xx 19000000.eth: connected to PHY at mdio-bus.0:1f:04 [uid=004dd042, driver=Generic PHY]
[ 1.902933] eth1: Atheros AG71xx at 0xb9000000, irq 4, mode: mii
[ 1.910468] hctosys: unable to open rtc device (rtc0)
[ 1.917102] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[ 1.924927] Please append a correct "root=" boot option; here are the available partitions:
[ 1.933587] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 1.942812] Rebooting in 1 seconds..