Add Support for Linksys EA7300 V2

Most of this is over my head but when doing pre-purchase research, I was looking at different u-boot setups. The Xiaomi Mi Router 4A thread may be helpful. I think most boot loader partitions are mounted read only. In that thread, initial access to the boot loader was gained by copying the partition, using a hex editor to change the boot delay and then using mtd to overwrite the partition. A backup of the original, unedited boot partition would be prudent.
https://forum.openwrt.org/t/xiaomi-mi-router-4a-gigabit-edition-r4ag-r4a-gigabit-fully-supported-and-flashable-with-openwrtinvasion/36685
I've seen this likened to a nuclear option and it is considered risky.

u_env needs to be writable (not read-only;) for this to work.

Yep, that's it - good catch! I confirmed, on my ea3500 (dual partition), in target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts

                partition@80000 {
                        label = "u_env";
                        reg = <0x80000 0x4000>;
                };

Hmmm ... how to make it rw (not bootloader, u-env), so I can get back to this working (to be able to boot correctly).

Thanks again.

You remove the read-only; attribute (line 93) for u_env from your DTS and build OpenWrt that way (and provide a tested patch afterwards).

--
Using kmod-mtd-rw might ease up initial testing.

1 Like

Yes, sorry - I wasn't very clear. I meant because it was in the router as read-only, I wasn't sure how to get back to OEM to re-flash. I got back though with 3x power cycles, then re-flashed with read-only removed. Now I can use advanced reboot, selectively go back and forth between partitions. Perfect - thanks!

Now, to figure out why sysupgrade isn't writing to the alternative partition. Hmmm.

I have a Linksys EA7300, I did the update to OpenWRT, however in partition B it continues in OEM and every time the router is turned off and on it starts up with partition B OEM. Could you please help me.

I had similar problems and ended up doing the 3 hard resets. Since, I have been able to power-off, one time, and it booted OpenWrt.

See the commit:

https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=620f9c773413a0deaeda2bdc22d5e9cb89b9317f

I haven't understood the flashing instruction in git.
Anybody can better explain the meaning of
When flashing, OEM firmware writes over the non-booted partition. If booted from 'A', flashing over 'B' won't work. To get around this, you should flash the OEM image over itself. This will then boot the router from 'B' and allow you to flash OpenWRT without problems
I'm not sure about the sequence of operations.

FYI - I have created a devicepage for the EA7300 v2. Feel free to add any information there which could be helpfull for other users! :slight_smile:

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.