1. Modernize the boot parameters uboot passes to the kernel
2. Correct the volume keys. Upstream DTS actually sends F7 and F8 for these
keys, which is the behavior from stock. Using hwdb to correct the keys
allows us to drop the relevant DTS patch from linux-postmarketos-omap.
Additionally add the hwdb database into initramfs to ensure the keys
also work during system initialization
3. Disable OMAP 3430 OFF mode early in the initramfs. This is currently
broken and causes system instability. We previously used a DTS patch to
do this, but using an initramfs hook allows us to reduce the amount of
kernel patches we maintain
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8472>
Version 34 of the device-nokia-n900 package implemented an udev-based script
for shutdown due to critically-low battery condition. Therefore, depending on
UPower is no longer necessary. To keep the i3blocks status bar working in
the absence of UPower, switch back to basic sysfs polling.
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8472>
As of upower 1.91.0, UPower supports config fragments, thus there is no longer
a need to ship a full UPower.conf. The device-specific upower package can
therefore be dropped, and the config fragment will be installed unconditionally
as part of the device package.
NB: It is still necessary to use a custom udev script to initiate poweroff due
to low battery on the N900, since the fuel gauge has a hardware limitation
which results in reporting 0% if the calibration is off, causing unwanted
device shutdowns if UPower's mechanism is active.
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8472>
Provide a unified screen locking mechanism, supporting x11 and sway. Auto
locking is also improved to correctly disable inputs in all screen locking
scenarios, and re-enabling them on unlock. Unlock on keypad slide now also
works on sway (from sway v1.12).
Any x11 UI can use the existing script by setting up appropriate keybinds to
the script and autostarting xautolock. It may be necessary to disable any
built-in autolock method integrated within a specific x11 WM.
NB: This is NOT locking in the sense of secure locking. It is purely for
turning the screen off and disabling some inputs (currently only the
touchscreen) to prevent unintended wakeups.
Signed-off-By: Sicelo A. Mhlongo <absicsz@gmail.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8472>
The current pipewire rule was forcing every output sink to use the S32LE
format, which caused problems with DACs that do not support this format.
To ensure only the built-in sinks are matched, we manually specify the
alsa card name in the pipewire rule matcher.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8363>
This package was introduced back when Pine64 shipped the PinePhone
with a broken ANX7688. The issue no longer persists on later versions
of the PinePhone and the package requires manual intervention and is
not pre-installed, so let's drop it.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7799>
The kernel package used by these two devices does not meet our community
kernel version requirements anymore, and two weeks after notifying the
maintainers, the situation hasn't changed, so let's move them to testing
accordingly.
See also #4448
[ci:skip-vercheck]: moving between categories
[ci:skip-kconfigcheck]: moving between categories
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8399>
This commit mirrors some of the changes from google-sargo:
google-sargo: install config for plasma-camera
device-google-sargo: add support for u-boot
community/device-google-sargo: only keep fastrpc link udev rule
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8386>
Since a 'recent' pmbootstrap change, the cross compilers are no longer
installed by default which uncovered that "make oldconfig" is called
without LLVM=1.
scripts/Kconfig.include:41: linker 'armv7-alpine-linux-musleabihf-ld' not found
make[2]: *** [scripts/kconfig/Makefile:85: oldconfig] Error 1
Pass it so that all steps in the build process are run with the LLVM
toolchain and we're not mixing toolchains in the build process.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8295>
The new U-Boot supports the phone's MMC controllers, so let's use that
to enable UEFI boot.
This allows us to drop initfs-extra, avoid reflashing the kernel to the
boot partition every upgrade, fix kernel-cmdline and future-proof the
port in general.
Signed-off-by: Duje Mihanović <duje@dujemihanovic.xyz>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8337>
The calibration is loaded from firmware, which in turn is done through a
modprobe config file.
Besides this, there're a few QoL fixes:
* Update my email in maintainer=
* Drop _pmb_recommends approach for firmware, it's now depended on
* Sort depends alphabetically
Signed-off-by: Duje Mihanović <duje@dujemihanovic.xyz>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8311>
It has been found that the calibration files, while not mandatory, could
be useful with the mainline mwifiex driver as well. Install those on
mainline as well and leave the -downstream subpackage as a stub for
-downstream-openrc.
Also, switch from installing the firmware to /usr/lib instead of /lib to
suppress warnings.
Signed-off-by: Duje Mihanović <duje@dujemihanovic.xyz>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8311>
Implements openrc implementation of the workaround introduced in
d7229de9d4 for a `rockchip_ebc` bug where the
initial waveform is not properly loaded. Reloading `rockchip_ebc` just
before starting `tinydm` loads the correct waveform.
In systemd, this is implemented via a systemd override file for
`tinydm.service` that includes an `ExecStartPre`, reloading the driver via
modprobe. For openrc, we add an initd service that restarts driver before
starting `tinydm`.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8288>