htc-memul needs a special build with a different scratch address set. So
generalize the build function so we can make multiple builds with
parameters without duplicating too much code.
- Support for the huawei-g7 display panel in lk1st
- FS based boot is skipped when going to the recovery
- Generate image without appended dtb for lk2nd-msm8226
- Some bug fixes and device improvements
New devices:
- Samsung Galaxy Ace 4 (SM-G357FZ)
- Samsung Galaxy Grand 2 (SM-G7102)
- Samsung Galaxy Grand Max (SM-G720AX)
- Samsung Galaxy Tab 4 10.1 (2014) (SM-T530)
- Huawei Ascend G6 L11 LTE
- Some new variants for the existing Samsung devices
Changelog: https://github.com/msm8916-mainline/lk2nd/releases/tag/0.13.0
- Project naming scheme is changed to "lk2nd-msmXXXX"
- lk1st-msm8916: Experimental support for running as the "first" lk
- Secondary core bringup on non-psci firmware is now done by lk2nd
- rproc selection is now handled by lk2nd
- Some display information improvements
- New devices and various improvements for existing ones
[ci:skip-build]: already built successfully in CI
We should always install lk image as /boot/lk2nd.img, even for
image with appended DTB (lk2nd-appended-dtb.img). pmbootstrap tooling
will expect it this way, and also it keeps all subpackages consistent,
while also making them conflict with each other.
Add new subpackages that are explicitly named -appended, but still
install the same file.
Each device should "know" which kind of LK image it needs and should
explicitly depends on specific variant.
Having only one file `/boot/lk2nd.img` will simplify many things,
for example we don't have to introduce new deviceinfo properties
to specify which image is needed (like if we installed both of them).
Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
When building from tarball git tag is not available.
We need to pass version number manually.
This chnage is cosmetic, but will allow users to easily
identify version and source of their bootloader.
Package secondary LK bootloader for some Qualcomm devices
(for now: msm8916, msm8974, msm8226).
Bootloader binary is built from source in x86_64 chroot.
Two targets are built in a sequence. Then package is split
into 2 subpackages, each of them installs `/boot/lk2nd.img`.
So the end result is - lk2nd-msm8916 and lk2nd-msm8974 can't
be installed at the same time.
Device- packages then can depend on specific subpackage of this
package and have proxy-bootloader image ready to use in /boot.
This can improve user experience with installing postmarketOS on
several devices using only pmbootstrap tool.
At the very least, pmbootstrap can suggest user to flash lk2nd
immediately after `pmbootstrap install` or even offer some kind
of `pmbootstrap flasher` integration.
This will also open possibilities to automatically update and flash
lk2nd using package manager, it we ever want this.