bootdeploy: support zboot kernel image (MR 44)

As we move towards UEFI on more devices, we want to use systemd-boot and
kernel images built with CONFIG_ZBOOT. However, these images aren't
compatible with existing Android bootloaders. As a result, we must
install both the old vmlinuz image for old bootloaders, and the fancy
new self-extracting EFI image.

When using systemd_boot, use linux.efi as the kernel file name instead
of globbing on vmlinuz*.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
This commit is contained in:
Caleb Connolly
2023-12-04 18:51:39 +00:00
committed by Clayton Craft
parent 98bdb23f01
commit f0b3c1d992
2 changed files with 37 additions and 27 deletions

View File

@@ -154,7 +154,7 @@ func main() {
// Final processing of initramfs / kernel is done by boot-deploy
if !disableBootDeploy {
if err := bootDeploy(workDir, *outDir, devinfo.UbootBoardname); err != nil {
if err := bootDeploy(workDir, *outDir, devinfo); err != nil {
log.Println(err)
log.Println("boot-deploy failed")
retCode = 1
@@ -163,10 +163,10 @@ func main() {
}
}
func bootDeploy(workDir, outDir, ubootBoardname string) error {
func bootDeploy(workDir string, outDir string, devinfo deviceinfo.DeviceInfo) error {
log.Print("== Using boot-deploy to finalize/install files ==")
defer misc.TimeFunc(time.Now(), "boot-deploy")
bd := bootdeploy.New(workDir, outDir, ubootBoardname)
bd := bootdeploy.New(workDir, outDir, devinfo)
return bd.Run()
}