jklap wrote:leitec wrote:Right now OpenWrt isn't doing anything with the actual "auto recovery" process, by which I mean it doesn't update the other variables that I think are necessary for that to work properly. I believe the factory firmware updates badcount, boot_part_ready and probably more variables that the "auto_recovery" process then uses to determine if it should boot from the other partition instead. As far as I know Linksys never released the WRT1900AC's u-boot source, so I can't tell what it actually is doing.
Anyone got a contact with LinkSys that can put some pressure on them to release the u-boot source? It would be nice if we could back-port some of the more recent changes to support flashing from a usb drive (for example).
Kaloz said a while back he was trying to get them to release the source.
If I'm not mistaking it with another device you can already boot from USB. I don't recall the exact steps but you can use the 'usb' command to start it and the various fat/ext2 commands to load whatever file you want to boot from.
Edit: I forgot to add before that the Linksys EA4500 does have published u-boot source, including both Linksys and Marvell's changes. Linksys also uses the dual firmware thing there so you might get some mileage out of reading that source code.
That said, last time I talked to Kaloz about this (months ago) he wasn't too keen on spending time trying to work in a system that isn't all that great at preventing bricking. Getting actual source for u-boot would mean we'd have the ability to chainload a custom u-boot, where you could add real recovery and do away with the dual firmware thing altogether. Such is done on some other targets (kirkwood, for example).
Other boards with u-boot have real recovery mechanisms, like a TFTP or web server you can connect to and upload a working image, rather than banking on the possibility that the second image is working.
(Last edited by leitec on 15 Apr 2015, 22:17)