The previous name stopped being valid with the kernel 6.8 upgrade. This caused
ALSA to think a headset was connected, which in turn caused callaudiod to
select the Headphones port in the PA sink instead of Earpiece / Speaker.
I missed this in my own kernel upgrade testing because I use
a custom callaudiod that doesn't care about the headphones port.
I now confirmed the issue with regular callaudiod and that this change
fixes it.
Co-authored-by: Fiona Klute <fiona.klute@gmx.de>
eg25-manager is supposed to watch for the modem going away and recover it
automatically, but it doesn't seem to actually do anything.
Manually restarting eg25-manager in this situation does recover the modem.
This upstream issue https://gitlab.com/mobian1/eg25-manager/-/issues/47
is probably the same, and as that issue says, manually restarting eg25-manager
in this situation does recover the modem.
So this change adds a udev rule to automatically restart eg25-manager when
the modem dies. Common triggers for the modem dying are:
1. When the phone wakes up from suspend.
2. When an incoming call is disconnected, especially if the disconnect happens
very quickly after the call started, such as what happens when
phosh-antispam identified the call as spam.
3. When plugging or unplugging the phone from USB power, and when plugging
or unplugging other USB devices like keyboard from a connected dock.
udev shouldn't be used for spawning long-lasting processes,
but `rc-service start` will parent the process to the service manager and exit,
so that's fine. It does take a few seconds during which udev is blocked and
can't process other events, which udev also recommends against,
but in this case it's not a big deal IMO.
Fixes#2641
[ci:skip-build]: already built successfully in CI
This is no longer necessary as geoclue now can talk to ModemManager
directly for GPS information. It also presents a security risk due to
how gpsd works. As such, remove it.
Closes https://gitlab.com/postmarketOS/pmaports/-/issues/2340
Protect script when ram_freq is not set
Safely load PSCI DTO to enable CPUidle driver: psci_idle
The PSCI DTO shall only be applied if TF-A & Crust
support CPU idle states [0]. Otherwise the CPU usage
will be at 100%. This will not be visible in top,
lead to overheating and battery drain.
Worst case scenario would lead to a fried chip if
the CPU thermal_zone does not work or is not enabled
in DTS.
[0] https://gitlab.com/postmarketOS/pmaports/-/issues/1901#note_1238456920
I have enough other devices to care about, and honestly haven't touched
my PinePhone in a while. Remove myself as Co-Maintainer from all
relevant packages.
[ci:skip-vercheck]: No rebuild necessary
[ci:skip-build]: Doesn't change resulting packages
Let /usr/share/alsa/ucm2/conf.d/simple-card/*.conf be a symlink,
as it is expected since alsa-lib 1.2.7.
Related: d6adde0e32
[ci:skip-build] already built successfully in CI
For the Biktorgj firmware the control/power file should be set to on
instead of auto. By matching on the serial number this only applies to
modems with the community firmware installed.
The package `device-pine64-pinephone-vccq-mod` installs a u-boot user script.
The user script was loaded at address 0x50100000 partially overwriting
the initramfs (0x4FF00000-0x5015facd), and causing a boot loop.
The user script load address was increased to 0x50700000, leaving 8MB
of free space for the initramfs, the current initramfs size is 2.37MB.
Use -f, so rm
* does not complain if the file does not exist
* does not exit with 1 if the file does not exist
Remove the stdout/stderr redirect (not needed with -f).
Add exit 0 at the end of the file, even though it clearly should not
exit with anything other than 0 anymore, as it's common practice in
these pre-upgrade etc. scripts.
With the old script, the problem was that it would exit 1 as soon as the
files did not exist at the time the script runs. Exit 1 in this
pre-upgrade script causes apk to show an error, and it would not go away
with 'apk fix' since it ran into the same problem.
Fixes: 7c511d ("pine64-pinephone: remove old u-boot...")
On the pinephone, callaudiod handles the switching of default outputs,
so wys is unnecessary and may be causing issues when running in parallel
with callaudiod.
fixes#1217
with 5.14, there's some change to the path that alsa searches for ucm2
for this device. the install path for PinePhone.conf is changed, and it
references "full" path to HiFi and VoiceCall profiles (which I kept in
`PinePhone` dir, so that there could be several configs for the same
driver later on, if necessary/desired)
`$DEV` was an undefined variable so the atinout commands were printing their
helptext instead of actually running. This was noticeable because
the "Failed to enable VoLTE profile auto selecting" log was being printed
along with said helptext to syslog.
The block that defined `$DEV` had been accidentally deleted in
bb41f53879 . This change restores it.