A large part of those partitions are the equivalent of the CMOS BIOS of a PC. Imagine if the PC did not have a BIOS to create a uniform boot environment via a specification. Several things would occur:
- The motherboard would be cheaper; it wouldn’t need the CMOS BIOS process or other BIOS hardware.
- When flashing or installing one would have to flash the BIOS too since this more or less becomes part of booting rather than part of firmware and hardware.
- You would need a recovery mode to allow programming since there is no self-contained operating environment capable of self-flash.
- The board could no longer be “bricked”; a motherboard must have a working BIOS to install software for boot, and if the BIOS dies, and if there is no backup BIOS, then the BIOS can no longer be used…even if the BIOS is flashing the BIOS.
- The boot software is much more complex due to manually bringing up power rails, engaging clocks at the right speed and order, and going through link training on various devices (e.g., memory and perhaps PCI bus).
To say those partitions are not needed would be more correctly phrased “the partitions are used during boot, but not used once boot is complete”. In the case of dual copies of a partition, e.g., kernel and kernel_b, you could think of that as the “backup BIOS” in some way (not exactly, but it is boot process redundancy). If a Jetson is up and running, then you can wipe the content of those partitions; unfortunately, you would no longer be able to reboot without flashing.