Redmi AC2100 Firmware Structure


I post here because it seems a better place :

Can anybody reveal the reason why the Redmi Router AC2100 has two files for its firmware, a kernel one and a root one, and not a unified one as usual ?



as it is explained here:

3. Flash the kernel
mtd write openwrt-21.02.0-ramips-mt7621-xiaomi_redmi-router-ac2100-squashfs-kernel1.bin kernel1

4. Flash the rootfs
mtd -r write openwrt-21.02.0-ramips-mt7621-xiaomi_redmi-router-ac2100-squashfs-rootfs0.bin rootfs0


I read almost all the topic about this routeur.

Nowhere it is said the reason why there is two firmwares.

As my question is precise, not about how to flash this two firmwares, and in which order, I need a simple technical answer to comprehend the way its runs.

One firmware (.bin, .trx, ...) is enough most of the times.
In this case, two are provided.
Why ?
A compilation limitation ?
What else ?


If you read link i posted, you will see that there is no "easy" way of install OWRT
you need web exploit, ssh, setting nvram, manual flashing

so this is a reason why 2 file for FIRST flash

upgrade is "normal" one file procedure


I read the post already, as i told you.

The fact you need web exploit, manual flashing, doesn't explain why we need two firmwares.

Sysugrade is to upgrade the openWRT one, as it says by itself.
There is no factory firmware, just an init one, used to flash the sysupgrade one.

Why can't we inject directly a factory one ?
To overrun which limitation, once the web exploit has suceeded ?

That's what I want to know.