Some tablets have eMMC, which pmOS can be installed to. These modules
are needed to detect/mount the boot and rootfs partitions.
This also adds i915, which sets up the display and allows the splash
screen / console to work on boot.
- make CONFIG_DRM_DISPLAY_CONNECTOR built-in. This resolves 'slow' tty
initialization that breaks pbsplash on N900
- use CONFIG_CMDLINE_FROM_BOOTLOADER instead of CONFIG_CMDLINE_FORCE, to allow
kernel to boot with u-boot provided parameters such as
PMOS_FORCE_PARTITION_RESIZE
- upgrade to 6.3.5
[ci:skip-build]: already built successfully in CI
This allows the user (upon loading the module) to handle non-native
binaries transparently - after registering the magic number and the
command for handling execution, the programs can be ran as if compiled
for the host architecture. (Similarly how the shebang line allows
the interpreter to be specified for scirpts).
Common use-cases include
* Using qemu user-space emulation to run
x86 binaries on ARM (or the other way around), or simply running
64-bit binaries on 32-bit architectures.
* Allow Java programs to be run transparently.
* Creating cross-architecture chroots (for cross-compilation e.g.)
Add a dummy subpackage that does not install any kernel. This is useful
for testing 'pmbootstrap install' code quickly without actually
downloading and installing a kernel package.
- fix wifi signal quality display, since /proc/net/wireless is no longer
available in omap kernel
Suggested-by: DvaMishkiLapa <thesame.personal@gmail.com>
- add `polkit-elogind` so tools like `loginctl poweroff` and `nmtui` do not
require sudo under i3wm
[ci:skip-build]: already built successfully in CI
The call_audio_idle_suspend_workaround init service was moved to the
-pulseaudio subpackage, but the -modem subpackage still had a
.post-upgrade referring to it. This moves that to the (recently) new
-pulseaudio package
[ci:skip-build]: already built successfully in CI
Out of the box audio is really quiet and distorted on SDM845 devices when
using PipeWire. This can be worked around by forcing audio to 16 bits
(which PulseAudio uses by default and thus works). This seems to be a
kernel problem and should be fixed properly there but for now we can
apply this workaround to at least be able to switch to PipeWire anytime
soon. The actual workaround is applied by Wireplumber so the dependency
for the subpackage is set to that.
Upstream issue https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3193
[ci:skip-build]: already built successfully in CI
It doesn't build currently (issue 2146) and also it's not used by any
device package currently (with other ports we support selecting between
mainline and downstream kernel in some cases, but not here).
If it's useful, the build can be fixed and it can be added back in a
future patch.
changes:
- don't try to set gnss-share socket in geoclue
- install Alsa UCM configs from purism
Upstream ucm is broken when migrating from the purism ucm, so let's
just use ucm from purism until someone upstreams something that works.
What I upstreamed was based on an older ucm from Purism, what they are
shipping is more correct than upstream ucm...
This reverts commit 70b7813fee.
fixes#2134
[ci:skip-build] already built successfully in CI
The `firmware-pine64-pinebookpro` predates the firmware for this device
being available upstream. It is now packaged in two separate packages:
linux-firmware-brcm and linux-firmware-rockchip.
Install those two linux-firmware packages and drop the custom one. This
drop a custom firmware package and also ensure that firmware is kept up to
date with the rest of linux-firmware-*.
The resulting installation includes all the previously included firmware
files and I've confirmed that both sound and wifi work fine (dmesg
indicates bluetooth is available too).
This also enables a few other things for Amlogic SBCs, including some
kernel config that enables video decoding support, however userspace
still doesn't support it (e.g. requires patched ffmpeg)
[ci:skip-build] already built successfully in CI
Previously, this extra rule was needed to grant regular users
permissions for the embedded display's backlight. It no longer seems to
be necessary; the presence of this rule is currently a no-op.
Someone else on IRC has tested removing the rule and also confirms this
new behaviour. I suspect this was fixed upstream in eudev.
Rebase of sdm660 patchset on top of linux-stable/linux-6.3.y
branch.
Notable changes:
* New device: HMD Global Nokia 6.1 (nokia-pl2)
* New device: Xiaomi Mi A2 (xiaomi-jasmine_sprout)
* usage of pmb:kconfigcheck-community only
* LOCALVERSION is no longer set in kconfig, but at build time
Signed-off-by: Gianluca Boiano <morf3089@gmail.com>
[ci:skip-build] already built successfully in CI
Make sure the GPU can register its thermal device to avoid this error:
[ 9.303081] adreno 3d00000.gpu: [drm:msm_devfreq_init] *ERROR* Couldn't register GPU cooling device
[ci:skip-build]: already built successfully in CI
Add most config options for pmbootstrap kconfig check --community
CONFIG_SMP is left out since we have no mulitprocessor systems
using this kernel.
[ci:skip-build]: already built successfully in CI
Add support for the Qualcomm Robotics (RB3) dev kit, the Thundercomm
DB845c. This is a successor to the arrow 410c board already supported in
postmarketOS. It is based on the SDA845 SoC, almost identical to SDM845
but without a fully featured modem.
All the things you'd expect to work out of the box:
* UART
* USB host and peripheral
* HDMI display out
* Wifi, Bluetooth
The upcoming db845c doesn't have cellular modem capabilities, but still
has wifi. Avoid installing modem related configs and services by default
and only install it for devices that need it.
-Removed 0013-media-ov5640-Update-last-busy-timestamp-to-reset-aut.patch:
Fix should now be incorporated in 6.3 kernel.
[ci:skip-build]: Already built successfully in CI
- Add msm8916-1mic configuration for devices without SecondaryMic
- Fix audio volume after upstream msm8916-wcd-digital changes
[ci:skip-build]: already built successfully in CI
harpia's WCNSS firmware has problems with WiFi channels on some device
variants, using osprey's firmware seems to help as a workaround.
Install that by default so WiFi has better chances of working properly
out of the box.
[ci:skip-build]: already built successfully in CI
Sipeed M1s DOCK is a development board from Sipeed, it is based on
M1s module.
The Sipeed M1s introduces the BL808 SoC from Bouffalo Lab, the
BL808 is also used in Pine64 0x64 development board.
[ci:skip-build]: already built successfully in CI
The kernel source replaced with the lineageos version.
It fix the compile issues and the contains security fixes.
[ci:skip-build]: Already built successfully in CI
The pmaports package will follow lts releases from now on.
Intermediate versions will be tagged in the
gitlab.com/exynos5-mainline/linux repo.
Also enable CONFIG_LRU_GEN while we are at it (but not
CONFIG_LRU_GEN_ENABLED for now).
[ci:skip-build]: already built successfully in CI
And use gitlab.com/exynos4-mainline/linux as source so that we no
longer have to carry all the patches in pmaports.
[ci:skip-build]: Already built successfully in CI
Add modules for instantnoodlep NFC, touchscreen, and MHI related to modem, which is a
work in progress
[ci:skip-build] already built successfully in CI
As stated in the MRs that added the patch, the ea8061 and s6evr02
panel drivers are originally from work by Simon Shields (fourkbomb).
Let's base our patches on the original commits to preserve authorship,
and note which modifications have been done, and by who. This is a
step towards making these patches ready for submission to upstream.
[ci:skip-build]: Already built successfully in CI
The UART console makes the boot process a whole lot slower due to printk
being synchronous. These devices are well enough supported that we can
disable UART logging by default to improve the boot speed. This
constitutes a ~30 second speedup on the SHIFT6mq at 115200 baud.
Also update the patches with new, rebased ones straight from
the linux-amlogic mailing list, and rename them.
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
[ci:skip-build] already built successfully in CI
Plasma Bigscreen requires specific configuration on the RPi4 to tell it
to load some device-specific stuff. In this case to disable 4K mode as
the device can not handle it
[ci:skip-build] already built successfully in CI
Angler and Bullhead support is in early stage other msm899{2,4} does not
use the package yet => safe to use rc kernels to get closer to
qcom/for-next git tree.
Kernel 6.2 and 6.3 got few memory map fixes for angler and bullhead.
* Added 3 not yet merged patches for angler:
- add regulators
- memory overlap fixes
- proper cont_splash_mem setup
* Removed 0004-arm64-dts-qcom-msm8992-Don-t-use-sfpb-mutex.patch
(already applied and backported to 6.1 stable), thus renumber the
following patch.
* config
- Enable zram with lzo-rle, add pmb:kconfigcheck-zram (fixes warning:
zramctl: /dev/zram0: failed to set algorithm: Invalid argument)
- Enable crc32, lz4hc, zstd.
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
[ci:skip-build]: already built successfully in CI
Make it easier to look up the librem5-base version that was used in the
device-purism-librem5 package, e.g. for writing service pack release
notes:
> Purism Librem 5 Phone (librem5-base: 58pureos1)
[ci:skip-build]: already built successfully in CI
Update from librem5-bae 56 to 58, which includes the following changes
from Purism
* default: gadget: Use CDC-NCM instead of CDC-ECM
* defaults: Add an initramfs script to reencrypt LUKS rootfs
* defaults: librem5-pm: Add rules for EM7565 and SIM7912G
* defaults: pulse: Reduce fragment size to 22 ms
* defaults: Switch USB PM timeouts back to 2s for devices and 0 for hub
* defaults: Enable WiFi powersave with brcmfmac driver
* defaults: usb_gadget: Run service as a dependency of UDC device unit
* defaults: usb_gadget: Set Before= relation to network.target
* defaults: librem5-pm: Enable NO_SUSPEND quirk and adjust PM properties
* d/control: Bump Librem 5 kernel dependency to 6.1.19pureos1
Note, that this update doesn't fix the modem disapearing modem during
suspend. So we keep the current workarounds we have.
Signed-off-by: Alistair Francis <alistair@alistair23.me>
[ci:skip-build] already built successfully in CI
Enable options required for the Android 11 image inside waydroid:
* CONFIG_BPF_SYSCALL
* CONFIG_CGROUP_BPF
* CONFIG_PSI (already set for this kernel)
* not CONFIG_PSI_DEFAULT_DISABLED (already set for this kernel)
The same will be done for all devices in main and community in the
following patches. Also add V=1 for all kernels I'm modifying that are
below 6.2 (see issue 1990).
Kernel configuration addition:
Just like on the PinePhone Pro I enabled the newly added Lazy RCU scheduler.
RCU_LAZY can help battery-powered systems like the PinePhone Pro in a few ways:
1. Reduced CPU usage: Because RCU_LAZY allows readers to access shared data structures without acquiring locks or other synchronization primitives,
it reduces the amount of CPU time that is required to manage synchronization. This can be particularly beneficial in battery-powered systems,
where reducing CPU usage can extend battery life.
2. Reduced memory usage: RCU_LAZY delays the creation of multiple versions of the shared data structure until they are actually needed.
This reduces the amount of memory that is required to store these versions.
In battery-powered systems, where memory usage can be a critical resource, this can help to conserve power.
3. Reduced synchronization overhead: RCU_LAZY reduces the overhead of synchronization by delaying the creation of multiple versions of the shared data structure.
This can reduce the amount of time that is spent acquiring and releasing locks or other synchronization primitives,
which can help to conserve power in battery-powered systems.
Signed-off-by: Jan Jasper de Kroon <jajadekroon@gmail.com>
[ci:skip-build] already built successfully in CI
linux-postmarketos-omap now supports the Nokia N900 and its OMAP3430 SoC, so
drop this device-specific fork
[ci:skip-build] already built successfully in CI
Switch from armhf to armv7
- Apart of the usual stuff CONFIG_CRYPTO_AES_ARM_BS must be disabled
otherwise it breakes kernel compilation with some weird assembler error
Netboot
- CONFIG_BLK_DEV_NBD=y enables /dev/nbd support
- nbd.max_part=16 kernel parameter must be added otherwise it's zero
which causes that kpartx cannot create partitions
[ci:skip-build]: Already built successfully in CI
Also enable support for LIRC and /dev/uinput.
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
[ci:skip-build]: Already built successfully in CI
Remove maintainers who could not be reached to test v22.12. Add exkc as
maintainer for firmware-pine64-rockpro64 as discussed in review of this
patch.
[ci:skip-build]: already built successfully in CI
- upgrade to 6.2.1
- drop musb patch (not needed since linux mainline commit
ffbe2feac59b37c8dc536727552b4f375e1b9aec)
- enable LRU_GEN
[ci:skip-build]: Already built successfully in CI
The modesetting driver previously provided by xf86-video-modesetting is
now shipped with xorg-server.
[ci:skip-build]: already built successfully in CI
From what I can tell, the package firmware-samsung-on7-wcnss-nv should
have been put as dependency since the on7lte package doesn't exist, and
I can't seem to find a trace of it.
[ci:skip-build] already successfully built in CI
Include adsp, cdsp and slpi firmware and add the linux-firmware-qca
dependency for qca6390-bt.
Also correct the module name for spi-geni-qcom in deviceinfo.
Kernel configuration addition:
Enabled the newly added Lazy RCU scheduler.
RCU_LAZY can help battery-powered systems like the PinePhone Pro in a few ways:
1. Reduced CPU usage: Because RCU_LAZY allows readers to access shared data structures without acquiring locks or other synchronization primitives,
it reduces the amount of CPU time that is required to manage synchronization. This can be particularly beneficial in battery-powered systems,
where reducing CPU usage can extend battery life.
2. Reduced memory usage: RCU_LAZY delays the creation of multiple versions of the shared data structure until they are actually needed.
This reduces the amount of memory that is required to store these versions.
In battery-powered systems, where memory usage can be a critical resource, this can help to conserve power.
3. Reduced synchronization overhead: RCU_LAZY reduces the overhead of synchronization by delaying the creation of multiple versions of the shared data structure.
This can reduce the amount of time that is spent acquiring and releasing locks or other synchronization primitives,
which can help to conserve power in battery-powered systems.
[ci:skip-build]: already built successfully in CI
According to Purism, PM on the Sparklan WiFi module works now with
recent kernels, the upstream bug referenced earlier (see diff) was
closed.
Note that this has no effect on the Redpine WiFi module, which is the
default module shipped with the L5.
[ci:skip-build] already built successfully in CI
This is more of a version bump, compared to the past few releases. This
kernel should receive more of these types of releases, especially when
there is less hardware left to bring up.
[ci:skip-build] already built successfully in CI
Includes changes that might improve modem stability (with resetting,
that is...), and some ucm tweaks.
Changelog from upstream:
1b154d9316/debian/changelog
[ci:skip-build] already built successfully in CI
Installing wys and anything else on all gnome-related UIs is better than
just having a special case for phosh. Phosh should pull in
pmos-base-ui-gnome.
Let the user select between two kernel variants using the different
device trees for the different panel variants (ea8061 and s6evr02)
[ci:skip-build]: Already built successfully in CI
Add a driver for the Magnachip EA8061 panel found on some Samsung
Galaxy Note II devices. Split the device trees into two (one for devices
with the already supported S6EVR02 panel and one for the new EA8061
panel).
Note: I didn't write this driver myself. Just like the old S6EVR02
driver, it has been ported from https://github.com/fourkbomb/linux
to the latest mainline Linux version.
According to
https://source.puri.sm/Librem5/linux/-/issues/303#note_160864 enabling
the modem power management results in a unreliable modem, but more power
savings.
With power management on the modem can disconnect at any time,
including during calls. This makes the Librem 5 a very bad phone.
Instead let's ensure it works as a phone with a semi-reliable modem
(there is still the sleep/resume issue
https://source.puri.sm/Librem5/linux/-/issues/423) at the cost of
battery life.
As the Librem5's battery life is already poor, a little bit worse
isn't much different. Either way you need an external battery pack.
Signed-off-by: Alistair Francis <alistair@alistair23.me>
[ci:skip-build] already built successfully in CI
I unset CONFIG_ARM64_PTR_AUTH_KERNEL because the i.MX 8 CPU in the
Librem 5 doesn't support features from ARMv8.1-A and above anyway.
Same rationale applies to CONFIG_ARM64_TLB_RANGE being unset.
The google-dru package provides the linux-postmarketos-rockchip as a
kernel and supports linux-firmware-ath10k linux-firmware-rockchip
packages as additional non-free firmware.
Enable the ATH10K kernel module in the kernel config
config-postmarketos-rockchip.aarch64 to enable wifi on devices such as
the Acer Chrometab 10.
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
[ci:skip-build]: already built successfully in CI
Add the missing kernel.release file to support packaging and fix builds
with:
`pmbootstrap build --envkernel linux-postmarketos-rockchip`
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This port has been compatible with GPU-accelerated UIs like Phosh and
Plasma Mobile for quite a while now. Enable these UIs in the
`pmbootstrap init` menu.
See #1939.
This enables the DRAM frequency stats driver that can be useful for debugging
issues with the PinePhone. This came up in a discussion in #pinephone on IRC
where megi was helping a pmos user with idle power draw issues.
This also enables the performance, powersave and userspace devfreq governors.
Ref: 8bfd4858b4
[ci:skip-build]: already built successfully in CI
Store the full kernel config instead of a fragment, so
"pmbootstrap kconfig check" can properly verify that all required kernel
options are there. Without this, it would fail an upcoming check for
BINFMT_ELF and BINFMT_SCRIPT:
https://lists.sr.ht/~postmarketos/pmbootstrap-devel/patches/38508
With the full config, pmbootstrap found that ANDROID_PARANOID_NETWORK
was enabled while it should be disabled, so disable it.
Fix the mediatek drvgen related build failure with
00_disable_drvgen.patch from linux-wiko-ufeel and including cust.dtsi:
https://wiki.postmarketos.org/wiki/Porting_to_a_new_device#Removing_python2_dependency
[ci:skip-build]: already built successfully in CI
This gets rid of the Tux army on bootup. While it hurts my soul,
removing Tux from bootup makes it less flickery.
[ci:skip-build]: already built successfully in CI
6.1 was not a valid kernel version causing the wlan module installed
into wrong location. 6.1.0 would be correct. Fix that
problem by upgrading to 6.1.12 and make the wlan installation
more robust.
[ci:skip-build]: already built successfully in CI
Add a generic device that should work on x86_64 ChromeOS devices. This
is mostly a copy of tablet-x64uefi, with ChromeOS-specific stuff from
google-kevin. Keeps the UEFI parts so that it can still be booted with
alternative firmware (i.e. MrChromebox's RW_LEGACY builds). Lightly
tested on a Lenovo IdeaPad 3 Chromebook 11IGL05 (codename "Lick").
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
Also added: 0013-media-ov5640-Update-last-busy-timestamp-to-reset-aut.patch
This solves bug of taking greenish pictures with Megapixels, due to
sensor being shutdown to early after taking a picture.
[ci:skip-build]: already built successfully in CI
linux-postmarketos-mediatek-mt6735 6.1.9 added full display support and hardware acceleration
as well as haptics. Add a phoc configuration file to set the display scale, and a feedbackd
theme to optimize vibration durations. Route console output to UART to leave the splash
screen clean and to help with debugging when necessary.
[ci:skip-build] already built successfully in CI