Add "fastboot-bootpart" flasher to flash split images using Fastboot
asus-me176c has a Fastboot interface that can be used for flashing, but in postmarketOS we do not use Android boot images for it. This is because is it not very practical - the boot partition is quite small and there is a (custom) EFI bootloader that can boot directly from any other FAT32 partition.
At the moment the installation process is manual:
- pmbootstrap install --split to have separated boot (FAT32) and rootfs images
- pmbootstrap export
- Flash boot and rootfs images manually using Fastboot
The "fastboot-bootpart" flasher implements that process in a more convenient way. When a device uses the "fastboot-bootpart" flasher:
- We generate --split images on "pmbootstrap install" by default. (This can be disabled using --no-split instead.)
- pmbootstrap flasher flash_kernel flashes the raw boot partition (not an Android boot image) using Fastboot, just like the rootfs.
There are some limitations that could be improved in the future:
-
"fastboot-bootpart" is not offered in the device wizard. I think it is special enough that no-one will be starting with it, and the difference to normal "fastboot" might be confusing.
-
Support "pmbootstrap flasher boot". asus-me176c does not support "fastboot boot" properly, but theoretically we could still generate Android boot images to use when booting an image directly.
-
At the moment the boot partition image is not regenerated when using "pmbootstrap flasher flash_kernel" (unlike when using Android boot images). "pmbootstrap install" needs to be run manually first.
I think @Mis012 was eventually interested in using something like this together with his "re-boot" bootloader for MSM8916.