EFI booting with systemd-boot requires building the kernel with ZBOOT -
the EFI decompressor stub. However, this breaks the old Android booting.
Detect when ZBOOT is enabled and install both vmlinuz.efi as well as the
old gzipped kernel image.
To help make this upgrade more seamless, continue to support building
the kernel with ZBOOT disabled and just print a warning.
Disable module stripping - we compress them anyway and a recent kernel
change seems to have caused some bug here.
This is a packaging change that doesn't require rebuilding the kernel.
[ci:skip-vercheck]
Co-developed-by: Jakob Hauser <jahau@rocketmail.com>
Co-developed-by: Pablo Correa Gomez <ablocorrea@hotmail.com>
[ci:skip-build]: Already built successfully in CI.
Something seems to have gone wrong in our rebuild and sync of pulseaudio
with alpine upstream. And user feedback points that building armv7 devices
with LTO is actually broken in our builders. In alpine, they enabled lto
in pulseaudio very long ago (f46174365b219fe431890df3df7e7dc488c9451e 08-09-22)
and nobody as complained so far. Since it's not really a phone-specific package,
one would hope that more people upstream would have noticed if it were broken
there. Since nobody has, we assume this is a downstream problem, and just
unconditionally disable lto in our build. We hope this will be just a temporary
workaround, until the patches that prompted the fork are no longer needed, and
we can simply use upstream pulseaudio, that shouldn't be broken.
Fixes#2368
[ci:skip-build] already built successfully in CI
As described in [0] let's switch away from RNDIS and use NCM instead.
Since we cannot force all kernels to switch at the same time, let's keep
a fallback to RNDIS in the setup function.
We can also remove usb_f_rndis from modprobe as the module gets loaded
automatically when needed, but instead we need to load libcomposite
manually so that $configfs/usb_gadget gets created.
[0] https://gitlab.com/postmarketOS/pmaports/-/issues/1797
[ci:skip-build] already built successfully in CI
With recent gcc versions we get errors like:
/linux/arch/arm/mm/proc-v7.S: Assembler messages:
/linux/arch/arm/mm/proc-v7.S:425: Error: junk at end of line, first unrecognized character is `#'
Seen on at least two samsung kernels based on 3.4 and 3.10. Fix issue
by backporting (part of) commit found in mainline.
Linux 6.7-rc1 looks for the venus (video) firmware in
qcom/venus-1.8/venus.mbn instead of qcom/venus-1.8/venus.mdt.
Let's install it in both places with a symlink so that the firmware
packages work for both older and newer Linux versions.
[ci:ignore-count]: lots of packages
[ci:skip-build] already built successfully in CI
Swap maintainer and co-maintainer (David is not active now and requested
it himself). Also update email addresses.
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
The mainline port has almost reached full feature parity with the
downstream port. Default to mainline in new installations, but keep
downstream around as it'll still be needed for bringing up the currently
missing features.
GPS on milletwifi is via the "modem", which doesn't have any cell model
support, but is similar. This starts the modem remoteproc to support
GPS output.
[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI
Firmware drivers will load too early, before msm-firmware-loader, so they
won't load the necessary firmware. Instead, mark them as modules so they load
later in the boot process, when the firmware is available.
BINFMT_MISC for running qemu on this system, and HIDRAW is used for some
USB devices. ETHERNET lets me use usb NICs, since this device does not
have a rj45 port/onboard NIC.
[ci:skip-build] already built successfully in CI
And don't bother disabling the gpsd service given how unlikely it is
that someone is doing something serious with this device, let alone
having it in the first place. Plus, it's in testing.
[ci:skip-build] already built successfully in CI