Software Upgrade Process

As part of software upgrade process, I need to boot a last known good version of the firmware in alternate partition if the current partition is won't boot due to any error. To switch the booking from a current partition to alternate partition or vice versa, I want to know that is there any existing implementation done in IPQ4019

Linksys EA8300 under target/linux/ipq40xx

Any such approach needs boot-loader support (which the OEM boot loader provides, in this case).

Regarding Netgear R7800 for which such OEM dual boot possibility as far as I know doesn't exist (but has a lot of flash space), can anyone estimate if this could be achieved theoretically / practically and how difficult this would be?

The problem is that doing this would require replacing the OEM u-boot (you'd have to check if the provided sources in the GPL tarball are complete/ functional - and then change/ patch it accordingly) and changing the flash partitioning, this is both dangerous (high potential for bricking the device) and wouldn't really be acceptable for adding to OpenWrt (as it would be incompatible to the real devices).

Can it be done, most probably, but you'd have to invest a significant amount of time and efforts. The nbg6817 would probably be an easier starting ground (still requiring some changes, as it does already have a dual-firmware setup, but no auto-failover).

1 Like