Is ea7300 v2 no longer supported?

From the browser I type 192.168.1.1/sysinfo.cgi and after login user=admin and pw=admin a page opens that shows a lot of info including the Linksys FW boot partition. You are correct that this info is not available from the Linksys GUI. Instead of typing 192.168.1.1 to enter the Linksys GUI, I instead type in 192.168.1.1/sysinfo.cgi to get detailed info about the OEM FW.

I have done some more searching and I found that I may have one of the particular ea7300v2 routers that require a kernel patch of the Openwrt FW.

bism

e-lisa

Jul 2023

A bug had been reported. But I wouldn't expect a prompt fixing. See here for detail
https://github.com/openwrt/openwrt/issues/12895

If you can compile the kernel, here is a not perfect but working walk-around.

drivers/mtd/ubi/build.c

static void __init ubi_auto_attach(void)
... omitted
/* check for a valid ubi magic */
if (strncmp(magic, "UBI#", 4)) {
        pr_err("UBI error: no valid UBI magic found inside mtd%d, but still try attaching...\n", mtd->index);
		/* goto cleanup; comment out to fall-through */
}
... omitted

Apparently, this patch worked for e-lisa

e-lisa

bism

Jul 2023

What a patch that is... And it works. Thank you very much!!!!

Since a patch of the Openwrt kernel is beyond my capabilities I guess that I will just have wait for a solution in the future. Thank you for your help.

