Linksys EA9500, boot loop issue

I got this Linksys EA9500EU router, looks cool, but it got into reboot loops on both bootpartitions.
I flashed the latest factory firmware in CFE but the issue still persist.
I tried latest Openwrt, but it's not fully functional, a lot of partially supported features.
after some debugging on the serial console.
I noticed that the wl.ko driver is what causes a kernel panic, so it keeps rebooting.
I downloaded the latest Factory firmware img which is encrypted with gpg.
I found an old firmware that was not encrypted, ubpacked it with binwalk, it turns out the encryption key exists there, imported it and used it to decrypt the latest img successfully.

gpg --import _FW_EA9500_1.1.6.173418_prod.img.extracted/squashfs-root/etc/keydata
gpg --decrypt FW_EA9500_1.1.9.210876_prod.gpg.img > FW_EA9500_1.1.9.210876_prod.img

then I unpacked it with firmware-mod-kit, can be found on github.
I then commented a line in /rootfs/etc/system/wait
#insmod $MODULE_PATH/wl.ko instance_base=3
repacked the firmware and flashed it, the router now boots but without a wifi. and the serial console logs:
wl: wl driver adapter not found

After boot I tried to insert the wl.ko driver manually again and it crashed immediately.
so it must be the issue.
Is it possible to fix wl.ko or is it a hardware issue?
currently running FW_EA9500_1.1.9.210876_prod.img with wl.ko disabled.

If you're looking for help (be aware that bcm53xx is not very popular among OpenWrt users and developers), brcmfmac would be the only way forward. Neither broadcom-wl nor binary kernel modules extracted out of the OEM firmware will get any attention.

bcm53xx is an 'exotic' target within the OpenWrt ecosystem, with rather basic support and only little developer time available for it.

1 Like

Thanks, two wifi bands work now. even without wl.ko not sure what's broken yet.

A debugging session with Linksys tech service online discovered that the 12V adaptor from aliexpress was high enough (12.4V) to cause the boot loop. Using the adaptor supplied in the case (12.2V) ended the boot loops. This was found while trying to pair an E8450 with an E7350.

1 Like