ipq40xx: Support Chromium OS image-type creation
authorBrian Norris <computersforpeace@gmail.com>
Sun, 14 Jun 2020 03:12:18 +0000 (20:12 -0700)
committerChristian Lamparter <chunkeey@gmail.com>
Fri, 25 Mar 2022 17:14:13 +0000 (18:14 +0100)
commit17b05045bd82f04a8839666ec0fe43a5041d77c7
treec16982951aa1c85653ffcb6c40b1097d2af5a691
parent331d78a90f3f11e9abfbc114a601c565899e3764
ipq40xx: Support Chromium OS image-type creation

See firmware-utils.git commits [1], which implemented the cros-vbutil
verified-boot payload-packing tool, and extended ptgen for the CrOS
kernel partition type. With these, it's now possible to package kernel +
rootfs to make disk images that can boot a Chrome OS-based system (e.g.,
Chromebooks, or even a few AP models).

Regarding PARTUUID= changes: Chromium bootloaders work well with a
partition number offset (i.e., relative to the kernel partition), so
we'll be using a slightly different root UUID line.

NB: I've made this support specific to ip40xx for now, because I only
plan to support an IPQ4019-based AP that uses a Chromium-based
bootloader, but this image format can be used for essentially any
Chromebook, as well as the Google OnHub, a prior Chromium-based AP using
an IPQ8064 chipset.

[1]
ptgen: add Chromium OS kernel partition support
https://git.openwrt.org/?p=project/firmware-utils.git;a=commit;h=6c95945b5de973026dc6f52eb088d0943efa96bb

cros-vbutil: add Chrome OS vboot kernel-signing utility
https://git.openwrt.org/?p=project/firmware-utils.git;a=commit;h=8e7274e02fdc6f2cb61b415d6e5b2e1c7e977aa1

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
package/base-files/files/lib/upgrade/common.sh
target/linux/ipq40xx/image/chromium.mk [new file with mode: 0644]