Oh ? interesting. I didn't know about this one. In fact I only use Linksys OEM to perform an install of the newer OpenWrt version. I'll check when I can ("my" EA7300v2 is in a relative's home). This is worthy to be included in the wiki doc: the user is able to know in which partition OEM is running, and so how to install OpenWrt quickly. It would have spare me many hours of "try and error" when I first wanted to install OpenWrt :wink:

I've read to docs attached to the link. It is unclear if this bug occurs on every device. Because "mine" is running smoothly for 3y now. Maybe it's related to regional variations, or some hw change since (for example a nand chip).

This is the a portion of the info that displays when you enter the following into the browser:

192.168.1.1/sysinfo.cgi

7/31/24, 7:59 AM
192.168.1.1/sysinfo.cgi
page generated on Thu Oct 11 06:25:46 UTC 2012
UpTime:
06:25:46 up 26 min, load average: 0.17, 0.11, 0.17
Firmware Version: 2.0.4.208179
Firmware Builddate: 2021-08-26 05:00
Product.type: production
Linux: Linux version 2.6.36 (root@build-vm) (gcc version 4.6.3 (Buildroot 2012.11.1) ) #81 SMP Wed
Aug 25 21:20:44 PDT 2021
Board: focus
-----U-Boot Data-----
fw_printenv bootdelay: bootdelay=5
fw_printenv mtdparts:
fw_printenv bootcmd: bootcmd=tftp
fw_printenv boot_part: boot_part=2
fw_printenv auto_recovery: auto_recovery=yes
fw_printenv mtdparts_version:
All fw_printenv:
bootcmd=tftp
bootdelay=5
baudrate=115200
ethaddr="00:AA:BB:CC:DD:10"
ipaddr=192.168.1.1
serverip=192.168.1.123
auto_recovery=yes
boot_ver=0.1.8
BootType=3
boot_part_ready=3
stdin=serial
stdout=serial
stderr=serial
boot_part=2
bootargs=console=ttyS1,115200n8 root=/dev/mtdblock8 ro rootfstype=jffs2 init=/sbin/init

1 Like

I was able to modify the build.c file in the /openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-5.15.162/drivers/mtd/ubi directory and recompile and the flash to partition 1 worked. I now have a router running Openwrt.

Once I got the development environment set up, applying the patch code was easy.

Thanks for your help.

1 Like

Awesome.
It would be interesting to know why some devices have this issue, and others don't. Also notice that the link you provided is described for the EA7500v2, not 7300. Albeit these devices are surely close related. This means that no dev is aware that the patch is to apply also to the EA7300v2.

EDIT : don't forget to apply the tweak to etc/rc.local.

Thank you for reminding me about etc/rc.local thing.

| badulesia badulesia Guidance Counsellor
August 6 |

  • | - |

Awesome.
It would be interesting to know why some devices have this issue, and others don't. Also notice that the link you provided is described for the EA7500v2, not 7300. Albeit these devices are surely close related. This means that no dev is aware that the patch is to apply also to the EA7300v2.

tractorboy:

A bug had been reported. But I wouldn't expect a prompt fixing. See here for detail
https://github.com/openwrt/openwrt/issues/12895

EDIT : don't forget to apply the tweak to etc/rc.local.

1 Like

Hi.
I was able to test this myself today. I'm going to modify the wiki in order to use this. It will simplify the installation. Thank you.

I've also read this on the wiki page, but it's untrue for me. I'm using this device for quite some time and did every upgrade with a sysupgrade. Latetly even with Attended Sysupgrade. Could you elaborate on this issue? Did I just have luck everytime?

Hi.
Assuming we start with OpenWrt on partition 1. If you flash a factory or sysupgrade, it will be stored on partition 2. After 3 reboots, the bootloader will refuse to boot this partition 2 and select partition 1. It will no longer use the right OS.

Only partition 1 can sustain a usable OpenWrt. To upgrade, you must return to Linksys on partition 2, flash a newer factory image of OpenWrt on partition 1. It's the only way to obtain a stable system.

So, you may have flashed a sysupgrade image. It succedded in flashing, and you use the new system, but did you reboot the device several times ? At least 3 times ? You will notice than the device reboots mandatory on partition 1.

Well, as stated in the docs, I have added the following startup script:

/rom/sbin/mtd unlock s_env
/rom/sbin/mtd erase s_env

After that, no issues regarding booting/bootcount.

It succedded in flashing, and you use the new system, but did you reboot the device several times ? At least 3 times

Yep, I reboot the device every night without issues.

In that case it sounds interesting. You have gone further of what I have dared with this device.
So can you confirm that :

  • OpenWrt is installed on both partitions
  • The device can boot safely on each partitions.
  • The device reboots the same partition when rebooting.

For info, a couple of years ago a PR has been submitted to solve the boot issue. But it was never merged.

PS : I wrote the docs :wink: Maybe you'd like to add some extra infos regarding your experience.

OpenWrt is installed on both partitions

I don't think that's the case. I followed the installation instructions on the wiki, which indicate that OpenWrt is installed on partition 2, while the Linksys OEM firmware is on partition 1.

The device can boot safely on each partitions.

It appears that it can. It definitely boots to partition 2 with the startup script, which resets the boot counter. I've also seen it boot the Linksys OEM without the startup script after three reboots.

The device reboots the same partition when rebooting.

Yes, it does, with the startup script in place.

1 Like

Ok, all this is interesting. It means that OpenWrt boots on partition 2, with the script. I must confess that I tested the partition discrimination without the script: hence OpenWrt is to be installed on partition 1, with the script.
So to summarize, it can also be installed on partition 2, with the script.

Last question : if you perform a sysupgrade, which partition is written? the same, of the other?

The same partition is written when doing a sysupgrade.

1 Like

Ok all this sounds interesting. Problem is that "my" device is in production in a relative's home. Honestly I don't dare trying. I'll see if I can borrow the device in exchange of another. Thank you for all these infos.

Recently, I was able to purchase a gently used Linksys EA7300V1 for less than $10. It's such a sweet hardware for that price, and so couldn't let it pass. Thanks to all the helpful information on the wiki and these forums, I was able to install OpenWrt on the router. This is what I did:

  • The OEM firmware was booting from partition 1 when I started. Flashed the OEM image once again to boot from partition 2.
  • Installed the latest stable OpenWrt factory image for this router onto partition 1 which worked fine.
  • Ran into random boot issues where the router wouldn't come up. Then read more about the need to clear the boot counter fw env vars. Added those commands to /etc/rc.local as suggested in the wiki.

Now, I was reading this thread and I am also interested in getting OpenWrt booting from partition 2 so that I can use sysupgrade images moving forward. @binarious @badulesia - Could you recommend how we can do that? As I understand, for this to work the firmware image should have the commands to reset the boot counter fw env vars, but it possibly doesn't?? How do you work around that and still get OpenWrt booting and running successfully from partition 2?

Hi.
First notice than this thread and all info I may have written apply to V2, not V1. Althought both devices are surely extremly close, I'm not sure about real HW and SW differences.

I didn't go any further than installing OpenWrt on partition 1. As far as I remember, flashing on partition 2 succeed, but boot doesn't. The bootlader declares the boot false, three times, and return to partition 1. So I wasn't to boot OpenWrt from partition 2. But, when doing so I always started from a Linksys OEM on partition 1. I didn't test flashing from OpenWrt on partition 1. It took me so many time to test and understand that I didn't dare going further, risking to brick this capricious device.

What you may try is to install OpenWrt on partition 1 and apply the patch (you've already done).
sysupgrade another version of OpenWrt (for example 23.05.4) and check the version at reboot. If success apply the patch and reboot several times. Check that you are still in the right partition. Than change the booting partition with luci-app-advanced-reboot, and reboot several times.

This will not work with many of the linksys devices. In general unless the install instructions on the openwrt site for the devices that have a split partition system specifically say the device can boot OpenWRT from either partition, and openwrt can be flashed to both partitions, and the luci selector can be used on that device to switch between partitions - then no matter what you try, it's only going to flash openwrt to partition 1

Yes, I agree there are some differences between V1 and V2 for sure (not sure what exactly they are). I did use the v1 openwrt images for flashing. Otherwise, the steps appear to be identical in my limited experience and understanding so far.

I too don't want to permanently brick this unit. As I intend to use this as a dumb ethernet bridged AP connected to my main router, use the ports on the router as a managed switch to tag different VLANs against the ports and WiFi.

I am personally happy with this version of OpenWrt which meets all my current requirements. So I might just stick with whatever is working right now and worry about future upgrades later.

Thanks everyone!

I wrote these instructions for the EA7300v2 :wink: As I stated I didn't go further than installing on partition 1. I was only suggesting possible ways to go further. What we do need is someone trying to install and boot on partition 2, if necessary by finding how to tweak the bootloader. In final, If it can't be done, as far as OpenWrt runs on partition1, it suits me.