If you're reading this, I'm assuming you've got a challenge in front of you, so here's a table of contents
Managing Dual-Boot Firmware
The U-Boot environment variable
boot_part is what primarily determines which of the two firmware sections will be used for boot.
sysupgrade (either over the command line or LuCI) or the OEM firmware flashes a new image, it flashes the "other" one and changes
boot_part to boot from the new image next.
After three "failed" boots, U-Boot will try the "other" one from what it was without user action.
This is one way to switch firmware, especially from a box that is hanging before a console is responding. Powering-off the EA8300 before the LINKSYS light goes on solid white (will usually work even before the "failsafe" flashing starts) will almost always go against the "three, bad boots" counter.
With SSH access to the device,
fw_setenv boot_part 1 or the like can be used.
shows which MTD partition is associated with /dev/ubi0, which should be
There is a LuCI module for switching, but at this time it does not support the EA8300.
It might be a good "first project" to add the EA8300 to
Switch Configuration Ignores VLANs
The IPQ40xx chips have a unique take on things. "Normal" VLAN config will be seemingly ignored by the device.
On my list to determine the scope of what does work with these devices.
First Flash of OpenWrt Was Smooth, Now the Second One Hangs Forever
Prior to July, 2019, the OpenWrt EA8300 firmware would fail to sysupgrade (or through LuCI) over existing OEM firmware.
First, get back to the "good" version of OpenWrt. Powering off the "hung" boot three times should get you there.
For now, instructions are at