Compare commits

..
Author SHA1 Message Date
Oliver Smith f4ca5fb76c channels.cfg: branch_pmaports: master -> main
With this change, pmbootstrap will know that the branch is called "main"
from now on.

Related: https://docs.postmarketos.org/pmcr/main/0005-default-git-branch-rename.html
Related: https://gitlab.postmarketos.org/postmarketOS/postmarketos/-/issues/122
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
2026-03-15 12:39:44 +01:00
Mithil Bavishi 61001d4233 device/community: Update maintainer details
Use correct name and email address for devices I maintain

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8180>
2026-03-15 10:43:05 +00:00
Aster Boese fde59e75e1 linux-postmarketos-apple-{4,16}k: add note to modify at same time
Both the kernels are practially the same, with only one config option changed.
Thus, any changes done to one shall be done to the other.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7850>
2026-03-15 05:52:37 +01:00
Aster Boese b3ec402e42 linux-postmarketos-apple-{4,16}k: upgrade to 6.19.0 and sync kconfig
Upgrades both kernels to 6.19.0.

Syncs both kernel's kconfigs with kconfigcheck and enables the rust
kconfigcheck category. Rust is enabled as future-proofing in-case pmOS enables
a Rust option so devices can be tested with Rust enabled beforehand.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7850>
2026-03-15 05:51:44 +01:00
Aster Boese d7ee136f4e testing/m1n1-apple-idevice: upgrade to 1.5.0_git20250208
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7850>
2026-03-14 21:31:23 +01:00
Clayton Craft f6a9e0e277 systemd/postmarketos-base-systemd: update list of maintainers
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8162>
2026-03-14 14:46:15 +00:00
Aelin 1f12afeeea cross/systemd-boot-x86: upgrade to 259.5
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8177>
2026-03-14 11:32:10 +00:00
Aelin a3e0b0db8d ci: Require maintainers for new packages
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8171>
2026-03-14 11:23:21 +00:00
Aelin 0acec3c456 linux-postmarketos-lts: Upgrade to 6.18.18
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8173>
2026-03-14 06:53:37 +00:00
Aelin a7d875d095 linux-postmarketos-stable: Upgrade to 6.19.8
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8172>
2026-03-13 22:16:08 +01:00
postmarketOS CI b79395e612 linux-next: upgrade to next-20260313 2026-03-13 16:38:28 +00:00
polyfloyd 37569a73bd Add new kconfig flags for Docker
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8002>
2026-03-13 15:36:07 +00:00
Aelin 14b19d975c linux-postmarketos-lts: Upgrade to 6.18.17
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8160>
2026-03-13 15:11:02 +00:00
Aelin cc8396b5d0 linux-postmarketos-stable: Upgrade to 6.19.7
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8159>
2026-03-13 15:07:50 +00:00
Aelin 577667f338 kconfigcheck: BPF_LSM depends on SECURITY
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8168>
2026-03-13 13:01:48 +00:00
Achill Gilgenast 58e2497f91 systemd/gnome-logs: upgrade to 50.0
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8167>
2026-03-13 11:18:58 +00:00
Aelin 59915347fa systemd/systemd-stage0: upgrade to 259.4
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8164>
2026-03-13 11:16:58 +00:00
Aelin a82fcd42d9 systemd/systemd: upgrade to 259.4
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8164>
2026-03-13 11:16:58 +00:00
Raymond Hackley 7cc1def416 linux-postmarketos-qcom-msm8226: add zinitix touchscreen and regulator haptic for ms013g
Manual kconfig changes:
* CONFIG_INPUT_REGULATOR_HAPTIC=m
* CONFIG_TOUCHSCREEN_ZINITIX=m

Link: https://lore.kernel.org/r/20240630132859.2885-3-raymondhackley@protonmail.com
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7299>
2026-03-13 07:30:09 +00:00
postmarketOS CI 7ccf25268d linux-next: upgrade to next-20260312 2026-03-13 05:38:35 +00:00
Aelin a81bd1f150 cross/systemd-boot-x86: upgrade to 259.4
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8165>
2026-03-12 20:20:31 +00:00
Pablo Correa Gómez 2e12f24b15 docs: add documentation on how hw-ci integration works in this repo
[ci:skip-vercheck] gitlab-ci.yml.j2 files changed

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez cb182b59ca ci: don't set the CI_TRON_KERNEL_CMDLINE__DEVICEINFO globally
This breaks the oneplus-fajita, since its own console argument is not
picked. And the other options don't make sense there anyway.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez ee7c30c4f6 ci: skip "docs" folder as part of get_changed_packages test
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez cd91997729 main/postmarketos-initramfs: don't halt execution if IN_CI
This is already done in the CI hook

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez 37980a2ac7 main/postmarketos-test: add myself as Co-Maintainer
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez e510376e8b main/postmarketos-mkinitfs-hook-ci: add myself as Co-Maintainer
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez 61f52ad05c main/postmarketos-mkinitfs-hook-ci: halt booting process after finishing
This is currently done in the initramfs itself, and there's no need to
leak that information, so follow-up commits will remove it from the
initramfs.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez 864a894594 main/bootrr: upgrade to git20240706
Which includes the patches we were carrying

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:32 +00:00
Pablo Correa Gómez 3fd2bd3660 main/bootrr: drop now-unused pmtest subpackage
This allows to upstream the package to alpine, and makes the logic
more consistent.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:32 +00:00
Pablo Correa Gómez c987bdece9 device/*: depend on postmarketos-test-bootrr in pmtest subpackages
Which is more consistent and avoids requiring bootrr in pmaports

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:29 +00:00
Pablo Correa Gómez 733dde2963 main/postmarketos-test: document a bit the split function
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:29 +00:00
Pablo Correa Gómez 8283f0002a main/postmarketos-test: add bootrr subpackage
Taking the files from the bootrr package. This will allow us to move
the package to alpine in the future, also to, in follow-up commits,
make the use of the postmarketos-test package consistent.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:25 +00:00
Pablo Correa Gómez 5a4a943e9a main/postmarketos-test: let tests add additional files to the initramfs
This will be used in follow-up commits to bring in more tests from
other packages in pmaports

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:22 +00:00
Pablo Correa Gómez 4dbd727be9 main/postmarketos-test: do not hardcode 90 as a prefix for _test function
Instead, use shell globbing to find the corresponding file. This
allows using the function for the -unl0kr subpackage, and improves the
consistency between the filenames

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:18 +00:00
Pablo Correa Gómez f6266abc12 main/postmarketos-test: remove support for unused rootfs tests
When we create rootfs tests, they will involve more complex scenarios
that might not be fit for this simple packaging and shell
scripts. Therefore, remove it to simplify developing initramfs tests

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:15 +00:00
Pablo Correa Gómez ac541f7afb ci: small simplification in generate_build_jobs
We don't need to check against "is_present_in_ci", since we already
did not consider devices that did not have a gitlab_ci_fragment

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:12 +00:00
Pablo Correa Gómez 51bce1ca99 ci: rename single-runner-defined-in-ci-common-with-vmlinuz-kernel-variant.yml.j2
Since 2056701d6c there's no kernel
variant!

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:08 +00:00
Pablo Correa Gómez 53522ff505 ci: add an explanatory comment to qcom ci-tron kernel cmdline variable
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:08 +00:00
Pablo Correa Gómez a74918cca6 ci: define the kind of tests to run in each jinja template
This is the main entrypoint to understand what tests each device is
running. Therefore, it avoids one extra level of indirection, and
allows for different devices to run different kind of tests in the
future.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:08 +00:00
Luca Weiss 23f13c2384 linux-postmarketos-qcom-msm8226: build with LLVM & update config per kconfigcheck
Migrate the compiler to LLVM toolchain and update config as per required
and preferred config options by kconfigcheck.

Update the APKBUILD to follow some more recent standards as well.

And similar to linux-postmarketos-qcom-msm8974, activate
CONFIG_CC_OPTIMIZE_FOR_SIZE and CONFIG_KERNEL_XZ to get the kernel a bit
smaller again.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7539>
2026-03-12 20:12:32 +01:00
Stefan Hansson cfff222fb2 CI: Add mypy check
Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7960>
2026-03-12 18:53:15 +00:00
Stefan Hansson 38434fbed9 CI: lib/generate_build_jobs.py: Fix type error
Caught by mypy.

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7960>
2026-03-12 18:53:15 +00:00
AelinandPablo Correa Gómez 0e41c1bcbd docs: Add documentation on firmware packaging
Add firmware packaging guidelines to the documentation. The goal behind
this was to make it so that it is very clear which packaging method is
preferred for which cases to avoid fragmentation and inconsistency in
pmaports packaging.

Co-authored-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8161>
2026-03-12 18:42:59 +00:00
Dang Huynh 160da0aa81 linux-pine64-pinetab2: Upgrade to 6.19.6
Signed-off-by: Dang Huynh <dang.huynh@mainlining.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8158>
2026-03-12 18:20:43 +00:00
Clayton Craft ef30e86f09 kconfigcheck: add additional kconfig requirements for systemd
From: https://github.com/systemd/systemd/blob/main/README

All of these config options are bool, hence why they are set to "y".
Kernels will also need to add pahole to the makedepends to support BPF.

fixes #3769

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6707>
2026-03-12 18:11:11 +00:00
Aelin 6520fb5c9f linux-postmarketos-lts: Temporarily patch for LLVM-only build on ppc64le
See previous commit for details

[ci:skip-vercheck]: let's not rebuild all the architectures when we're
only touching ppc64le that isn't building in BPO

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8072>
2026-03-12 17:37:30 +00:00
Aelin c99c4271d7 linux-postmarketos-stable: Temporarily patch for LLVM-only build on ppc64le
See previous commit for details

[ci:skip-vercheck]: let's not rebuild all the architectures when we're
only touching ppc64le that isn't building in BPO

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8072>
2026-03-12 17:37:30 +00:00
Aelin ab005ffc19 linux-postmarketos-mainline: Temporarily patch for LLVM-only build on ppc64le
The PowerPC boot wrapper script in Linux currently requires a GNU
cross toolchain in PATH. This went unnoticed because we currently always
install GCC for native builds, but since recently only install a cross
GCC toolchain if clang is not used to build.

Indeed, we want to only build the kernel with clang and LLVM binutils.
There has been some discussion around fixing this in the past, and
Nathan Chancellor has written some patches that do fix it, but has
apparently not submitted them because the VDSO may require further
changes. I've followed up on the mailing list and asked about the
possibility to submit the patches without reworking the VDSO, since it
fixes this particular usecase nonetheless.

I've also considered installing the cross GCC package in the APKBUILD,
but that's not possible because pmbootstrap cannot evaluate conditional
dependencies. As it stands, we *need* to patch the kernel to get it
building, or revert the pmbootstrap patch, which I really want to avoid.
I'll do my best to get these patches integrated upstream.

[ci:skip-vercheck]: let's not rebuild all the architectures when we're
only touching ppc64le that isn't building in BPO

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8072>
2026-03-12 17:37:30 +00:00
Aelin cbad33f921 docs: generic-kernels: Allow cherry-picking patches to fix compilation
In the case that the compilation is broken, it is not possible to wait
until a patch is merged upstream to fix it. We want to be able to patch
the kernels temporarily while also ensuring the fixes make it upstream.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8072>
2026-03-12 17:37:30 +00:00
Clayton Craft 0f0b8ceaa2 main/postmarketos-zram: override vm.min_free_kbytes if >= 1GB RAM
Without a sufficient vm.min_free_kbytes value, the kernel may not start
reclaiming memory early enough to make use of zram swap before the
kernel OOM killer fires. Set a minimum of 100000 KB on devices with >=
1GB of RAM where the kernel's calculated value is lower.

This ignores devices with <1GB of RAM, because I think with so little
RAM isn't unlikely to really matter and if we set this too high then we
risk insta-OOMs.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8157>
2026-03-12 15:55:24 +00:00
Clayton Craft b383547b54 systemd/postmarketos-base-systemd: lower system limit for journald
This sets the max disk space used by journald logs to 1GB (systemd
default is 4GB). This seems like a good trade-off between having access
to more older logs in case there are transient issues that need debug
or we need to understand system behavior long term, and not filling too much
space on devices with little storage.

If a device is really constrained for space, the device package
can ship an override file in journald.conf.d to lower this limit
even further. Users/system admins can also override this value in
/etc/systemd/journald.conf.d.

Fixes #4389

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8156>
2026-03-12 15:51:58 +00:00
Clayton Craft 3df5cc176b docs: document kconfig fragment usage for kernel maintainers
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7606>
2026-03-11 17:27:20 -07:00
postmarketOS CI 94b8e2cdb4 linux-next: upgrade to next-20260311 2026-03-11 16:45:23 +00:00
Robert EckelmannandAster Boese 32493ba680 device-xiaomi-beryllium: disable quiet
similiar to !7953 this might also help on beryllium

Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Co-authored-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7955>
2026-03-11 22:53:52 +09:00
Clayton Craft 5d3d7cebcf systemd/systemd: enable initrd units
For using systemd in the duranium initramfs. This should have no impact
on mutable pmOS, other than some extra (unused) units being installed
in the rootfs. This does not switch mutable pmOS to using systemd in
the initramfs.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8125>
2026-03-11 07:36:50 +00:00
postmarketOS CI 6c928e6db4 linux-next: upgrade to next-20260310 2026-03-11 05:38:32 +00:00
Clayton Craft d56116026b systemd/systemd: Replace maintainers Jane & Casey with Clayton & Achill
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8153>
2026-03-10 22:34:17 +00:00
Aelin 203f6fdb0f linux-postmarketos-mainline: Upgrade to 7.0_rc3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8148>
2026-03-10 20:08:39 +00:00
icy d2d2f6bede linux-postmarketos-qcom-msm89x7: Enable RTL8XXXU Wi-Fi driver
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8127>
2026-03-10 19:02:58 +00:00
Cédric Bellegarde 66ddffc718 soc-qcom: Always restart call-audio-idle-suspend-workaround
When a graphical session is stopped while connected via SSH, the
dbus-monitor process is killed and the service is marked as failed.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8149>
2026-03-10 18:58:39 +00:00
H3 75b279265c [samsung-jfvelte] fix boot image size
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8147>
2026-03-10 15:34:48 +00:00
postmarketOS CI 84328af8e1 linux-next: upgrade to next-20260309 2026-03-10 05:38:38 +00:00
WeirdTreeThing b8db607046 device-xunlong-orangepi5-plus: add nvme and hid_generic to initfs
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8146>
2026-03-09 16:04:17 +00:00
Kszyś efe90148eb samsung-a52sxq: new device
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8013>
2026-03-09 15:55:34 +00:00
Oliver Smith 9fae52605b systemd/postmarketos-base-systemd: add phosh-tour preset
Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8145>
2026-03-09 15:47:49 +01:00
Oliver Smith 61382834c1 main/postmarketos-ui-phosh: recommend phosh-tour
Put phosh-tour in pmb_recommends instead of having postmarketos-welcome
indirectly installed by default through
postmarketos-base-ui-gnome-mobile. In order to do that, move
postmarketos-welcome from the pmb_recommends of
postmarketos-base-ui-gnome-mobile to postmarketos-ui-gnome-mobile.

The reasons for that is that the postmarketos-welcome app by now has
in part incomplete and outdated explanations about how phosh shall be
used. For example, a common question that we don't answer but phosh-tour
does is how the keyboard can be launched from any app.

The postmarketos-welcome app warns more about that this is an
experimental system, but that is prominently displayed on our homepage
when trying to download images. Otherwise it also doesn't contain much
information that makes it worth keeping instead of phosh-tour.

Finally phosh upstrem has also said that they would be willing to have
distro-specific tour pages, so if we notice that something would be
really good to have there in the long run, we could look into getting it
in phosh-tour.

[ci:skip-vercheck]: changing pmb_recommends doesn't need rebuilds

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8145>
2026-03-08 20:54:00 +01:00
hexaheximal 6034b0b06d device-odroid-n2plus: fix u-boot path
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8143>
2026-03-08 13:19:06 -04:00
Oliver Smith 12e42c192f docs/generic-device-packages: new page
Start the documentation for generic device packages and document how to
handle device-specific services. This is a question that came up in the
review of PMCR-0009 (new main device category).

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8122>
2026-03-08 16:40:45 +00:00
Oliver Smith 31a4d7ae92 device-zhihe-generic: rename from device-generic-zhihe
This was the only package starting with "device-generic-" that did not
end in an architecture name, which means it is not generic for that
architecture. Rename this package, so we can define all packages
starting with "device-generic-" as Generic Device Packages and document
guidelines for making these types of packages consistent.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8122>
2026-03-08 16:40:45 +00:00
Biswapriyo Nath 92886d24bf device-nokia-panther: move to archive
nokia-panther works with qcom-msm89x7 linux kernel v6.19.3-r0 (!8081) and lk2nd 22.0 (!8073)

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8095>
2026-03-08 16:38:06 +00:00
Aelin f2ee4a42c6 systemd/systemd-stage0: upgrade to 259.3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8128>
2026-03-08 16:28:24 +00:00
Aelin ccbe51263a systemd/systemd: upgrade to 259.3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8128>
2026-03-08 16:28:24 +00:00
Bart Ribbers 3af802b59c systemd/plasma-login-manager: set minimum UID to filter out system accounts
Without this set it will consider way more accounts than user accounts
as accounts you can log into and show them, which is obviously wrong.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8140>
2026-03-08 12:56:03 +00:00
Achill Gilgenast 28a0b4c382 systemd/postmarketos-repo-nightly: new aport
Allows easier installation of nightly repositories with e.g. apk add
phosh-nightly && apk upgrade -Ua

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7807>
2026-03-08 13:30:16 +01:00
Achill Gilgenast 24681624eb docs: mention to open issues when a merge happend without maintainer response
See the meeting notes from the 2026-01-19:
(https://docs.postmarketos.org/policies-and-processes/governance/team-meetings/meeting-notes.html)

> Discussed pmaports!7770, possibly limiting the wait period for maintainer
> approval from 2 weeks to 1 week.
>
> We discussed to keep 2 weeks and make an issue template for “had to merge
> without maintainer review”, the new process will then be that the template
> gets filled out if a MR has to be merged without maintainer review after
> two weeks. The maintainer can then either say that they plan to review
> future merge requests, or indicate that they don’t want to maintain the
> thing anymore, or just not respond (which implies that they don’t want
> to maintain anymore). That way we should be able to get the listed
> maintainers to reflect reality better.
>
> Everyone reading this, please make sure you are not listed as maintainer
> for packages that you don’t plan to do reviews for anymore :)

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7770>
2026-03-08 11:07:53 +01:00
adamthiede e24f436706 linux-postmarketos-mediatek-mt8173: upgrade to 6.19.6
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8130>
2026-03-08 09:19:56 +00:00
Antoine Martin 41660ec3d2 u-boot-clockworkpi-uconsole-radxa-cm5: rename from u-boot-radxa-cm5
* refactor to only target uconsole
* add update-u-boot tool

[ci:skip-vercheck]: not new package

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7918>
2026-03-08 00:11:35 +00:00
Antoine Martin cf186ae56d linux-clockworkpi-uconsole-radxa-cm5: add uconsole drivers
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7918>
2026-03-08 00:11:35 +00:00
Antoine Martin 1d546198cc linux-clockworkpi-uconsole-radxa-cm5: move to downstream from archived, rename from linux-radxa
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7918>
2026-03-08 00:11:35 +00:00
Antoine Martin e6de1d0cc2 device-clockworkpi-uconsole-radxa-cm5: refactor to remove akms module
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7918>
2026-03-08 00:11:32 +00:00
Antoine Martin e193c5d1ed device-clockworkpi-uconsole-radxa-cm5: move from archived to downstream
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7918>
2026-03-08 00:11:32 +00:00
WeirdTreeThing bd4d5a5616 linux-postmarketos-rockchip-rk3588: drop package
This downstream kernel is no longer needed now that mainline supports RK3588 well.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8137>
2026-03-06 21:16:36 -05:00
WeirdTreeThing dc9c687ae0 device-xunlong-orangepi5-plus: switch to generic kernels
RK3588 has great mainline support now. Use the generic kernels instead of the outdated downstream fork.
Add more modules to the initramfs to support hdmi output with the generic config.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8137>
2026-03-06 21:14:59 -05:00
JustinandClayton Craft 5491bc9c04 main/unl0kr: upgrade to 3.5.1
This also adds support for building the unl0kr password agent for
systems running systemd.

Co-authored-by: Clayton Craft <craftyguy@postmarketos.org>
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6463>
2026-03-06 19:51:31 +00:00
Barnabás Czémán 6b9bf2c0d0 linux-postmarketos-qcom-msm89x7: Upgrade to v6.19.5-r0
Upgrade to v6.19.5-r0

Signed-off-by: Barnabás Czémán <barnabas.czeman@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8123>
2026-03-06 19:21:55 +00:00
Aelin 48c07c2d61 cross/systemd-boot-x86: upgrade to 259.3
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8129>
2026-03-06 17:03:41 +00:00
Jan Paszkowski 1590461e92 sony-pdx215: new device
For now, the phone generally boots from microsd, although ssh does not work. The only
UIs that manage to stay launched is lomiri and sxmo.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8103>
2026-03-06 16:53:59 +00:00
postmarketOS CI 28e8e7e558 linux-next: upgrade to next-20260306 2026-03-06 16:38:26 +00:00
Aster Boese b24a4ef1fd kconfigcheck: version gate MODULE_COMPRESS
MODULE_COMPRESS was added after the individual compression algorithm options.
As such, it needs a separate version set or any kernel below the version it
was added will fail kconfig check.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8131>
2026-03-06 10:53:34 +00:00
Achill Gilgenast 22a1e98c89 systemd/wireplumber: remove
systemd units are in Alpine and the only change is the logind module
being linked against libesystemd instead of libsystemd. But I don't
think that should be a problem.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7919>
2026-03-06 08:44:57 +00:00
postmarketOS CI b2c4bb7445 linux-next: upgrade to next-20260305 2026-03-05 16:40:25 +00:00
Robert Eckelmann e9d615eef9 device-asus-picasso: move to archived
acer-picasso is well supported by nvidia-tegra-armv7, having a dedicated
device package is not needed any more and only confuses people.

firmware-nvida-tegra-armv7 already includes the files for picasso.

Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8099>
2026-03-05 13:53:30 +00:00
Luca Weiss 219d21f332 device-fairphone-fp3: update kernel module name for panel driver
With Linux 6.19 we now use the upstream panel driver. Update the list
of modules to include in initramfs accordingly.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8126>
2026-03-05 10:38:17 +01:00
postmarketOS CI c08ad3997a linux-next: upgrade to next-20260304 2026-03-05 05:39:06 +00:00
Ferass El Hafidi 41982a51f0 linux-postmarketos-exynos4: make kconfig check happy
The following options need to be added as per kconfig checks:

	CONFIG_BLK_DEV_UBLK=m
	CONFIG_EROFS_FS_ZIP_LZMA=y
	CONFIG_EROFS_FS_ZIP_DEFLATE=y
	CONFIG_EROFS_FS_ZIP_ZSTD=y

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8109>
2026-03-04 19:23:14 +00:00
Ferass El Hafidi 96e0dfae9a linux-postmarketos-exynos4: add ISA1200 haptics support
It has been around for a while but wasn't enabled in the kernel config.
Add it so samsung-p4note gets working haptics.

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8109>
2026-03-04 19:23:14 +00:00
Aelin a15b601455 linux-postmarketos-lts: Upgrade to 6.18.16
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8121>
2026-03-04 18:21:12 +00:00
Aelin 578c43dbf8 linux-postmarketos-stable: Upgrade to 6.19.6
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8120>
2026-03-04 18:18:40 +00:00
Val Packett 1269a73318 systemd/mutter: add hotfix for external displays on Qualcomm devices
As this was recently applied upstream, apply to the forked package

Link: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4850
Link: https://gitlab.alpinelinux.org/alpine/aports/-/commit/732334134c9677994d622eb90cef9facd0fe47d9
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7909>
2026-03-04 14:21:22 -03:00
Pablo Correa Gómez cd934c19be docs: add initial packaging guidelines to explain providers
Relates https://gitlab.postmarketos.org/postmarketOS/docs.postmarketos.org/-/issues/18

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7875>
2026-03-04 16:26:14 +00:00
Bart Ribbers 5e6b299f02 systemd/plasma*: upgrade to 6.6.2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8118>
2026-03-04 14:27:42 +00:00
Pablo Correa Gómez 07087f8bd5 main/fbkeyboard: drop
This package should instead be in alpine

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7501>
2026-03-03 22:11:34 +01:00
Pablo Correa Gómez f1b572d289 main/postmarketos-ui-fbkeyboard: update maintainer
Robert Bloy already took maintenance of the fbkeyboard utility in
0431133641 and the former maintainer
does not have an account in our gitlab. So transfer maintainership.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7501>
2026-03-03 22:11:33 +01:00
Aelin 8c15baad17 main/postmarketos-ui-plasma-desktop: only depend on plasma-login-manager for systemd
By moving the dependency to the systemd subpackage and depending on sddm
for OpenRC installs, we fix OpenRC installs and unbreak the bootstrap
dependency cycle for the main and systemd repo.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8116>
2026-03-03 19:16:53 +00:00
Aelin 33f82fbc51 linux-postmarketos-mainline: Upgrade to 7.0_rc2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8114>
2026-03-03 18:59:58 +00:00
Barnabás Czémán 91ba3d89c2 device-qcom-msm8953: update panel drivers
Update panel drivers for support the new devices and follow changes in the kernel.

Signed-off-by: Barnabás Czémán <barnabas.czeman@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8112>
2026-03-03 18:38:26 +00:00
Barnabás Czémán 8933229820 firmware-qcom-msm8953: fix flipkart-rimob install path
billion-rimob was renamed to flipkart-rimob in the kernel,
fix the install path follow the change.

Signed-off-by: Barnabás Czémán <barnabas.czeman@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8112>
2026-03-03 18:38:26 +00:00
Barnabás Czémán ed3f995f94 linux-postmarketos-qcom-msm8953: upgrade to v6.19.5-r0
Upgrade to v6.19.5-r0

Signed-off-by: Barnabás Czémán <barnabas.czeman@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8112>
2026-03-03 18:38:26 +00:00
postmarketOS CI 096b7a521a linux-next: upgrade to next-20260303 2026-03-03 16:39:14 +00:00
Dang Huynh 41c27cedbd device-pine64-pinetab2: Change maintainer name to reflect myself
Signed-off-by: Dang Huynh <dang.huynh@mainlining.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8100>
2026-03-03 11:30:43 +00:00
Dang Huynh 8dcb66112c linux-pine64-pinetab2: Upgrade to 6.18.10
Signed-off-by: Dang Huynh <dang.huynh@mainlining.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8100>
2026-03-03 11:30:43 +00:00
Clayton Craft 853fdfd2a5 linux-postmarketos-asahi: upgrade to 6.18.15
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8115>
2026-03-02 20:10:25 +00:00
Aelin 973ce05104 systemd/systemd: upgrade to 259.2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8094>
2026-03-02 18:41:36 +00:00
Aelin baee8982ef systemd/systemd-stage0: upgrade to 259.2
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8094>
2026-03-02 18:41:36 +00:00
postmarketOS CI 11643e89d6 linux-next: upgrade to next-20260302 2026-03-02 16:38:29 +00:00
Eric Anderson a7cfc24c34 device-asus-flo: Fix cmdline bootloader workaround
The flo bootloader discards the first 26 characters of the kernel
cmdline. The conversion to the new kernel cmdline configuration in !7830
now causes "quiet" from 00-base.conf to be prefied before the xxxxx
padding workaround, which caused the effective cmdline to begin
"xxxxxxconsole=ttyMSM0,115200,n8" (quiet discarded, and console no
longer would parse). Putting the xxxxx workaround in a file that sorts
before 00-base.conf causes the intended characters to be discarded.

The number of xxx's changed from 26 to 25 because now there will be a
space following the string.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8111>
2026-03-02 14:23:10 +00:00
Bart Ribbers 1a4d7b642c systemd/sddm: drop
We use plasma-login-manager on systemd installations with Plasma desktop
now, there is no need to keep a systemd version of SDDM around.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8079>
2026-03-02 14:31:13 +01:00
Bart Ribbers 654c9c242a systemd/plasma-login-manager: new aport
We're using it as a SDDM replacement

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8079>
2026-03-02 14:31:13 +01:00
Yassine Oudjana 4323e7ecdd firmware-xiaomi-scorpio: add sns.reg
Add file needed by Qualcomm Sensor Registry.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7264>
2026-03-02 11:35:30 +00:00
Yassine Oudjana 6276f81baa device-xiaomi-scorpio: update device package
Add bootmac needed for initializing Bluetooth MAC address and remove
no longer needed GPU workaround.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7264>
2026-03-02 11:35:30 +00:00
Yassine Oudjana 81d4ff749e linux-postmarketos-qcom-msm8996: upgrade to 6.19.5
Switch to LLVM to enable CFI and pass kconfig check.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7264>
2026-03-02 11:35:30 +00:00
Stefan Hansson cdab235aba linux-postmarketos-qcom-msm8974: Fix kconfig
Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7718>
2026-03-02 08:11:53 +00:00
Vishwas Rajashekar 6f4197893b linux-postmarketos-qcom-msm8974: enable driver module for max17050 fuel gauge
Signed-off-by: Vishwas Rajashekar <dev@vrajashkr.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7718>
2026-03-02 08:11:53 +00:00
Vishwas Rajashekar 8e65bd98aa device-samsung-lt03lte: add new device lt03lte
Add support for the Samsung Galaxy Note 10.1 2014 LTE.

Signed-off-by: Vishwas Rajashekar <dev@vrajashkr.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7718>
2026-03-02 08:11:53 +00:00
Aelin b3d48deb9c systemd/plasma*: re-enable riscv64
[ci:skip-vercheck]: re-enabling package for arch

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8110>
2026-03-01 19:13:52 +01:00
304 changed files with 30223 additions and 5495 deletions

No files matched your search

+3 -9
View File
@@ -82,13 +82,13 @@ build:
# Include all the devices that need and can to be tested
{% for device in devices_under_test if device.is_present_in_ci %}
{% for device in devices_under_test %}
prepare-{{ device.name }}:
stage: hardware tests
extends:
.pmos-ci-tron-build-boot-artifacts
{%- if device.has_kernel_variants %}
# Let's build all the boot artifacts for all the supported kernel variants in
# Build all the boot artifacts for all the supported kernel variants in
# different jobs, but hide them behind a single job name so as not to pollute
# the pipeline.
parallel:
@@ -112,10 +112,8 @@ prepare-{{ device.name }}:
.test-{{ device.name }}:
stage: hardware tests
extends:
- .pmos-ci-tron-initramfs-test
{%- if device.has_kernel_variants %}
# Let's test all the kernels in different jobs, but hide them behind a single
# Test all the kernels in different jobs, but hide them behind a single
# job name so as not to pollute the pipeline.
parallel:
matrix:
@@ -135,10 +133,6 @@ prepare-{{ device.name }}:
{%- endif %}
variables:
CI_TRON__PMB_BUILD_JOB: "prepare-{{ device.name }}{% if device.has_kernel_variants %}: [$KERNEL_VARIANT]{% endif %}"
# FIXME: cmdline is hardcoded here, but ideally would be built from
# fragments using generate-kernel-cmdline...
# See: https://gitlab.freedesktop.org/gfx-ci/ci-tron/-/issues/317
CI_TRON_KERNEL_CMDLINE__DEVICEINFO: 'console=tty1 console=ttyS0,115200 PMOS_FORCE_PARTITION_RESIZE psi=1'
# Include the gitlab ci yml fragment, as found in
# `device/$category/device-$devicename/gitlab-ci.yml.j2` which defines the jobs
+11
View File
@@ -129,6 +129,17 @@ if [ -n "$CI_MERGE_REQUEST_DIFF_BASE_SHA" ]; then
exit_code=1
fi
fi
# Disallow adding packages without a maintainer set
NEW_APKBUILDS=$(git show --pretty="" --name-only --diff-filter=A "$CI_MERGE_REQUEST_DIFF_BASE_SHA"..HEAD | grep APKBUILD || true)
if [ -n "$NEW_APKBUILDS" ]; then
if [ -n "$(grep -L '^maintainer="[^"]\+"$' $NEW_APKBUILDS || true)" ]; then
echo "ERROR: A new package does not have a maintainer set."
grep --color=always -L '^maintainer="[^"]\+"$' $NEW_APKBUILDS
exit_code=1
fi
fi
fi
exit "$exit_code"
+8 -1
View File
@@ -139,7 +139,14 @@ def get_changed_packages(skip_archived: bool = False):
# Skip files:
# * in the root dir of pmaports (e.g. README.md)
# * path with a dot (e.g. .ci/, device/.shared-patches/)
if not dirname or file.startswith(".") or "/." in file or skip_archived and dirname.startswith("device/archived"):
# * documentation
if (
not dirname
or file.startswith(".")
or "/." in file
or skip_archived and dirname.startswith("device/archived")
or dirname == "docs"
):
continue
if filename != "APKBUILD":
+2 -6
View File
@@ -44,10 +44,6 @@ class Device:
return Template(fragment_tmpl).render(device=self)
@property
def is_present_in_ci(self):
return bool(self.gitlab_ci_fragment)
@cached_property
def pmaports_path(self) -> Path:
# Find the root of pmaports
@@ -77,7 +73,7 @@ class Device:
return {"postmarketos-mkinitfs-hook-ci"}
@cached_property
def package_dependencies(self) -> list[str]:
def package_dependencies(self) -> set[str]:
# HACK: Work around a bug in depends_recurse which prevents listing all the dependencies
# Bug: https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/issues/2623
return {"postmarketos-initramfs"}
@@ -129,7 +125,7 @@ class Device:
dev = cls(device.codename)
# Ignore devices that do not have a gitlab ci fragment,
# since we won't be able to make use of them
# since adding that fragment is how we mark them as DUTs
if not dev.gitlab_ci_fragment:
continue
Executable
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh -e
# Description: static type checking for python scripts
# https://postmarketos.org/pmb-ci
if [ "$(id -u)" = 0 ]; then
set -x
apk -q add py3-argcomplete py3-pip py3-pytest
exec su "${TESTUSER:-build}" -c "sh -e $0"
fi
set -x
pip install --break-system-packages --no-warn-script-location mypy
# Need to change directory for pyproject.toml to be picked up.
cd .ci
python -m mypy .
+2
View File
@@ -0,0 +1,2 @@
[tool.mypy]
disable_error_code = ["import-not-found"]
+12
View File
@@ -62,6 +62,18 @@ ruff:
- .ci/lib/gitlab_prepare_ci.sh
- .ci/ruff.sh
# testcases typechecking
mypy:
stage: lint
rules:
- if: *mr_rule
changes:
- .ci/**/*
- .gitlab-ci.yml
script:
- .ci/lib/gitlab_prepare_ci.sh
- .ci/mypy.sh
# shellcheck and various grep checks
shellcheck-grep:
stage: lint
@@ -0,0 +1,11 @@
<!-- Use this template to kick off the discussion for a package with (presumably)
inactive maintainers and the future for the maintainership of the package.
-->
### Information
* Package name:
* Maintainers of the package:
* MR that had no maintainer response, if applicable:
/label ~maintainership-status
+1 -1
View File
@@ -4,7 +4,7 @@ recommended=edge
[edge]
description=Rolling release / Most devices / Occasional breakage: https://postmarketos.org/edge
branch_pmaports=master
branch_pmaports=main
branch_aports=master
mirrordir_alpine=edge
+2 -2
View File
@@ -2,7 +2,7 @@
maintainer=""
pkgname=systemd-boot-x86
_pkgname=systemd-boot # for monitoring
pkgver=259.2
pkgver=259.5
pkgrel=0
pkgdesc="systemd's EFI boot manager for x86 EFI on x86_64."
url="https://systemd.io/"
@@ -118,7 +118,7 @@ efistub() {
}
sha512sums="
1cb677c98a56210948bfc9a6e296aa92dde030ceeca6b6e4fe3f4014d051f4d0f1d83584cfdceb921d7d578952b85112b2ba497385faefca4d6c871bf8de48cf systemd-259.2.tar.gz
cb76b3a11b400fea94de2be74bcd9178b2e986c1965cbc19824114fe14fdd9b6aed43ae325cf5bc505efa1333adc71e131e0a8b54519e6741baa090392bf0a98 systemd-259.5.tar.gz
8ecb5e25c0d8b01c406fa3084b0910d517cabbf12894958b4d3d77462cb0924f0a52fe2bf1aa39af29b16fd78fe080a6a99daa18015c6059fb2e52c971d83ba9 0001-meson-disable-libintl-check-if-pam-is-disabled.patch
ad54e2c7e7a21bfa9b5f9e8db1b6af6a6d78a3e5dfe2dafcec77488f6224865ab4d4c8a8c8ee1c54c99d1741361e9fb3a51e5d36bcbc7a1c3fdcc4d0c1672132 cross-x86.meson
"
@@ -9,6 +9,7 @@ test-{{ device.name }}:
extends:
# Extended from jobs defined in ci-common/ci-tron/common.yml
- .pmos-ci-tron-runner-{{ device.name }}
- .pmos-ci-tron-initramfs-test
# Extended from build-jobs.yaml.j2
- .device-boot-flow-separate-artifacts
@@ -28,4 +29,6 @@ test-{{ device.name }}:
CI_TRON_FASTBOOT__RAMDISK_OFFSET: 0x01000000
CI_TRON_FASTBOOT__TAGS_OFFSET: 0x00000100
CI_TRON_FASTBOOT__PAGESIZE: 4096
# Devices should not have the serial console enabled, but we want it
# to be able to get logs. And all qcom devices use the same one!
CI_TRON_KERNEL_CMDLINE__CONSOLE: "console=ttyMSM0,115200"
@@ -10,7 +10,13 @@ test-{{ device.name }}:
extends:
# Extended from jobs defined in ci-common's ci-tron/common.yml
- .pmos-ci-tron-runner-{{ device.name }}
- .pmos-ci-tron-initramfs-test
# Extended from build-jobs.yaml.j2
- .device-boot-flow-separate-artifacts
- .test-{{ device.name }}
variables:
# FIXME: cmdline is hardcoded here, but ideally would be built from
# fragments using generate-kernel-cmdline...
# See: https://gitlab.freedesktop.org/gfx-ci/ci-tron/-/issues/317
CI_TRON_KERNEL_CMDLINE__DEVICEINFO: 'console=tty1 console=ttyS0,115200 pmos.force-partition-resize psi=1'
@@ -1,8 +1,9 @@
# Archived: replaced by device-nvidia-tegra-armv7
# Reference: <https://postmarketos.org/devicepkg>
maintainer=""
pkgname=device-acer-picasso
pkgdesc="Acer Iconia Tab A500"
pkgver=4
pkgver=5
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -1,147 +0,0 @@
# Archived: linux-radxa-dev packages x86_64 binaries in aarch64 package which makes akms part of this device fail when built on aarch64
# Reference: <https://postmarketos.org/devicepkg>
maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=device-clockworkpi-uconsole-radxa-cm5
pkgdesc="Clockwork Tech ClockworkPi uConsole Radxa CM5"
pkgver=6
_commit=2e8040ec92f85e3d43caf3e44557cb0659db4531
_dtso_commit=c2204834e1d7d0acfd64e1b7874d432bc142f1a4
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!archcheck"
depends="
linux-radxa
postmarketos-base
u-boot-radxa-cm5
"
makedepends="
devicepkg-dev
clang
dtc
linux-radxa
linux-radxa-dev
"
subpackages="
$pkgname-openrc
$pkgname-x11
$pkgname-akms
"
source="
clockworkradxa-linux-$_commit.tar.gz::https://github.com/ak-rex/ClockworkRadxa-linux/archive/$_commit.tar.gz
radxa-cm5-uconsole-$_dtso_commit.tar.gz::https://github.com/dev-null2019/radxa-cm5-uconsole/archive/$_dtso_commit.tar.gz
deviceinfo
kernel-cmdline.conf
modules-initfs
modules-load.conf
modprobe.conf
xorg.conf
driver-makefile.in
driver-akmbuild.in
"
builddir="$srcdir"/ClockworkRadxa-linux-$_commit
# Location of out-of-tree drivers to be built using AKMS
_drivers="
drivers/pinctrl/pinctrl-axp209.c
drivers/power/supply/axp20x_usb_power.c
drivers/iio/adc/axp20x_adc.c
drivers/iio/adc/ti-adc081c.c
drivers/mfd/axp20x-i2c.c
drivers/mfd/axp20x.c
drivers/regulator/axp20x-regulator.c
drivers/input/misc/axp20x-pek.c
drivers/power/supply/axp20x_ac_power.c
drivers/power/supply/axp20x_battery.c
drivers/video/backlight/ocp8178_bl.c
drivers/gpu/drm/panel/panel-cwu50.c
"
build() {
devicepkg_build $startdir $pkgname
local _modules=
local _objects=
local _file=
# setup akms folder
# this also generates information to complete AKMBUILD and Makefile
mkdir -p "$builddir"/akms
for driver in $_drivers; do
_file=${driver##*\/}
cp "$builddir"/$driver "$builddir"/akms/$_file
_modules="$_modules ${_file/.c/.ko}"
_objects="$_objects ${_file/.c/.o}"
done
sed -e "s/%%MODVER%%/$pkgver/" -e "s/%%DRIVER_MOD%%/$_modules/" "$srcdir"/driver-akmbuild.in > "$builddir"/akms/AKMBUILD
sed "s/%%DRIVER_OBJ%%/$_objects/" "$srcdir"/driver-makefile.in > "$builddir"/akms/Makefile
# generate dtbo for uconsole
_kernel_ver=$(find /lib/modules -maxdepth 1 -mindepth 1 | sed 's|.*/||g')
cp -r "$srcdir"/radxa-cm5-uconsole-$_dtso_commit/devicetree_overlays "$builddir"/dtso
echo ">>> Generating dtbo against $_kernel_ver"
for dts in "$builddir"/dtso/*.dts; do
cpp -nostdinc -I "/usr/src/linux-headers-$_kernel_ver/include" -I arch -undef -x assembler-with-cpp $dts $dts.preprocessed
dtc -O dtb -o ${dts/.dts/.dtbo} $dts.preprocessed
done
}
x11() {
install_if="$pkgname xorg-server"
install -Dm644 "$srcdir"/xorg.conf \
"$subpkgdir"/etc/X11/xorg.conf.d/10-monitor.conf
}
package() {
devicepkg_package $startdir $pkgname
# merge dtbos with soc dtb for uconsole
mkdir -p "$pkgdir"/boot/dtbs/rockchip
fdtoverlay -i /boot/dtbs/rockchip/rk3588s-radxa-cm5-rpi-cm4-io.dtb "$builddir"/dtso/*.dtbo -o "$pkgdir"/boot/dtbs/rockchip/rk3588s-radxa-cm5-uconsole.dtb
}
# Test build of drivers against kernel
check() {
_kernel_ver=$(find /lib/modules -maxdepth 1 -mindepth 1 | sed 's|.*/||g')
for ver in $_kernel_ver; do
echo ">>> Testing module build against $ver"
cp -R "$builddir"/akms "$builddir"/akms-$ver
(
cd "$builddir"/akms-$ver
make KVER=$ver
)
done
}
akms() {
pkgdesc="uConsole kernel module (AKMS)"
depends="akms linux-radxa-dev build-base"
install_if="$pkgname=$pkgver-r$pkgrel"
mkdir -p "$subpkgdir"/usr/src
cp -R "$builddir"/akms "$subpkgdir"/usr/src/clockworkpi-radxa
chmod -R u=rwX,go=rX-w "$subpkgdir"/usr/src/clockworkpi-radxa
}
openrc() {
depends=openrc
install_if="$pkgname=$pkgver-r$pkgrel openrc"
install="$subpkgname.post-install $subpkgname.post-upgrade"
mkdir -p "$subpkgdir"
}
sha512sums="
a9c48c3470d5641113e351456d6cfa1e2283e6577cf54eea9a2d49ba4f6269e46cba16039584b34e07c7d8006f6dec112e970148f155f2c3ff0670521568a5a7 clockworkradxa-linux-2e8040ec92f85e3d43caf3e44557cb0659db4531.tar.gz
a15eb74d9db9114022e96ba04542d18350cf6d637c5efa49f4a5a65c33c5fd20a7997095a049a561fb7aac767a299f367489c5a342138a5259cc32ebb6152384 radxa-cm5-uconsole-c2204834e1d7d0acfd64e1b7874d432bc142f1a4.tar.gz
0afdcebb4b42ab9d489bfeb32912f03de0ee30875eba760112b24def4bb04185eca5f827c737da4824081940ec998c2c26a99e9105267e90e9d852b0afa76539 deviceinfo
fa6332b91b62572528b1f919370382d67f521b0a65c3c9f416df67545ebae7b01f31729340a42e656b5589cdbde676ec8fe0eb9537a34e02ec20f5309bf43b12 kernel-cmdline.conf
85d573bfd51ac4aa502336452b0384af77b6ec095f5c4760e8f287b8452b3ccb4521051bc01c53fa0856440d52231f535f3f0258d62ad578161ad464344413e9 modules-initfs
642cdb1b4ac02b8c3ab7b72f4eeef615ac4911b42bcd845b54305f0ff64c07b86f4a807a97d395cb6c0cd0a5f5eed15e68d9e4ccb69db8e38fb65c8be4acaeeb modules-load.conf
a5324ed5118168b846d359dc2c8e76ccdc624003d157a28e4c9728ddedd9b52c6deb95af9c3a9d94faf52413f2f830dc45ec6c0093458d27149ef17de5dceef5 modprobe.conf
939cb4ca50e0f54258dd92bdfbf91e6fa7b33b386022d058ba0d4b4e4f6d855cba9f5fffda0652f18c8b9b95d5dbbfc766e0931f0de53841f96d9d8975bf27e7 xorg.conf
51a1fc5ba9336e784fe8dfb97eed8d3f51fd181a9a76c5266e227e1670aa423fdaec04b869795a2abd5afca6d472a1f107f30a0f0efd242ee16c8910773ddcc2 driver-makefile.in
576346f3e5611dcba4fd3a5f5bf97e51febb844ff8006b5e4e8aba429df0c1835f702548d61120439cf0279b56d337f4ab9e2389ae8fa0c024b0a3afd4422b2f driver-akmbuild.in
"
@@ -1,26 +0,0 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell scripts.
deviceinfo_format_version="0"
deviceinfo_name="Clockwork Tech ClockworkPi uConsole Radxa CM5"
deviceinfo_manufacturer="Clockwork Tech"
deviceinfo_codename="clockworkpi-uconsole-radxa-cm5"
deviceinfo_year="2023"
deviceinfo_arch="aarch64"
deviceinfo_disable_dhcpd="true"
# Device related
deviceinfo_drm="true"
deviceinfo_chassis="embedded"
deviceinfo_external_storage="true"
deviceinfo_screen_width="1280"
deviceinfo_screen_height="720"
deviceinfo_getty="ttyFIQ0;1500000"
# Bootloader related
deviceinfo_boot_filesystem="fat32"
deviceinfo_dtb="rockchip/rk3588s-radxa-cm5-uconsole"
deviceinfo_sd_embed_firmware="u-boot/radxa-cm5/rpi-cm4-io/idbloader.img:64,u-boot/radxa-cm5/rpi-cm4-io/u-boot.itb:16384"
deviceinfo_sd_embed_firmware_step_size="512"
deviceinfo_boot_part_start="32768"
deviceinfo_generate_extlinux_config="true"
@@ -1,3 +0,0 @@
modname=clockworkpi-radxa
modver=%%MODVER%%
built_modules='%%DRIVER_MOD%%'
@@ -1,10 +0,0 @@
obj-m += %%DRIVER_OBJ%%
USER := $(shell whoami)
KVER ?= $(shell uname -r)
KDIR ?= /lib/modules/$(KVER)/build
all:
make -C $(KDIR) M=$(PWD) modules
clean:
make -C $(KDIR) M=$(PWD) clean
@@ -1,6 +1,7 @@
# Archived: Downstream port, only for testing. Use mainline port (qcom-msm89x7)!
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-nokia-panther
pkgdesc="Nokia 4.2"
pkgname=device-nokia-panther-downstream
pkgdesc="Nokia 4.2 (Downstream)"
pkgver=5
pkgrel=0
url="https://postmarketos.org"
@@ -24,6 +25,6 @@ package() {
}
sha512sums="
abd87faa48c0d915ac77c4586241572d3d105593641b3e63f87aa2b467209918d1f661b0a572f2c97adaa0321797d6ff0a5071201a9eb0e69804fa48cf6e2e9a deviceinfo
9baec307ae208cf93b1fb2fec9736fde7ab8a5cc2ddc7ee7d1db59153783db8dde210e15f02dc5c8e998516e0dc9ae7f8d6bfabbf5d73a8e8e04865b9bfffdc7 deviceinfo
b92e49138aed7efa5d4e79a47f1fcd665a159bf59a644a801c8c5af4c62afc6e276901d5bb0829064fa8b77f94493f79f62595d9068de02890c62a8d07516fea kernel-cmdline.conf
"
@@ -5,7 +5,7 @@
deviceinfo_format_version="0"
deviceinfo_name="Nokia 4.2"
deviceinfo_manufacturer="Nokia"
deviceinfo_codename="nokia-panther"
deviceinfo_codename="nokia-panther-downstream"
deviceinfo_year="2019"
deviceinfo_arch="aarch64"
@@ -1,6 +1,7 @@
# Archived: replaced by firmware-nvida-tegra-armv7
maintainer=""
pkgname=firmware-acer-picasso
pkgver=3
pkgver=4
pkgrel=0
pkgdesc="Firmware for Acer Iconia Tab A500 (acer-picasso)"
url="https://github.com/grate-driver/linux-firmware"
@@ -1,9 +1,10 @@
# Archived: Downstream port, only for testing. Use mainline port (qcom-msm89x7)!
# Reference: <https://postmarketos.org/vendorkernel>
pkgname=linux-nokia-panther
pkgname=linux-nokia-panther-downstream
pkgver=4.9.186
pkgrel=0
pkgdesc="Nokia 4.2 Kernel"
pkgdesc="Nokia 4.2 Kernel (Downstream)"
arch="aarch64"
_carch="arm64"
_flavor="nokia-panther"
@@ -41,6 +42,6 @@ package() {
sha512sums="
f903fa4fb6c4f79e9bcc61f332ccc90746a3339bc3a3b2cf60e3ac47799362b99da9fa3ae89b74c8fc5271e00fc7fa887fb9af3b9c3ae5f7153371348c970b6a linux-nokia-panther-7eb6784e9116b3f4008a18d5740005d0d788f120.tar.gz
f903fa4fb6c4f79e9bcc61f332ccc90746a3339bc3a3b2cf60e3ac47799362b99da9fa3ae89b74c8fc5271e00fc7fa887fb9af3b9c3ae5f7153371348c970b6a linux-nokia-panther-downstream-7eb6784e9116b3f4008a18d5740005d0d788f120.tar.gz
85ffb4ed3dd0b5a75c15d9299b3289bc33a3d788b9a79585dee542000b9b52dca73f5bfece958478938a541435de89d8a64ac15784f6186645047de46be01283 config-nokia-panther.aarch64
"
-145
View File
@@ -1,145 +0,0 @@
# Archived: -dev packages x86_64 binaries in aarch64 package which makes akms part of device-clockworkpi-uconsole-radxa-cm5 fail when built on aarch64
# Reference: <https://postmarketos.org/vendorkernel>
# Kernel config based on: arch/arm64/configs/rockchip_linux_defconfig
maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=linux-radxa
pkgver=6.1.115
pkgrel=1
pkgdesc="Radxa kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="radxa"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native"
subpackages="$pkgname-dev:_dev:$CBUILD_ARCH"
makedepends="
bash
bc
bison
devicepkg-dev
dtc
flex
findutils
installkernel
linux-firmware
linux-headers
openssl-dev
perl
xz
"
# Source
_repository="kernel"
_commit="74729d7c051026f99138b6e0e60d580c0bf226db"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/radxa/$_repository/archive/$_commit.tar.gz
$_config
postmarketos-defconfig.patch
"
builddir="$srcdir/$_repository-$_commit"
_builddir="$srcdir"/build-$_flavor.$CARCH
prepare() {
default_prepare
mkdir -p "$_builddir"
cp "$srcdir/config-$_flavor.$CARCH" "$_builddir"/.config
# copies missing library
mkdir -p "$_builddir"/drivers/gpu/arm/bifrost/
cp "$builddir"/drivers/gpu/arm/bifrost/mali_csffw.bin "$_builddir"/drivers/gpu/arm/bifrost/mali_csffw.bin
# remove and regenerate localversion
rm -f localversion*
echo "-$pkgrel-$_flavor" > "$_builddir"/localversion-postmarketos
make -C "$builddir" \
O="$_builddir" \
ARCH="$_carch" \
olddefconfig
}
build() {
unset LDFLAGS
cd "$_builddir"
local _kver=$(make kernelversion)
if [ "$_kver" != "$pkgver" ]; then
error "Version in Makefile ($_kver) does not correspond with pkgver ($pkgver)"
return 1
fi
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1))-postmarketOS"
}
package() {
downstreamkernel_package "$_builddir" "$pkgdir" "$_carch" "$_flavor"
cd "$_builddir"
mkdir -p "$pkgdir"/boot
make modules_install dtbs_install \
ARCH="$_carch" \
INSTALL_PATH="$pkgdir"/boot \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_MOD_STRIP=1 \
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
rm -f "$pkgdir"/lib/modules/*/build "$pkgdir"/lib/modules/*/source
}
_dev() {
cd "$_builddir"
local _abi_release="$(make -s kernelrelease)"
# copy the only the parts that we really need for build 3rd party
# kernel modules and install those as /usr/src/linux-headers,
# simlar to what ubuntu does
#
# this way you dont need to install the 300-400 kernel sources to
# build a tiny kernel module
#
pkgdesc="Headers and script for third party modules for $_flavor kernel"
depends="$_depends_dev"
local dir="$subpkgdir"/usr/src/linux-headers-$_abi_release
# first we import config, run prepare to set up for building
# external modules, and create the scripts
mkdir -p "$dir"
cp "$_builddir"/.config "$dir"/.config
echo "-$pkgrel-$_flavor" > "$dir"/localversion-postmarketos
make -j1 -C "$builddir" ARCH="$_carch" O="$dir" \
syncconfig prepare modules_prepare scripts
# remove the stuff that points to real sources. we want 3rd party
# modules to believe this is the sources
rm "$dir"/Makefile "$dir"/source
# copy the needed stuff from real sources
#
# this is taken from ubuntu kernel build script
# http://kernel.ubuntu.com/git/ubuntu/ubuntu-zesty.git/tree/debian/rules.d/3-binary-indep.mk
cd "$builddir"
find . -path './include/*' -prune \
-o -path './scripts/*' -prune -o -type f \
\( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
-name '*.sh' -o -name '*.pl' -o -name '*.lds' \) \
-print | cpio -pdm "$dir"
cp -a scripts include "$dir"
find $(find arch -name include -type d -print) -type f \
| cpio -pdm "$dir"
install -Dm644 "$_builddir"/Module.symvers \
"$dir"/Module.symvers
mkdir -p "$subpkgdir"/lib/modules/$_abi_release
ln -sf /usr/src/linux-headers-$_abi_release \
"$subpkgdir"/lib/modules/$_abi_release/build
}
sha512sums="
3c268ca3eaaa6bbffce9759f963ec6030a4a4d2c3b8ed5e130ca5c29d25bad78e43faa575fbc6c1f90ffdbffea39db6a569f073d1917547a4bfbe7b8bf506578 linux-radxa-74729d7c051026f99138b6e0e60d580c0bf226db.tar.gz
e23a8fb644bca3e18c399112b1f0f569ddcda37d1cceb2fdef82ef97993071ee085c16c35898a22222988876af5456bc422bb247d501ff6725aa7c6cc7367522 config-radxa.aarch64
a9ec1018a798ee26cb864933dd3aa1d460e6e40a30c55cb0fdd56806031f3b2755d3823d6c30f7bcc1d2bb71d3cabe7a409f46a2e5ff78dc9ff5a31108709758 postmarketos-defconfig.patch
"
@@ -4,7 +4,7 @@ maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=device-generic-x86_64
pkgdesc="Generic x86_64 system, with EFI"
pkgver=24
pkgrel=1
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="x86_64"
@@ -39,11 +39,7 @@ _pmb_recommends="
oem-intel
oem-nvidia
"
provides="
device-tablet-x64uefi=$pkgver-r$pkgrel
device-tablet-x86uefi=$pkgver-r$pkgrel
device-valve-jupiter
"
provides="device-tablet-x64uefi=$pkgver-r$pkgrel device-tablet-x86uefi=$pkgver-r$pkgrel"
replaces="device-tablet-x64uefi device-tablet-x86uefi"
build() {
@@ -3,7 +3,7 @@ maintainer="Casey Connolly <kcxt@postmarketos.org>"
pkgname=device-oneplus-enchilada
pkgdesc="OnePlus 6"
pkgver=24
pkgrel=0
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -65,7 +65,7 @@ openrc() {
}
pmtest() {
depends="bootrr qrtr firmware-oneplus-sdm845 postmarketos-test-unl0kr"
depends="postmarketos-test-bootrr qrtr firmware-oneplus-sdm845 postmarketos-test-unl0kr"
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-mkinitfs-hook-ci"
mkdir -p "$subpkgdir"
@@ -4,7 +4,7 @@ maintainer="Casey Connolly <kcxt@postmarketos.org>"
pkgname=device-oneplus-fajita
pkgdesc="OnePlus 6T"
pkgver=24
pkgrel=0
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -65,7 +65,7 @@ openrc() {
}
pmtest() {
depends="bootrr qrtr postmarketos-test-unl0kr"
depends="postmarketos-test-bootrr qrtr postmarketos-test-unl0kr"
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-mkinitfs-hook-ci"
mkdir -p "$subpkgdir"
@@ -3,7 +3,7 @@
maintainer="Barnabas Czeman <barnabas.czeman@postmarketos.org>"
pkgname=device-qcom-msm8953
pkgdesc="Generic device package for various Qualcomm MSM8953/SDM450/SDM632-based devices"
pkgver=12
pkgver=13
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -64,7 +64,7 @@ xiaomi_daisy_fake_goodix() {
sha512sums="
fd541b7a48170fce536967ff96ffe5f30ed151490ea8eb618ae2e6b7fd51986e4e7c4229f805d4ae07f22ca58146045085162b1d49866630350f55f0038cc69c deviceinfo
97e88eaa9b8e7989a20d2572479fe5d1fe0284de862da11c91b1f347099d5704673837db01a6b0c289fee0a2d7236f64fba31fd6001475f957c23203e34fd6fb kernel-cmdline.conf
39db44cf9c9ae2179557f8137fe67a9935894e98cd1062344ba3a151b8d85363fa795cde674723cb8cdc0b6baa4fcffe54aa342f27876d13785109ec423762db modules-initfs
29986b499f4b45e5112cb650685e9778bbfe6812fe2833d1eccca949323d69714b350ad3b1eaa3c9838f54088c95e7774c58937859685232f06fa18e8eb7fc5b modules-initfs
a2608b01b7b6e2dade694af355ff4f0f26cad49cf54bc332c77eb75d19fdc985f7f996fedb72753de447be0391deabf5fcea52406791d1e6e0d165703b63f145 90-device-xiaomi-daisy.rules
17af1dabd211ec942bd8cbe63743c874ef87f0613ae08b8de3f77bdb87962eae402eee2b6604d6040700d4e7ae1b898cb67c1b01f2b86db23af31435953eaa51 61-gmobile-wakeup-lenovo-cd18781y.hwdb
"
@@ -1,56 +1,63 @@
atmel_mxt_ts
edt_ft5x06
goodix_ts
atmel-mxt-ts
edt-ft5x06
goodix-ts
msm
novatek_nvt_ts
novatek-nvt-ts
panel-boe-bs052fhm-a00-6c01
panel-flipkart-rimob-nt35532-cs
panel-himax-hx83112b
panel-himax-hx8399c-fhdplus
panel-huawei-milan-boe-otm1906c
panel-huawei-milan-boe-td4322
panel-huawei-milan-boe-test1906c
panel-huawei-milan-ctc-nt35596s
panel-huawei-milan-ctc-otm1906c
panel-huawei-milan-jdi-r63452
panel-huawei-milan-tianma-fic8736
panel-huawei-milan-tianma-focal8716
panel-huawei-milan-tianma-otm1906c
panel-lenovo-kuntao-549
panel-mdss-ft8716-fhd
panel-mdss-ili7807-fhd
panel-mdss-ili7807-fhdplus
panel-mdss-nt35596-ebbg
panel-mdss-otm1911-fhd
panel-mdss-otm1911-fhdplus
panel-mdss-r63350
panel-motorola-ali-boe
panel-motorola-ali-tianma
panel-motorola-ocean-622-ofilm
panel-motorola-ocean-622-tianma
panel-motorola-ocean-nt36672a-csot
panel-motorola-river-624-boe
panel-motorola-river-624-tianma
panel-motorola-river-hx83112b-tianma
panel-motorola-river-nt36672a-tianma
panel-samsung-s6e3fa7
panel-tianma-tl052vdxp02
panel-xiaomi-boe-ili9885
panel-xiaomi-ebbg-r63350
panel-xiaomi-nt35532
panel-xiaomi-nt36672-csot-fhdplus-e7
panel-xiaomi-nt36672-tianma-fhdplus-e7
panel-xiaomi-onclite-hx8394f
panel-xiaomi-onclite-ili9881
panel-xiaomi-onclite-otm1901a
panel-xiaomi-otm1911
panel-xiaomi-oxygen-r61322-auo
panel-xiaomi-oxygen-r63350-tianma
panel-xiaomi-rosy-ft8006m-boe
panel-xiaomi-rosy-ft8613-csot
panel-xiaomi-rosy-ft8613-ebbg
panel_billion_rimob_nt35532_cs
panel_boe_bs052fhm_a00_6c01
panel_csot_622_v0
panel_himax_hx8399c_fhdplus
panel_huawei_milan_boe_otm1906c
panel_huawei_milan_boe_td4322
panel_huawei_milan_boe_test1906c
panel_huawei_milan_ctc_nt35596s
panel_huawei_milan_ctc_otm1906c
panel_huawei_milan_jdi_r63452
panel_huawei_milan_tianma_fic8736
panel_huawei_milan_tianma_focal8716
panel_huawei_milan_tianma_otm1906c
panel_lenovo_kuntao_549
panel_mdss_ft8716_fhd
panel_mdss_ili7807_fhd
panel_mdss_ili7807_fhdplus
panel_mdss_nt35596_ebbg
panel_mdss_otm1911_fhd
panel_mdss_otm1911_fhdplus
panel_mdss_r63350
panel_ofilm_622_v0
panel_tianma_622_v0
panel_tianma_tl052vdxp02
panel_xiaomi_boe_ili9885
panel_xiaomi_ebbg_r63350
panel_xiaomi_nt35532
panel_xiaomi_nt36672_csot_fhdplus_e7
panel_xiaomi_nt36672_tianma_fhdplus_e7
panel_xiaomi_onclite_hx8394f
panel_xiaomi_onclite_ili9881
panel_xiaomi_onclite_otm1901a
panel_xiaomi_otm1911
panel_xiaomi_td4310_ebbg_fhdplus_e7
panel_xiaomi_td4310_fhdplus_e7
panel_xiaomi_td4310_fhdplus_e7_g55
panel_xiaomi_tianma_nt35596
panel_xiaomi_ysl_hx8394f
panel_xiaomi_ysl_ili7807d
panel_xiaomi_ysl_ili9881c
rmi_core
rmi_i2c
panel-xiaomi-td4310-ebbg-fhdplus-e7
panel-xiaomi-td4310-fhdplus-e7
panel-xiaomi-td4310-fhdplus-e7-g55
panel-xiaomi-tianma-nt35596
panel-xiaomi-ysl-hx8394f
panel-xiaomi-ysl-ili7807d
panel-xiaomi-ysl-ili9881c
rmi-core
rmi-i2c
s6sy761
simple-mfd-i2c
sm5708-charger
@@ -1,9 +1,9 @@
# Reference: <https://postmarketos.org/devicepkg>
maintainer="Mighty17 <mightymb17@gmail.com>"
maintainer="Mithil Bavishi <bavishimithil@gmail.com>"
pkgname=device-samsung-espresso10
pkgdesc="Samsung Galaxy Tab 2 (10.1 inch)"
pkgver=6
pkgrel=0
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="armv7"
@@ -1,10 +1,10 @@
# Reference: <https://postmarketos.org/devicepkg>
# Co-Maintainer: Antoni Aloy <aaloytorrens@gmail.com>
maintainer="Mighty17 <mightymb17@gmail.com>"
maintainer="Mithil Bavishi <bavishimithil@gmail.com>"
pkgname=device-samsung-espresso7
pkgdesc="Samsung Galaxy Tab 2 (7.0 inch)"
pkgver=7
pkgrel=0
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="armv7"
@@ -5,7 +5,7 @@ maintainer="Alexander Martinz <amartinz@shiftphones.com>"
pkgname=device-shift-axolotl
pkgdesc="SHIFT6mq"
pkgver=20
pkgrel=0
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
@@ -69,7 +69,7 @@ nonfree_firmware_openrc() {
}
pmtest() {
depends="bootrr qrtr firmware-shift-sdm845 postmarketos-test-unl0kr"
depends="postmarketos-test-bootrr qrtr firmware-shift-sdm845 postmarketos-test-unl0kr"
install_if="$pkgname=$pkgver-r$pkgrel postmarketos-mkinitfs-hook-ci"
mkdir -p "$subpkgdir"
@@ -2,7 +2,7 @@
maintainer="Joel Selvaraj <foss@joelselvaraj.com>"
pkgname=device-xiaomi-beryllium
pkgdesc="Xiaomi Poco F1"
pkgver=16
pkgver=17
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -90,7 +90,7 @@ kernel_ebbg() {
sha512sums="
5d48f17dcec44653e749191d4f236350e9ff0166df77b711f357dca6d74a1af7dfa768a2caa1dc309c2651d004edd0ab7846305513488f74d3ea7ae11da6168d deviceinfo
003e5228a2b2825f24cb8b4842e3c3f72b99225f0aef3cda5bb2de4e4beb5e1c84800ba48c6cf1b84fe042bd039912e67c545c00981b604db0c0f0bcb546f7c5 kernel-cmdline.conf
f16e550f623522be29027954c69a956eb6543f2f608a4c6b37c1a3983403a3edaa24e70aa42dbe88e76216991aba867b48c7341c9b8a81f675902d6223937b51 kernel-cmdline.conf
52079045a0c1f48628d891bf8867f5c1802152fce8e2c4bd787630f1f5e4c9b386bfc373e464cb053688350ac678dbc3c407a76a31a1ae700ca67764d0d384f1 hexagonrpcd.confd
cab76675b9c48eb1ce0691b31667d17ee73ecf21439a7f7c9c2ba96344e3bf4ad713ebc685298d6e32ad589ba26f429cd6b0d200338b50d136ad1a29758e4214 modules-initfs.ebbg
175a7d859956a029b91a1105b93c4113b07ab5cfe932294dd369808059ed03471625f64ce90e5146a65c0bb26417470d8f7c02e48dfacf2d016ce5b2c28cee76 modules-initfs.tianma
@@ -1 +1,4 @@
console=ttyMSM0,115200
# FIXME: Console enabled to workaround a race condition with display initialisation
# See https://gitlab.freedesktop.org/drm/msm/-/issues/46
-quiet
@@ -2,7 +2,7 @@
maintainer="Barnabas Czeman <barnabas.czeman@postmarketos.org>"
pkgname=firmware-qcom-msm8953
pkgver=3
pkgrel=0
pkgrel=1
pkgdesc="Firmware files for Qualcomm MSM8953 devices"
url="https://postmarketos.org"
arch="aarch64"
@@ -58,8 +58,8 @@ package() {
install -Dm644 "$asus_ze520kl_dir/a506_zap.mdt" -t "$pkgdir/$_fwdir/asus/ze552kl"
billion_rimob_dir="$srcdir/firmware-billion-rimob-$_billion_rimob_commit"
install -Dm644 "$billion_rimob_dir/a506_zap.b02" -t "$pkgdir/$_fwdir/billion/rimob"
install -Dm644 "$billion_rimob_dir/a506_zap.mdt" -t "$pkgdir/$_fwdir/billion/rimob"
install -Dm644 "$billion_rimob_dir/a506_zap.b02" -t "$pkgdir/$_fwdir/flipkart/rimob"
install -Dm644 "$billion_rimob_dir/a506_zap.mdt" -t "$pkgdir/$_fwdir/flipkart/rimob"
fairphone_fp3_dir="$srcdir/FP3-firmware-$_fairphone_fp3_commit"
install -Dm644 "$fairphone_fp3_dir/a506_zap.b02" -t "$pkgdir/$_fwdir/fairphone/fp3"
@@ -4,7 +4,7 @@
maintainer="Newbyte <newbyte@disroot.org>"
pkgname=linux-postmarketos-exynos4
pkgver=6.18.9
pkgrel=0
pkgrel=1
pkgdesc="Mainline kernel fork for Samsung Exynos4 devices"
arch="armv7"
_carch="arm"
@@ -69,5 +69,5 @@ package() {
sha512sums="
06d400fca544c3a38d54c6dada3ed6257eb13c64ab7b9c0459a87d1b6a01bde69b6488eb478b06da5c03e8083c2aca01d4a04424d7f91b4b1195a7b738ebd9ca linux-postmarketos-exynos4-v6.18.9-exynos4.tar.bz2
ce74c3a15b6b4935f8da8b0d418385aa84c89910442eb1247d44e2cba76c655db65b41d3c036f53a9d856dfec298a8e01f630da114b3ff21cd7dec4fe24049df config-postmarketos-exynos4.armv7
80d8239339951debd87b01dd451abd6982f39831d7d131c9b7e348c3e1f55bc42708a3b03857177be4d3e0f853cceb453cd4a026bb7b65016aa4075270f4e790 config-postmarketos-exynos4.armv7
"
@@ -11,7 +11,7 @@ CONFIG_AS_VERSION=210108
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_RUSTC_VERSION=109300
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
@@ -1680,7 +1680,8 @@ CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=65536
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_BLK_DEV_RBD is not set
# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV_UBLK=m
CONFIG_BLKDEV_UBLK_LEGACY_OPCODES=y
#
# NVME Support
@@ -2379,7 +2380,7 @@ CONFIG_INPUT_UINPUT=m
# CONFIG_INPUT_IQS269A is not set
# CONFIG_INPUT_IQS626A is not set
# CONFIG_INPUT_IQS7222 is not set
# CONFIG_INPUT_ISA1200_HAPTIC is not set
CONFIG_INPUT_ISA1200_HAPTIC=y
# CONFIG_INPUT_CMA3000 is not set
# CONFIG_INPUT_DRV260X_HAPTICS is not set
# CONFIG_INPUT_DRV2665_HAPTICS is not set
@@ -6515,9 +6516,9 @@ CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
CONFIG_EROFS_FS_BACKED_BY_FILE=y
CONFIG_EROFS_FS_ZIP=y
# CONFIG_EROFS_FS_ZIP_LZMA is not set
# CONFIG_EROFS_FS_ZIP_DEFLATE is not set
# CONFIG_EROFS_FS_ZIP_ZSTD is not set
CONFIG_EROFS_FS_ZIP_LZMA=y
CONFIG_EROFS_FS_ZIP_DEFLATE=y
CONFIG_EROFS_FS_ZIP_ZSTD=y
# CONFIG_EROFS_FS_ZIP_ACCEL is not set
# CONFIG_EROFS_FS_ONDEMAND is not set
# CONFIG_EROFS_FS_PCPU_KTHREAD is not set
@@ -6952,7 +6953,7 @@ CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_ARM64=y
CONFIG_XZ_DEC_SPARC=y
CONFIG_XZ_DEC_RISCV=y
# CONFIG_XZ_DEC_MICROLZMA is not set
CONFIG_XZ_DEC_MICROLZMA=y
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
@@ -3,7 +3,7 @@
# Co-Maintainer: WeirdTreeThing <bradyn127@protonmail.com>
maintainer="Adam Thiede <me@adamthiede.com>"
pkgname=linux-postmarketos-mediatek-mt8173
pkgver=6.19
pkgver=6.19.6
pkgrel=0
pkgdesc="Mainline kernel fork for Mediatek MT8173 devices"
arch="aarch64"
@@ -69,6 +69,6 @@ package() {
}
sha512sums="
01b29c7f4e5bc0c9802794c2cd027fece825f90417be229a71e60eefce530010d5d301749c54ae744e9d4a483518e769e2bb7e6e9209687681ad7fff11c3ed86 linux-6.19.tar.xz
92f9b6377877b7a9eaf3963a7d8394b0b9dffd7a4cd7bc462374c5121458686c8236c103789e40a5ceba5b9a8910bc03d5594666e430c03f93582d33d4ff496f config-postmarketos-mediatek-mt8173.aarch64
efbcb5c24bcf257e724387cd5caf069de6351230cbf6e15589d9c371b9a36d92ad211866dba72818b38458ced9c4a8ea4f572b49c0b0f282254f10030d456e2a linux-6.19.6.tar.xz
e49f5406d213889ba849a5962a92f3af27cc3a5077e6497dc6abf520aaa36bcee0a60eeea932834087d6727f380b8c10cb762431ab604672a64b1e52708acd8d config-postmarketos-mediatek-mt8173.aarch64
"
@@ -1,16 +1,16 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.19.0 Kernel Configuration
# Linux/arm64 6.19.6 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.0"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220100
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220100
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220100
CONFIG_RUSTC_VERSION=0
CONFIG_RUSTC_LLVM_VERSION=0
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
@@ -2253,7 +2253,8 @@ CONFIG_XEN_BLKDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_BACKEND is not set
CONFIG_VIRTIO_BLK=y
# CONFIG_BLK_DEV_RBD is not set
# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV_UBLK=m
CONFIG_BLKDEV_UBLK_LEGACY_OPCODES=y
#
# NVME Support
@@ -6696,7 +6697,6 @@ CONFIG_RTC_DRV_HYM8563=m
# CONFIG_RTC_DRV_MAX6900 is not set
# CONFIG_RTC_DRV_MAX31335 is not set
CONFIG_RTC_DRV_MAX77686=y
# CONFIG_RTC_DRV_NVIDIA_VRS10 is not set
# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_RS5C372 is not set
# CONFIG_RTC_DRV_ISL1208 is not set
@@ -8426,16 +8426,16 @@ CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
# CONFIG_ROMFS_FS is not set
# CONFIG_PSTORE is not set
# CONFIG_UFS_FS is not set
CONFIG_EROFS_FS=y
CONFIG_EROFS_FS=m
# CONFIG_EROFS_FS_DEBUG is not set
CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
CONFIG_EROFS_FS_BACKED_BY_FILE=y
CONFIG_EROFS_FS_ZIP=y
# CONFIG_EROFS_FS_ZIP_LZMA is not set
# CONFIG_EROFS_FS_ZIP_DEFLATE is not set
# CONFIG_EROFS_FS_ZIP_ZSTD is not set
CONFIG_EROFS_FS_ZIP_LZMA=y
CONFIG_EROFS_FS_ZIP_DEFLATE=y
CONFIG_EROFS_FS_ZIP_ZSTD=y
# CONFIG_EROFS_FS_ZIP_ACCEL is not set
# CONFIG_EROFS_FS_ONDEMAND is not set
# CONFIG_EROFS_FS_PCPU_KTHREAD is not set
@@ -8949,7 +8949,7 @@ CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_ARM64=y
CONFIG_XZ_DEC_SPARC=y
CONFIG_XZ_DEC_RISCV=y
# CONFIG_XZ_DEC_MICROLZMA is not set
CONFIG_XZ_DEC_MICROLZMA=y
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
@@ -9199,7 +9199,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -1,8 +1,8 @@
# Kernel config based on: arch/arm/configs/omap2plus_defconfig
maintainer="Mighty <mightymb17@gmail.com>"
maintainer="Mithil Bavishi <bavishimithil@gmail.com>"
pkgname=linux-postmarketos-omap
pkgver=6.15.0
pkgrel=4
pkgrel=5
pkgdesc="Mainline kernel fork for OMAP devices"
arch="armv7"
url="https://kernel.org/"
@@ -2,7 +2,7 @@
maintainer="Barnabas Czeman <barnabas.czeman@postmarketos.org>"
_flavor="postmarketos-qcom-msm8953"
pkgname=linux-$_flavor
pkgver=6.17.7
pkgver=6.19.5
pkgrel=0
pkgdesc="Close to mainline linux kernel for Qualcomm Snapdragon MSM8953"
arch="aarch64"
@@ -14,10 +14,12 @@ options="!strip !check !tracedeps
pmb:kconfigcheck-community
"
makedepends="
bash
bison
clang
findutils
flex
lld
llvm
openssl-dev
perl
postmarketos-installkernel
@@ -39,7 +41,7 @@ prepare() {
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
make ARCH="$_carch" LLVM=1 \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor"
}
@@ -48,6 +50,7 @@ package() {
make zinstall modules_install dtbs_install \
ARCH="$_carch" \
LLVM=1 \
INSTALL_PATH="$pkgdir"/boot \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_MOD_STRIP=1 \
@@ -58,6 +61,6 @@ package() {
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
}
sha512sums="
2487f0e5af708cabb3ff3604744a5781088445a74e84df87feb5c022d4c8c56bf9dac5604435b5fcbd2bbea09972267e80eaf2c52b91badfdfb296d33a9b05b2 linux-postmarketos-qcom-msm8953-v6.17.7-r0.tar.gz
14cce140d7b7ae24e30cca1f3987ca322134939419c7533687eea641f33306642492988390aea7c476e1cb78ef46776f46792eee10ad4c478a433f1e6dcf8b30 config-postmarketos-qcom-msm8953.aarch64
906c78a4ff7b11031b9895f4a0a85abe66ad0defd894e0becc8d8126449ff4bfddfa9e33e0da3c0c20dc1a59539601fe532e28a15f815ff47d03eeb2b030d38b linux-postmarketos-qcom-msm8953-v6.19.5-r0.tar.gz
e877317f260735631e110912350fdb63b82465573bc716a583c70f64e0273188d1264c421d216dd556506ba421cde2e84ac3e4102ba92cb45343466ce019ecff config-postmarketos-qcom-msm8953.aarch64
"
+3 -3
View File
@@ -2,8 +2,8 @@
maintainer="Casey Connolly <kcxt@postmarketos.org>"
pkgname=soc-qcom
pkgdesc="Common package for Qualcomm devices"
pkgver=7
pkgrel=1
pkgver=8
pkgrel=0
url="https://postmarketos.org"
license="BSD-3-Clause"
arch="aarch64"
@@ -192,7 +192,7 @@ sha512sums="
9d455b56558d453d501a1ad869ffa79f9952ed43485a9847d506db6a78bfcd9f9c9d855660ee1d368eb74f4429385ec166addc30d802261c75562e785fe84c52 UPower.conf
6fb4c0bd8b7ed534d855a6732ccff783960e3cfa0e0cc7effcbb93afa00798dec15361a37a3200081bc114c8d266b7a0851cc4e819ad36eabdb47a50c72620d9 call_audio_idle_suspend_workaround.confd
5a58475b6e2ee1d655f3f23d8dc19e1cb2f32f1dfff3b9a9337d9c5baad1ec24bfaec0fb9cc03f00e5a291bee27c6b8bffbc65157e2bee5d65ef6d1adcb0910b call_audio_idle_suspend_workaround.initd
128364dab6d5e9c01773d5c3b823029ac1c8471eb5ab11e6528a39e9d726562e26aa77c817ca966772de3e3339119281c9ccdf35f92ec7c9a90331b8fc16254a call-audio-idle-suspend-workaround.service
6f08583574782c01d826ee6b67dd0ceca7b700559efa49042c4b9f182fcd7a4f390c8b011d8ede1820f0ac151eaee24e31a8bac127e2aaf9a6fd605eb17fbea9 call-audio-idle-suspend-workaround.service
6da0a9209f114354aa2aa1185ec3896a8e0bb1bfce0dc3fc4c0de339cf1389feaa2d724e733c251ff032a5e86d37d9549e94f8f7c7a5accfedbd8a4d6316bbfd call_audio_idle_suspend_workaround.sh
f86ebf68bb7e41b531e5cd8fc3e54d8fafad314fb80950277e41004303b3bf75b2ae96f0228bdf4ed67645aee8ceaf247140b4843c66365259d2908b8991b877 gstreamer.conf
471583b91bc35608cb75d0b3ceb88fa793a4e763ea228703c50ffb1b45c0e9054646c46f710164ec3ef65a882a204fd59546f3a0ebb94b8d6c6f08c4043bcfd3 gstreamer.sh
@@ -4,6 +4,8 @@ Requires=dbus.service
[Service]
ExecStart=/usr/sbin/call_audio_idle_suspend_workaround
Restart=always
RestartSec=5
[Install]
WantedBy=default.target
@@ -0,0 +1,63 @@
# Reference: <https://postmarketos.org/devicepkg>
maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=device-clockworkpi-uconsole-radxa-cm5
pkgdesc="Clockwork Tech ClockworkPi uConsole Radxa CM5"
pkgver=7
_commit=2e8040ec92f85e3d43caf3e44557cb0659db4531
_dtso_commit=c2204834e1d7d0acfd64e1b7874d432bc142f1a4
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
install="$pkgname-openrc.post-install $pkgname-openrc.post-upgrade"
depends="
linux-clockworkpi-uconsole-radxa-cm5
postmarketos-base
u-boot-clockworkpi-uconsole-radxa-cm5
"
makedepends="
devicepkg-dev
"
subpackages="
$pkgname-openrc
$pkgname-x11
"
source="
deviceinfo
kernel-cmdline.conf
modules-initfs
modules-load.conf
modprobe.conf
partition-table.txt
xorg.conf
"
build() {
devicepkg_build $startdir $pkgname
}
x11() {
install_if="$pkgname xorg-server"
install -Dm644 "$srcdir"/xorg.conf \
"$subpkgdir"/etc/X11/xorg.conf.d/10-monitor.conf
}
package() {
devicepkg_package $startdir $pkgname
}
openrc() {
depends=openrc
install_if="$pkgname=$pkgver-r$pkgrel openrc"
mkdir -p "$subpkgdir"
}
sha512sums="
1c39895682e8c28ad80a7fe7d62e23fc34510502efd09c85117812e882c6fe4094191852346162550fcbcfb10d4a5b07db85f5671d016ff62bbe16f90cfb85c2 deviceinfo
fa6332b91b62572528b1f919370382d67f521b0a65c3c9f416df67545ebae7b01f31729340a42e656b5589cdbde676ec8fe0eb9537a34e02ec20f5309bf43b12 kernel-cmdline.conf
85d573bfd51ac4aa502336452b0384af77b6ec095f5c4760e8f287b8452b3ccb4521051bc01c53fa0856440d52231f535f3f0258d62ad578161ad464344413e9 modules-initfs
642cdb1b4ac02b8c3ab7b72f4eeef615ac4911b42bcd845b54305f0ff64c07b86f4a807a97d395cb6c0cd0a5f5eed15e68d9e4ccb69db8e38fb65c8be4acaeeb modules-load.conf
a5324ed5118168b846d359dc2c8e76ccdc624003d157a28e4c9728ddedd9b52c6deb95af9c3a9d94faf52413f2f830dc45ec6c0093458d27149ef17de5dceef5 modprobe.conf
da2656ecb5f1a88c3b85a973adae0a11e48d4cb32ea7465076827a883e0f74fde4500c03edd4de66a6bf0af2da196f2210a02a1297f360d77bd70af4c21ae5dd partition-table.txt
939cb4ca50e0f54258dd92bdfbf91e6fa7b33b386022d058ba0d4b4e4f6d855cba9f5fffda0652f18c8b9b95d5dbbfc766e0931f0de53841f96d9d8975bf27e7 xorg.conf
"
@@ -0,0 +1,51 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell scripts.
deviceinfo_format_version="0"
deviceinfo_name="Clockwork Tech ClockworkPi uConsole Radxa CM5"
deviceinfo_manufacturer="Clockwork Tech"
deviceinfo_codename="clockworkpi-uconsole-radxa-cm5"
deviceinfo_year="2023"
deviceinfo_dtb="rockchip/rk3588s-radxa-cm5-uconsole"
deviceinfo_arch="aarch64"
deviceinfo_disable_dhcpd="true"
# Device related
deviceinfo_drm="true"
deviceinfo_chassis="embedded"
deviceinfo_external_storage="true"
deviceinfo_screen_width="1280"
deviceinfo_screen_height="720"
deviceinfo_getty="ttyFIQ0;1500000"
# initfs
# Flash related
deviceinfo_flash_method="rkdeveloptool"
deviceinfo_flash_rk_partition_kernel="boot"
deviceinfo_flash_rk_partition_rootfs="os1"
# sd embed
deviceinfo_sd_embed_firmware="u-boot/clockworkpi-uconsole-radxa-cm5/idbloader.img:64,u-boot/clockworkpi-uconsole-radxa-cm5/u-boot.itb:16384"
deviceinfo_sd_embed_firmware_step_size="512"
deviceinfo_boot_part_start="32768"
# Partition table
# pmbootstrap does not support flashing a partition table using rkdeveloptool, manual steps:
# enable `write-partition-table` commands
# > rkdeveloptool boot $chroot/usr/share/u-boot/clockworkpi-uconsole-radxa/rk3588_spl_loader_v1.19.113.bin
# >
# write new GPT partition table
# > rkdeveloptool write-partition-table partition-table.txt
# >
# deviceinfo_flash_rk_partition_table="partition-table.txt"
# Bootloader
# pmbootstrap does not support flashing u-boot using rkdeveloptool, manual steps:
# > rkdeveloptool write-partition idbloader $chroot/usr/share/u-boot/clockworkpi-uconsole-radxa-cm5/idbloader.img
# > rkdeveloptool write-partition uboot $chroot/usr/share/u-boot/clockworkpi-uconsole-radxa-cm5/uboot.img
# >
deviceinfo_boot_filesystem="fat32"
deviceinfo_generate_extlinux_config="true"
@@ -0,0 +1 @@
mtdparts=rk3588mmc:0x3FC0@0x40(idbloader),0x20000@0x4000(uboot),0x85800@0x8000(boot:bootable),-@0x8d800(os1:grow)
@@ -0,0 +1,32 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-samsung-a52sxq
pkgdesc="Samsung Galaxy A52s 5G"
pkgver=1
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="
android-tools
linux-samsung-a52sxq
postmarketos-base
postmarketos-base-downstream
"
makedepends="devicepkg-dev"
source="
deviceinfo
"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
}
sha512sums="
d749cb074550a9e771251fa7a17d50ba8c60633800b45a10acdb41a87d7643ff26f1304c4cd30176298fd706c076780609561578aaa881c1f9fedbc67200fd33 deviceinfo
"
@@ -0,0 +1,26 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell
# scripts.
deviceinfo_format_version="0"
deviceinfo_name="Samsung Galaxy A52s 5G"
deviceinfo_manufacturer="Samsung"
deviceinfo_codename="samsung-a52sxq"
deviceinfo_year="2021"
deviceinfo_dtb="a52sxq"
deviceinfo_arch="aarch64"
# Data from bootimg_analyze
deviceinfo_generate_bootimg="true"
deviceinfo_flash_pagesize="4096"
deviceinfo_header_version="3"
# Device related
deviceinfo_chassis="handset"
deviceinfo_external_storage="true"
# Bootloader related
deviceinfo_flash_method="fastboot"
# From Porting guide
deviceinfo_rootfs_image_sector_size="4096"
@@ -1,7 +1,7 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-samsung-jfvelte
pkgdesc="Samsung Galaxy S4 Value Edition"
pkgver=5
pkgver=6
pkgrel=0
url="https://postmarketos.org"
license="MIT"
@@ -21,7 +21,7 @@ package() {
}
sha512sums="
443201d4cbe351937a43602e97f28541791a87a8f44e315e8eef492fe1d91c5cef35511eaa6c6a59e23cbcf31291f5f1ae19efc4d96e5307786a97f102279477 deviceinfo
fdf5aefc03f23429038878a98f02397ca1bd5487d427e1fb8a6937e93d9d866c94589c1d8c944e1b025f3856f7220fbdd36c80462bd948468fd447250e0ea21d deviceinfo
706c68607d66e9a7196281794bd94d4d3267321a8090fb3f5388414a1aa3388387e77681b487c33641b4aa415274e8ed5224abc33c2e72cb21bc682f6b09fed8 kernel-cmdline.conf
515cd3be1816bea9a1859a37f6568e3e82a9f8f16cbbc71ba13d60723f98eafbda9046ebb1ee7f4ae23dd2b2b2b18506f64516ca45ff71af18e7c163f12248bd fb.modes
"
@@ -14,6 +14,7 @@ deviceinfo_chassis="handset"
deviceinfo_external_storage="true"
deviceinfo_screen_width="1080"
deviceinfo_screen_height="1920"
deviceinfo_create_initfs_extra="true"
# Bootloader related
deviceinfo_flash_method="heimdall-bootimg"
@@ -0,0 +1,327 @@
From bf1ccb5dc61576a573409810dfee9d68eb141845 Mon Sep 17 00:00:00 2001
From: ayakael <antoine@ayakael.net>
Date: Sun, 8 Feb 2026 09:17:03 -0500
Subject: [PATCH 1/3] video: backlight: Add OCP8178 backlight driver
This driver is taken from
https://github.com/clockworkpi/DevTerm/blob/main/Code/patch/armbian_build_a06/patch/kernel-005-backlight.patch
and optimized for v6.5
---
drivers/video/backlight/Kconfig | 6 +
drivers/video/backlight/Makefile | 1 +
drivers/video/backlight/ocp8178_bl.c | 277 +++++++++++++++++++++++++++
3 files changed, 284 insertions(+)
create mode 100644 drivers/video/backlight/ocp8178_bl.c
diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
index 936ba1e4d35e..440cf1c6d011 100644
--- a/drivers/video/backlight/Kconfig
+++ b/drivers/video/backlight/Kconfig
@@ -477,6 +477,12 @@ config BACKLIGHT_LED
If you have a LCD backlight adjustable by LED class driver, say Y
to enable this driver.
+config BACKLIGHT_OCP8178
+ tristate "OCP8178 Backlight Driver"
+ depends on GPIOLIB
+ help
+ If you have an OCP8178, say Y to enable the backlight driver.
+
endif # BACKLIGHT_CLASS_DEVICE
endmenu
diff --git a/drivers/video/backlight/Makefile b/drivers/video/backlight/Makefile
index e815f3f1deff..e1184bb56516 100644
--- a/drivers/video/backlight/Makefile
+++ b/drivers/video/backlight/Makefile
@@ -59,3 +59,4 @@ obj-$(CONFIG_BACKLIGHT_WM831X) += wm831x_bl.o
obj-$(CONFIG_BACKLIGHT_ARCXCNN) += arcxcnn_bl.o
obj-$(CONFIG_BACKLIGHT_RAVE_SP) += rave-sp-backlight.o
obj-$(CONFIG_BACKLIGHT_LED) += led_bl.o
+obj-$(CONFIG_BACKLIGHT_OCP8178) += ocp8178_bl.o
diff --git a/drivers/video/backlight/ocp8178_bl.c b/drivers/video/backlight/ocp8178_bl.c
new file mode 100644
index 000000000000..db8db1771644
--- /dev/null
+++ b/drivers/video/backlight/ocp8178_bl.c
@@ -0,0 +1,277 @@
+/*
+ * ocp8178_bl.c - ocp8178 backlight driver
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <linux/backlight.h>
+#include <linux/err.h>
+#include <linux/fb.h>
+#include <linux/gpio.h> /* Only for legacy support */
+#include <linux/gpio/consumer.h>
+#include <linux/init.h>
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/of.h>
+#include <linux/of_gpio.h>
+#include <linux/platform_data/gpio_backlight.h>
+#include <linux/platform_device.h>
+#include <linux/slab.h>
+#include <linux/delay.h>
+#include <linux/timer.h>
+#include <linux/poll.h>
+#include <linux/proc_fs.h>
+#include <linux/seq_file.h>
+#include <linux/sched.h>
+#include <linux/interrupt.h>
+#include <linux/irq.h>
+#include <linux/io.h>
+#include <linux/clk.h>
+
+struct ocp8178_backlight {
+ struct device *dev;
+ struct device *fbdev;
+
+ struct gpio_desc *gpiod;
+ int def_value;
+ int current_value;
+};
+
+#define DETECT_DELAY 200
+#define DETECT_TIME 500
+#define DETECT_WINDOW_TIME 1000
+#define START_TIME 10
+#define END_TIME 10
+#define SHUTDOWN_TIME 3000
+#define LOW_BIT_HIGH_TIME 10
+#define LOW_BIT_LOW_TIME 50
+#define HIGH_BIT_HIGH_TIME 50
+#define HIGH_BIT_LOW_TIME 10
+#define MAX_BRIGHTNESS_VALUE 9
+
+static void entry_1wire_mode(struct ocp8178_backlight *gbl)
+{
+ unsigned long flags = 0;
+ local_irq_save(flags);
+ gpiod_set_value(gbl->gpiod, 0);
+ mdelay(SHUTDOWN_TIME/1000);
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(DETECT_DELAY);
+ gpiod_set_value(gbl->gpiod, 0);
+ udelay(DETECT_TIME);
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(DETECT_WINDOW_TIME);
+ local_irq_restore(flags);
+}
+
+static inline void write_bit(struct ocp8178_backlight *gbl, int bit)
+{
+ if (bit) {
+ gpiod_set_value(gbl->gpiod, 0);
+ udelay(HIGH_BIT_LOW_TIME);
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(HIGH_BIT_HIGH_TIME);
+ } else {
+ gpiod_set_value(gbl->gpiod, 0);
+ udelay(LOW_BIT_LOW_TIME);
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(LOW_BIT_HIGH_TIME);
+ }
+}
+
+static void write_byte(struct ocp8178_backlight *gbl, int byte)
+{
+ unsigned long flags = 0;
+ unsigned char data = 0x72;
+ int i;
+
+ local_irq_save(flags);
+
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(START_TIME);
+ for(i = 0; i < 8; i++) {
+ if(data & 0x80) {
+ write_bit(gbl, 1);
+ } else {
+ write_bit(gbl, 0);
+ }
+ data <<= 1;
+ }
+ gpiod_set_value(gbl->gpiod, 0);
+ udelay(END_TIME);
+
+ data = byte & 0x1f;
+
+ gpiod_set_value(gbl->gpiod, 1);
+ udelay(START_TIME);
+ for(i = 0; i < 8; i++) {
+ if(data & 0x80) {
+ write_bit(gbl, 1);
+ } else {
+ write_bit(gbl, 0);
+ }
+ data <<= 1;
+ }
+ gpiod_set_value(gbl->gpiod, 0);
+ udelay(END_TIME);
+ gpiod_set_value(gbl->gpiod, 1);
+
+ local_irq_restore(flags);
+}
+
+unsigned char ocp8178_bl_table[MAX_BRIGHTNESS_VALUE+1] = {0, 1, 4, 8, 12, 16, 20, 24, 28, 31};
+
+static int ocp8178_update_status(struct backlight_device *bl)
+{
+ struct ocp8178_backlight *gbl = bl_get_data(bl);
+ int brightness = bl->props.brightness, i;
+
+ if (bl->props.power != FB_BLANK_UNBLANK ||
+ bl->props.fb_blank != FB_BLANK_UNBLANK ||
+ bl->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
+ brightness = 0;
+
+ if(brightness > MAX_BRIGHTNESS_VALUE)
+ brightness = MAX_BRIGHTNESS_VALUE;
+
+ for(i = 0; i < 2; i++) {
+ entry_1wire_mode(gbl);
+ write_byte(gbl, ocp8178_bl_table[brightness]);
+ }
+ gbl->current_value = brightness;
+
+ return 0;
+}
+
+static int ocp8178_get_brightness(struct backlight_device *bl)
+{
+ struct ocp8178_backlight *gbl = bl_get_data(bl);
+ return gbl->current_value;
+}
+
+static int ocp8178_check_fb(struct backlight_device *bl,
+ struct fb_info *info)
+{
+ struct ocp8178_backlight *gbl = bl_get_data(bl);
+ return gbl->fbdev == NULL || gbl->fbdev == info->dev;
+}
+
+static const struct backlight_ops ocp8178_backlight_ops = {
+ .options = BL_CORE_SUSPENDRESUME,
+ .update_status = ocp8178_update_status,
+ .get_brightness = ocp8178_get_brightness,
+ .check_fb = ocp8178_check_fb,
+};
+
+static int ocp8178_probe_dt(struct platform_device *pdev,
+ struct ocp8178_backlight *gbl)
+{
+ struct device *dev = &pdev->dev;
+ struct device_node *np = dev->of_node;
+ enum gpiod_flags flags;
+ int ret = 0;
+ u32 value32;
+
+ of_property_read_u32(np, "default-brightness", &value32);
+ if(value32 > MAX_BRIGHTNESS_VALUE)
+ gbl->def_value = MAX_BRIGHTNESS_VALUE;
+ else
+ gbl->def_value = value32;
+ flags = gbl->def_value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW;
+
+ gbl->gpiod = devm_gpiod_get(dev, "backlight-control", flags);
+ if (IS_ERR(gbl->gpiod)) {
+ ret = PTR_ERR(gbl->gpiod);
+
+ if (ret != -EPROBE_DEFER) {
+ dev_err(dev,
+ "Error: The gpios parameter is missing or invalid.\n");
+ }
+ }
+
+ return ret;
+}
+
+static struct backlight_device *backlight;
+
+static int ocp8178_probe(struct platform_device *pdev)
+{
+ struct backlight_properties props;
+ struct backlight_device *bl;
+ struct ocp8178_backlight *gbl;
+ struct device_node *np = pdev->dev.of_node;
+ int ret;
+
+ if ( !np) {
+ dev_err(&pdev->dev,
+ "failed to find platform data or device tree node.\n");
+ return -ENODEV;
+ }
+
+ gbl = devm_kzalloc(&pdev->dev, sizeof(*gbl), GFP_KERNEL);
+ if (gbl == NULL)
+ return -ENOMEM;
+
+ gbl->dev = &pdev->dev;
+
+ ret = ocp8178_probe_dt(pdev, gbl);
+ if (ret)
+ return ret;
+
+ gbl->current_value = gbl->def_value;
+
+ memset(&props, 0, sizeof(props));
+ props.type = BACKLIGHT_RAW;
+ props.max_brightness = MAX_BRIGHTNESS_VALUE;
+ bl = devm_backlight_device_register(&pdev->dev, dev_name(&pdev->dev),
+ &pdev->dev, gbl, &ocp8178_backlight_ops,
+ &props);
+ if (IS_ERR(bl)) {
+ dev_err(&pdev->dev, "failed to register backlight\n");
+ return PTR_ERR(bl);
+ }
+
+// entry_1wire_mode(gbl);
+
+ bl->props.brightness = gbl->def_value;
+ backlight_update_status(bl);
+
+ platform_set_drvdata(pdev, bl);
+
+ backlight = bl;
+ return 0;
+}
+
+static int ocp8178_suspend(struct platform_device *pdev, pm_message_t state)
+{
+ return 0;
+}
+
+static int ocp8178_resume(struct platform_device *pdev)
+{
+ return 0;
+}
+
+static struct of_device_id ocp8178_of_match[] = {
+ { .compatible = "ocp8178-backlight" },
+ { /* sentinel */ }
+};
+
+MODULE_DEVICE_TABLE(of, ocp8178_of_match);
+
+static struct platform_driver ocp8178_driver = {
+ .driver = {
+ .name = "ocp8178-backlight",
+ .of_match_table = of_match_ptr(ocp8178_of_match),
+ },
+ .probe = ocp8178_probe,
+ .suspend = ocp8178_suspend,
+ .resume = ocp8178_resume,
+};
+
+module_platform_driver(ocp8178_driver);
+
+MODULE_DESCRIPTION("OCP8178 Driver");
+MODULE_LICENSE("GPL");
--
2.53.0
@@ -0,0 +1,530 @@
From 3034db8bfb94b1e4793c99d777c2f6d6e8efb525 Mon Sep 17 00:00:00 2001
From: ayakael <antoine@ayakael.net>
Date: Sun, 8 Feb 2026 09:17:29 -0500
Subject: [PATCH 2/3] drm: panel: add clockwork cwu50
set `power_off_case` to 2(other than 1) to enable power off by
DCS command
---
drivers/gpu/drm/panel/Kconfig | 12 +
drivers/gpu/drm/panel/Makefile | 1 +
drivers/gpu/drm/panel/panel-cwu50.c | 477 ++++++++++++++++++++++++++++
3 files changed, 490 insertions(+)
create mode 100644 drivers/gpu/drm/panel/panel-cwu50.c
diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index 0c2e06c01840..b2e2eff3aa03 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -761,4 +761,16 @@ config DRM_PANEL_XINPENG_XPP055C272
Say Y here if you want to enable support for the Xinpeng
XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
system interfaces.
+
+config DRM_PANEL_CWU50
+ tristate "CWU50 panel"
+ depends on OF
+ depends on DRM_MIPI_DSI
+ depends on BACKLIGHT_CLASS_DEVICE
+ help
+ Say Y here if you want to enable support for CWU50 panel.
+ The panel has a 720x1280 resolution and uses 24 bit RGB per pixel.
+
+ To compile this driver as a module, choose M here: the module
+ will be called panel-cwu50.
endmenu
diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
index f0db434747a1..05754c6e38e1 100644
--- a/drivers/gpu/drm/panel/Makefile
+++ b/drivers/gpu/drm/panel/Makefile
@@ -78,3 +78,4 @@ obj-$(CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA) += panel-truly-nt35597.o
obj-$(CONFIG_DRM_PANEL_VISIONOX_RM69299) += panel-visionox-rm69299.o
obj-$(CONFIG_DRM_PANEL_WIDECHIPS_WS2401) += panel-widechips-ws2401.o
obj-$(CONFIG_DRM_PANEL_XINPENG_XPP055C272) += panel-xinpeng-xpp055c272.o
+obj-$(CONFIG_DRM_PANEL_CWU50) += panel-cwu50.o
diff --git a/drivers/gpu/drm/panel/panel-cwu50.c b/drivers/gpu/drm/panel/panel-cwu50.c
new file mode 100644
index 000000000000..203fa28d6652
--- /dev/null
+++ b/drivers/gpu/drm/panel/panel-cwu50.c
@@ -0,0 +1,477 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+#include <drm/drm_modes.h>
+#include <drm/drm_mipi_dsi.h>
+#include <drm/drm_panel.h>
+#include <linux/backlight.h>
+#include <linux/gpio/consumer.h>
+#include <linux/regulator/consumer.h>
+#include <linux/delay.h>
+#include <linux/of_device.h>
+#include <linux/module.h>
+
+struct cwu50 {
+ struct device *dev;
+ struct drm_panel panel;
+ struct regulator *supply;
+ struct gpio_desc *reset_gpio;
+ struct backlight_device *backlight;
+ bool prepared;
+ bool enabled;
+ enum drm_panel_orientation orientation;
+};
+
+static const struct drm_display_mode default_mode = {
+ .clock = 62500,
+ .hdisplay = 720,
+ .hsync_start = 720 + 43,
+ .hsync_end = 720+ 43 + 20,
+ .htotal = 720 + 43 + 20 + 20,
+ .vdisplay = 1280,
+ .vsync_start = 1280 + 8,
+ .vsync_end = 1280 + 8+ 2,
+ .vtotal = 1280 + 8 + 2 + 16,
+};
+
+static inline struct cwu50 *panel_to_cwu50(struct drm_panel *panel)
+{
+ return container_of(panel, struct cwu50, panel);
+}
+
+#define dcs_write_seq(seq...) \
+({ \
+ static const u8 d[] = { seq }; \
+ mipi_dsi_dcs_write_buffer(dsi, d, ARRAY_SIZE(d)); \
+})
+
+static void cwu50_init_sequence(struct cwu50 *ctx)
+{
+ struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev);
+
+ dcs_write_seq(0xE1,0x93);
+ dcs_write_seq(0xE2,0x65);
+ dcs_write_seq(0xE3,0xF8);
+ dcs_write_seq(0x70,0x20);
+ dcs_write_seq(0x71,0x13);
+ dcs_write_seq(0x72,0x06);
+ dcs_write_seq(0x75,0x03);
+ dcs_write_seq(0xE0,0x01);
+ dcs_write_seq(0x00,0x00);
+ dcs_write_seq(0x01,0x47);//VCOM0x47
+ dcs_write_seq(0x03,0x00);
+ dcs_write_seq(0x04,0x4D);
+ dcs_write_seq(0x0C,0x64);
+ dcs_write_seq(0x17,0x00);
+ dcs_write_seq(0x18,0xBF);
+ dcs_write_seq(0x19,0x00);
+ dcs_write_seq(0x1A,0x00);
+ dcs_write_seq(0x1B,0xBF);
+ dcs_write_seq(0x1C,0x00);
+ dcs_write_seq(0x1F,0x7E);
+ dcs_write_seq(0x20,0x24);
+ dcs_write_seq(0x21,0x24);
+ dcs_write_seq(0x22,0x4E);
+ dcs_write_seq(0x24,0xFE);
+ dcs_write_seq(0x37,0x09);
+ dcs_write_seq(0x38,0x04);
+ dcs_write_seq(0x3C,0x76);
+ dcs_write_seq(0x3D,0xFF);
+ dcs_write_seq(0x3E,0xFF);
+ dcs_write_seq(0x3F,0x7F);
+ dcs_write_seq(0x40,0x04);//Dot inversion type
+ dcs_write_seq(0x41,0xA0);
+ dcs_write_seq(0x44,0x11);
+ dcs_write_seq(0x55,0x02);
+ dcs_write_seq(0x56,0x01);
+ dcs_write_seq(0x57,0x49);
+ dcs_write_seq(0x58,0x09);
+ dcs_write_seq(0x59,0x2A);
+ dcs_write_seq(0x5A,0x1A);
+ dcs_write_seq(0x5B,0x1A);
+ dcs_write_seq(0x5D,0x78);
+ dcs_write_seq(0x5E,0x6E);
+ dcs_write_seq(0x5F,0x66);
+ dcs_write_seq(0x60,0x5E);
+ dcs_write_seq(0x61,0x60);
+ dcs_write_seq(0x62,0x54);
+ dcs_write_seq(0x63,0x5C);
+ dcs_write_seq(0x64,0x47);
+ dcs_write_seq(0x65,0x5F);
+ dcs_write_seq(0x66,0x5D);
+ dcs_write_seq(0x67,0x5B);
+ dcs_write_seq(0x68,0x76);
+ dcs_write_seq(0x69,0x61);
+ dcs_write_seq(0x6A,0x63);
+ dcs_write_seq(0x6B,0x50);
+ dcs_write_seq(0x6C,0x45);
+ dcs_write_seq(0x6D,0x34);
+ dcs_write_seq(0x6E,0x1C);
+ dcs_write_seq(0x6F,0x07);
+ dcs_write_seq(0x70,0x78);
+ dcs_write_seq(0x71,0x6E);
+ dcs_write_seq(0x72,0x66);
+ dcs_write_seq(0x73,0x5E);
+ dcs_write_seq(0x74,0x60);
+ dcs_write_seq(0x75,0x54);
+ dcs_write_seq(0x76,0x5C);
+ dcs_write_seq(0x77,0x47);
+ dcs_write_seq(0x78,0x5F);
+ dcs_write_seq(0x79,0x5D);
+ dcs_write_seq(0x7A,0x5B);
+ dcs_write_seq(0x7B,0x76);
+ dcs_write_seq(0x7C,0x61);
+ dcs_write_seq(0x7D,0x63);
+ dcs_write_seq(0x7E,0x50);
+ dcs_write_seq(0x7F,0x45);
+ dcs_write_seq(0x80,0x34);
+ dcs_write_seq(0x81,0x1C);
+ dcs_write_seq(0x82,0x07);
+ dcs_write_seq(0xE0,0x02);
+ dcs_write_seq(0x00,0x44);
+ dcs_write_seq(0x01,0x46);
+ dcs_write_seq(0x02,0x48);
+ dcs_write_seq(0x03,0x4A);
+ dcs_write_seq(0x04,0x40);
+ dcs_write_seq(0x05,0x42);
+ dcs_write_seq(0x06,0x1F);
+ dcs_write_seq(0x07,0x1F);
+ dcs_write_seq(0x08,0x1F);
+ dcs_write_seq(0x09,0x1F);
+ dcs_write_seq(0x0A,0x1F);
+ dcs_write_seq(0x0B,0x1F);
+ dcs_write_seq(0x0C,0x1F);
+ dcs_write_seq(0x0D,0x1F);
+ dcs_write_seq(0x0E,0x1F);
+ dcs_write_seq(0x0F,0x1F);
+ dcs_write_seq(0x10,0x1F);
+ dcs_write_seq(0x11,0x1F);
+ dcs_write_seq(0x12,0x1F);
+ dcs_write_seq(0x13,0x1F);
+ dcs_write_seq(0x14,0x1E);
+ dcs_write_seq(0x15,0x1F);
+ dcs_write_seq(0x16,0x45);
+ dcs_write_seq(0x17,0x47);
+ dcs_write_seq(0x18,0x49);
+ dcs_write_seq(0x19,0x4B);
+ dcs_write_seq(0x1A,0x41);
+ dcs_write_seq(0x1B,0x43);
+ dcs_write_seq(0x1C,0x1F);
+ dcs_write_seq(0x1D,0x1F);
+ dcs_write_seq(0x1E,0x1F);
+ dcs_write_seq(0x1F,0x1F);
+ dcs_write_seq(0x20,0x1F);
+ dcs_write_seq(0x21,0x1F);
+ dcs_write_seq(0x22,0x1F);
+ dcs_write_seq(0x23,0x1F);
+ dcs_write_seq(0x24,0x1F);
+ dcs_write_seq(0x25,0x1F);
+ dcs_write_seq(0x26,0x1F);
+ dcs_write_seq(0x27,0x1F);
+ dcs_write_seq(0x28,0x1F);
+ dcs_write_seq(0x29,0x1F);
+ dcs_write_seq(0x2A,0x1E);
+ dcs_write_seq(0x2B,0x1F);
+ dcs_write_seq(0x2C,0x0B);
+ dcs_write_seq(0x2D,0x09);
+ dcs_write_seq(0x2E,0x07);
+ dcs_write_seq(0x2F,0x05);
+ dcs_write_seq(0x30,0x03);
+ dcs_write_seq(0x31,0x01);
+ dcs_write_seq(0x32,0x1F);
+ dcs_write_seq(0x33,0x1F);
+ dcs_write_seq(0x34,0x1F);
+ dcs_write_seq(0x35,0x1F);
+ dcs_write_seq(0x36,0x1F);
+ dcs_write_seq(0x37,0x1F);
+ dcs_write_seq(0x38,0x1F);
+ dcs_write_seq(0x39,0x1F);
+ dcs_write_seq(0x3A,0x1F);
+ dcs_write_seq(0x3B,0x1F);
+ dcs_write_seq(0x3C,0x1F);
+ dcs_write_seq(0x3D,0x1F);
+ dcs_write_seq(0x3E,0x1F);
+ dcs_write_seq(0x3F,0x1F);
+ dcs_write_seq(0x40,0x1F);
+ dcs_write_seq(0x41,0x1E);
+ dcs_write_seq(0x42,0x0A);
+ dcs_write_seq(0x43,0x08);
+ dcs_write_seq(0x44,0x06);
+ dcs_write_seq(0x45,0x04);
+ dcs_write_seq(0x46,0x02);
+ dcs_write_seq(0x47,0x00);
+ dcs_write_seq(0x48,0x1F);
+ dcs_write_seq(0x49,0x1F);
+ dcs_write_seq(0x4A,0x1F);
+ dcs_write_seq(0x4B,0x1F);
+ dcs_write_seq(0x4C,0x1F);
+ dcs_write_seq(0x4D,0x1F);
+ dcs_write_seq(0x4E,0x1F);
+ dcs_write_seq(0x4F,0x1F);
+ dcs_write_seq(0x50,0x1F);
+ dcs_write_seq(0x51,0x1F);
+ dcs_write_seq(0x52,0x1F);
+ dcs_write_seq(0x53,0x1F);
+ dcs_write_seq(0x54,0x1F);
+ dcs_write_seq(0x55,0x1F);
+ dcs_write_seq(0x56,0x1F);
+ dcs_write_seq(0x57,0x1E);
+ dcs_write_seq(0x58,0x40);
+ dcs_write_seq(0x59,0x00);
+ dcs_write_seq(0x5A,0x00);
+ dcs_write_seq(0x5B,0x30);
+ dcs_write_seq(0x5C,0x02);
+ dcs_write_seq(0x5D,0x40);
+ dcs_write_seq(0x5E,0x01);
+ dcs_write_seq(0x5F,0x02);
+ dcs_write_seq(0x60,0x00);
+ dcs_write_seq(0x61,0x01);
+ dcs_write_seq(0x62,0x02);
+ dcs_write_seq(0x63,0x65);
+ dcs_write_seq(0x64,0x66);
+ dcs_write_seq(0x65,0x00);
+ dcs_write_seq(0x66,0x00);
+ dcs_write_seq(0x67,0x74);
+ dcs_write_seq(0x68,0x06);
+ dcs_write_seq(0x69,0x65);
+ dcs_write_seq(0x6A,0x66);
+ dcs_write_seq(0x6B,0x10);
+ dcs_write_seq(0x6C,0x00);
+ dcs_write_seq(0x6D,0x04);
+ dcs_write_seq(0x6E,0x04);
+ dcs_write_seq(0x6F,0x88);
+ dcs_write_seq(0x70,0x00);
+ dcs_write_seq(0x71,0x00);
+ dcs_write_seq(0x72,0x06);
+ dcs_write_seq(0x73,0x7B);
+ dcs_write_seq(0x74,0x00);
+ dcs_write_seq(0x75,0x87);
+ dcs_write_seq(0x76,0x00);
+ dcs_write_seq(0x77,0x5D);
+ dcs_write_seq(0x78,0x17);
+ dcs_write_seq(0x79,0x1F);
+ dcs_write_seq(0x7A,0x00);
+ dcs_write_seq(0x7B,0x00);
+ dcs_write_seq(0x7C,0x00);
+ dcs_write_seq(0x7D,0x03);
+ dcs_write_seq(0x7E,0x7B);
+ dcs_write_seq(0xE0,0x04);
+ dcs_write_seq(0x09,0x10);
+ dcs_write_seq(0xE0,0x00);
+ dcs_write_seq(0xE6,0x02);
+ dcs_write_seq(0xE7,0x02);
+ dcs_write_seq(0x11);// SLPOUT
+ msleep (120);
+ dcs_write_seq(0x29);// DSPON
+ msleep (20);
+ dcs_write_seq(0x35,0x00);
+}
+
+static int cwu50_disable(struct drm_panel *panel)
+{
+ struct cwu50 *ctx = panel_to_cwu50(panel);
+
+ if (!ctx->enabled)
+ return 0;
+
+ backlight_disable(ctx->backlight);
+
+ ctx->enabled = false;
+
+ return 0;
+}
+
+static int cwu50_unprepare(struct drm_panel *panel)
+{
+
+#if 0
+ if (!ctx->prepared)
+ return 0;
+
+ ret = mipi_dsi_dcs_set_display_off(dsi);
+ if (ret) {
+ dev_err(ctx->dev, "failed to turn display off (%d)\n", ret);
+ return ret;
+ }
+
+ ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
+ if (ret) {
+ dev_err(ctx->dev, "failed to enter sleep mode (%d)\n", ret);
+ return ret;
+ }
+ msleep(120);
+
+ gpiod_set_value_cansleep(ctx->reset_gpio, 0);
+ msleep(5);
+
+ ctx->prepared = false;
+#endif
+
+ return 0;
+}
+
+static int cwu50_prepare(struct drm_panel *panel)
+{
+ struct cwu50 *ctx = panel_to_cwu50(panel);
+ struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev);
+ int ret;
+
+ if (ctx->prepared)
+ return 0;
+
+ gpiod_set_value_cansleep(ctx->reset_gpio, 0);
+ msleep(10);
+ gpiod_set_value_cansleep(ctx->reset_gpio, 1);
+ msleep(120);
+
+ /* Enabe tearing mode: send TE (tearing effect) at VBLANK */
+ ret = mipi_dsi_dcs_set_tear_on(dsi, MIPI_DSI_DCS_TEAR_MODE_VBLANK);
+ if (ret) {
+ dev_err(ctx->dev, "failed to enable vblank TE (%d)\n", ret);
+ return ret;
+ }
+ /* Exit sleep mode and power on */
+
+ cwu50_init_sequence(ctx);
+
+ ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
+ if (ret) {
+ dev_err(ctx->dev, "failed to exit sleep mode (%d)\n", ret);
+ return ret;
+ }
+ msleep(120);
+
+ ret = mipi_dsi_dcs_set_display_on(dsi);
+ if (ret) {
+ dev_err(ctx->dev, "failed to turn display on (%d)\n", ret);
+ return ret;
+ }
+ msleep(20);
+
+ ctx->prepared = true;
+
+ return 0;
+}
+
+static int cwu50_enable(struct drm_panel *panel)
+{
+ struct cwu50 *ctx = panel_to_cwu50(panel);
+
+ if (ctx->enabled)
+ return 0;
+
+ backlight_enable(ctx->backlight);
+
+ ctx->enabled = true;
+
+ return 0;
+}
+
+static int cwu50_get_modes(struct drm_panel *panel, struct drm_connector *connector)
+{
+ struct cwu50 *ctx = panel_to_cwu50(panel);
+ struct drm_display_mode *mode;
+
+ mode = drm_mode_duplicate(connector->dev, &default_mode);
+ if (!mode) {
+ dev_err(panel->dev, "bad mode or failed to add mode\n");
+ return -EINVAL;
+ }
+ drm_mode_set_name(mode);
+ mode->type = DRM_MODE_TYPE_DRIVER | DRM_MODE_TYPE_PREFERRED;
+
+ connector->display_info.width_mm = mode->width_mm;
+ connector->display_info.height_mm = mode->height_mm;
+
+ /* set up connector's "panel orientation" property */
+ drm_connector_set_panel_orientation(connector, ctx->orientation);
+
+ drm_mode_probed_add(connector, mode);
+
+ return 1; /* Number of modes */
+}
+
+static const struct drm_panel_funcs cwu50_drm_funcs = {
+ .disable = cwu50_disable,
+ .unprepare = cwu50_unprepare,
+ .prepare = cwu50_prepare,
+ .enable = cwu50_enable,
+ .get_modes = cwu50_get_modes,
+};
+
+static int cwu50_probe(struct mipi_dsi_device *dsi)
+{
+ struct device *dev = &dsi->dev;
+ struct cwu50 *ctx;
+ int ret;
+
+ ctx = devm_kzalloc(dev, sizeof(*ctx), GFP_KERNEL);
+ if (!ctx)
+ return -ENOMEM;
+
+ mipi_dsi_set_drvdata(dsi, ctx);
+ ctx->dev = dev;
+
+ dsi->lanes = 4;
+ dsi->format = MIPI_DSI_FMT_RGB888;
+ dsi->mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_VIDEO_SYNC_PULSE;
+
+ ctx->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
+ if (IS_ERR(ctx->reset_gpio)) {
+ ret = PTR_ERR(ctx->reset_gpio);
+ if (ret != -EPROBE_DEFER)
+ dev_err(dev, "failed to request GPIO (%d)\n", ret);
+ return ret;
+ }
+
+ ctx->backlight = devm_of_find_backlight(dev);
+ if (IS_ERR(ctx->backlight)) {
+ dev_err(ctx->dev, "devm_of_find_backlight");
+ return PTR_ERR(ctx->backlight);
+ }
+
+ ret = of_drm_get_panel_orientation(dev->of_node, &ctx->orientation);
+ if (ret) {
+ dev_err(dev, "%pOF: failed to get orientation %d\n", dev->of_node, ret);
+ return ret;
+ }
+
+ drm_panel_init(&ctx->panel, dev, &cwu50_drm_funcs, DRM_MODE_CONNECTOR_DSI);
+
+ drm_panel_add(&ctx->panel);
+
+ ret = mipi_dsi_attach(dsi);
+ if (ret < 0) {
+ dev_err(dev, "mipi_dsi_attach() failed: %d\n", ret);
+ drm_panel_remove(&ctx->panel);
+ return ret;
+ }
+
+ return 0;
+}
+
+static void cwu50_remove(struct mipi_dsi_device *dsi)
+{
+ struct cwu50 *ctx = mipi_dsi_get_drvdata(dsi);
+
+ mipi_dsi_detach(dsi);
+ drm_panel_remove(&ctx->panel);
+}
+
+static const struct of_device_id cwu50_of_match[] = {
+ { .compatible = "cw,cwu50" },
+ { }
+};
+MODULE_DEVICE_TABLE(of, cwu50_of_match);
+
+static struct mipi_dsi_driver cwu50_driver = {
+ .probe = cwu50_probe,
+ .remove = cwu50_remove,
+ .driver = {
+ .name = "panel-cwu50",
+ .of_match_table = cwu50_of_match,
+ },
+};
+module_mipi_dsi_driver(cwu50_driver);
+
+MODULE_DESCRIPTION("DRM Driver for cwu50 MIPI DSI panel");
+MODULE_LICENSE("GPL v2");
--
2.53.0
@@ -0,0 +1,247 @@
From adc1869bbc73b30f346846f6c083cb130aca5147 Mon Sep 17 00:00:00 2001
From: ayakael <antoine@ayakael.net>
Date: Sun, 8 Feb 2026 09:18:08 -0500
Subject: [PATCH 3/3] power: axp20x_battery: implement calibration
---
drivers/power/supply/axp20x_ac_power.c | 6 +-
drivers/power/supply/axp20x_battery.c | 106 ++++++++++++++++++++++++-
2 files changed, 106 insertions(+), 6 deletions(-)
diff --git a/drivers/power/supply/axp20x_ac_power.c b/drivers/power/supply/axp20x_ac_power.c
index 57e50208d537..5d7c0d7ea16b 100644
--- a/drivers/power/supply/axp20x_ac_power.c
+++ b/drivers/power/supply/axp20x_ac_power.c
@@ -13,7 +13,6 @@
#include <linux/mfd/axp20x.h>
#include <linux/module.h>
#include <linux/of.h>
-#include <linux/of_device.h>
#include <linux/platform_device.h>
#include <linux/pm.h>
#include <linux/power_supply.h>
@@ -53,6 +52,9 @@ static irqreturn_t axp20x_ac_power_irq(int irq, void *devid)
{
struct axp20x_ac_power *power = devid;
+ regmap_update_bits(power->regmap, AXP20X_VBUS_IPSOUT_MGMT, 0x03, 0x00);
+ regmap_update_bits(power->regmap, AXP20X_VBUS_IPSOUT_MGMT, 0x03, 0x03);
+
power_supply_changed(power->supply);
return IRQ_HANDLED;
@@ -335,7 +337,7 @@ static int axp20x_ac_power_probe(struct platform_device *pdev)
return -EINVAL;
}
- axp_data = of_device_get_match_data(&pdev->dev);
+ axp_data = device_get_match_data(&pdev->dev);
power = devm_kzalloc(&pdev->dev,
struct_size(power, irqs, axp_data->num_irq_names),
diff --git a/drivers/power/supply/axp20x_battery.c b/drivers/power/supply/axp20x_battery.c
index 9106077c0dbb..7f9a7059f17d 100644
--- a/drivers/power/supply/axp20x_battery.c
+++ b/drivers/power/supply/axp20x_battery.c
@@ -22,7 +22,6 @@
#include <linux/irq.h>
#include <linux/module.h>
#include <linux/of.h>
-#include <linux/of_device.h>
#include <linux/platform_device.h>
#include <linux/power_supply.h>
#include <linux/regmap.h>
@@ -56,6 +55,10 @@
#define AXP20X_V_OFF_MASK GENMASK(2, 0)
+#define AXP228_FULL_CAPACITY_CALIBRATE_EN BIT(5)
+#define AXP228_CAPACITY_CALIBRATE BIT(4)
+#define AXP228_CALIBRATE_MASK (BIT(4) | BIT(5))
+
struct axp20x_batt_ps;
struct axp_data {
@@ -75,6 +78,9 @@ struct axp20x_batt_ps {
struct iio_channel *batt_v;
/* Maximum constant charge current */
unsigned int max_ccc;
+ int energy_full_design;
+ int current_now;
+ int voltage_now;
const struct axp_data *data;
};
@@ -276,6 +282,7 @@ static int axp20x_battery_get_prop(struct power_supply *psy,
/* IIO framework gives mA but Power Supply framework gives uA */
val->intval *= 1000;
+ axp20x_batt->current_now = val->intval;
break;
case POWER_SUPPLY_PROP_CAPACITY:
@@ -324,8 +331,60 @@ static int axp20x_battery_get_prop(struct power_supply *psy,
/* IIO framework gives mV but Power Supply framework gives uV */
val->intval *= 1000;
+ axp20x_batt->current_now = val->intval;
break;
+ case POWER_SUPPLY_PROP_ENERGY_FULL:
+ case POWER_SUPPLY_PROP_ENERGY_NOW:
+ case POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN:
+ /* When no battery is present, return 0 */
+ ret = regmap_read(axp20x_batt->regmap, AXP20X_PWR_OP_MODE,
+ &reg);
+ if (ret)
+ return ret;
+
+ if (!(reg & AXP20X_PWR_OP_BATT_PRESENT)) {
+ val->intval = 0;
+ return 0;
+ }
+
+ if(psp == POWER_SUPPLY_PROP_ENERGY_FULL) {
+ // TODO
+ val->intval = axp20x_batt->energy_full_design;
+ return 0;
+ }
+
+ if(psp == POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN) {
+ val->intval = axp20x_batt->energy_full_design;
+ return 0;
+ }
+
+ ret = regmap_read(axp20x_batt->regmap, AXP20X_FG_RES, &reg);
+ if (ret)
+ return ret;
+
+ if (axp20x_batt->data->has_fg_valid && !(reg & AXP22X_FG_VALID))
+ return -EINVAL;
+
+ val1 = reg & AXP209_FG_PERCENT;
+ val1 = max(min(val1, 100), 0);
+ val->intval = (val1 * ((long long int)axp20x_batt->energy_full_design)) / 100;
+ break;
+
+ case POWER_SUPPLY_PROP_CALIBRATE:
+ // report both calibrate enable flag and calibration status
+ ret = regmap_read(axp20x_batt->regmap, AXP20X_CC_CTRL, &reg);
+ if (ret)
+ return ret;
+ val1 = reg & AXP228_CALIBRATE_MASK;
+ val->intval = val1;
+ break;
+
+ case POWER_SUPPLY_PROP_POWER_NOW:
+ val->intval = (axp20x_batt->voltage_now / 10000) * axp20x_batt->current_now;
+ val->intval = val->intval / 100; // uW
+ break;
+
default:
return -EINVAL;
}
@@ -454,6 +513,7 @@ static int axp20x_battery_set_prop(struct power_supply *psy,
const union power_supply_propval *val)
{
struct axp20x_batt_ps *axp20x_batt = power_supply_get_drvdata(psy);
+ int val1;
switch (psp) {
case POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN:
@@ -468,6 +528,16 @@ static int axp20x_battery_set_prop(struct power_supply *psy,
case POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX:
return axp20x_set_max_constant_charge_current(axp20x_batt,
val->intval);
+
+ case POWER_SUPPLY_PROP_CALIBRATE:
+ if (val->intval) {
+ // enable calibrate
+ val1 = AXP228_FULL_CAPACITY_CALIBRATE_EN | AXP228_CAPACITY_CALIBRATE;
+ } else {
+ // disable calibrate
+ val1 = 0;
+ }
+ return regmap_update_bits(axp20x_batt->regmap, AXP20X_CC_CTRL, AXP228_CALIBRATE_MASK, val1);
case POWER_SUPPLY_PROP_STATUS:
switch (val->intval) {
case POWER_SUPPLY_STATUS_CHARGING:
@@ -497,6 +567,11 @@ static enum power_supply_property axp20x_battery_props[] = {
POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN,
POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN,
POWER_SUPPLY_PROP_CAPACITY,
+ POWER_SUPPLY_PROP_ENERGY_FULL,
+ POWER_SUPPLY_PROP_ENERGY_NOW,
+ POWER_SUPPLY_PROP_ENERGY_FULL_DESIGN,
+ POWER_SUPPLY_PROP_CALIBRATE,
+ POWER_SUPPLY_PROP_POWER_NOW,
};
static int axp20x_battery_prop_writeable(struct power_supply *psy,
@@ -506,7 +581,8 @@ static int axp20x_battery_prop_writeable(struct power_supply *psy,
psp == POWER_SUPPLY_PROP_VOLTAGE_MIN_DESIGN ||
psp == POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN ||
psp == POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT ||
- psp == POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX;
+ psp == POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX ||
+ psp == POWER_SUPPLY_PROP_CALIBRATE;
}
static const struct power_supply_desc axp20x_batt_ps_desc = {
@@ -602,7 +678,7 @@ static int axp20x_power_probe(struct platform_device *pdev)
psy_cfg.drv_data = axp20x_batt;
psy_cfg.of_node = pdev->dev.of_node;
- axp20x_batt->data = (struct axp_data *)of_device_get_match_data(dev);
+ axp20x_batt->data = (struct axp_data *)device_get_match_data(dev);
axp20x_batt->batt = devm_power_supply_register(&pdev->dev,
&axp20x_batt_ps_desc,
@@ -616,6 +692,7 @@ static int axp20x_power_probe(struct platform_device *pdev)
if (!power_supply_get_battery_info(axp20x_batt->batt, &info)) {
int vmin = info->voltage_min_design_uv;
int ccc = info->constant_charge_current_max_ua;
+ int cfd = info->charge_full_design_uah;
if (vmin > 0 && axp20x_set_voltage_min_design(axp20x_batt,
vmin))
@@ -633,7 +710,22 @@ static int axp20x_power_probe(struct platform_device *pdev)
axp20x_batt->max_ccc = ccc;
axp20x_set_constant_charge_current(axp20x_batt, ccc);
}
- }
+
+
+ axp20x_batt->energy_full_design = info->energy_full_design_uwh;
+ // tell pmic about our battery
+ if (cfd) {
+ // [14:8], [7:0], cfd = Value * 1.456mAh
+ cfd = cfd / 1456;
+ regmap_update_bits(axp20x_batt->regmap, AXP288_FG_DES_CAP0_REG, 0xff, cfd & 0xff);
+ regmap_update_bits(axp20x_batt->regmap, AXP288_FG_DES_CAP1_REG, 0xff, BIT(7) | ((cfd >> 8) & 0xff));
+ } else {
+ dev_warn(axp20x_batt->dev, "charge full design is not set");
+ }
+ } else {
+ axp20x_batt->energy_full_design = 8000000;
+ dev_warn(axp20x_batt->dev, "energy full design is not set, default to %d\n", axp20x_batt->energy_full_design);
+ }
/*
* Update max CCC to a valid value if battery info is present or set it
@@ -642,6 +734,12 @@ static int axp20x_power_probe(struct platform_device *pdev)
axp20x_get_constant_charge_current(axp20x_batt,
&axp20x_batt->max_ccc);
+ regmap_update_bits(axp20x_batt->regmap, AXP20X_VBUS_IPSOUT_MGMT, 0x03, 0x03);
+ regmap_update_bits(axp20x_batt->regmap, AXP20X_OFF_CTRL, 0x08, 0x08);
+ regmap_update_bits(axp20x_batt->regmap, AXP20X_CHRG_CTRL2, 0x30, 0x20);
+ regmap_update_bits(axp20x_batt->regmap, AXP20X_PEK_KEY, 0x0f, 0x0b);
+ regmap_update_bits(axp20x_batt->regmap, AXP20X_GPIO0_CTRL, 0x07, 0x00);
+
return 0;
}
--
2.53.0
@@ -0,0 +1,91 @@
# Archived: -dev packages x86_64 binaries in aarch64 package which makes akms part of device-clockworkpi-uconsole-radxa-cm5 fail when built on aarch64
# Reference: <https://postmarketos.org/vendorkernel>
# Kernel config based on: arch/arm64/configs/rockchip_linux_defconfig
maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=linux-clockworkpi-uconsole-radxa-cm5
pkgver=6.1.115
pkgrel=2
pkgdesc="Radxa kernel fork with uConsole drivers"
arch="aarch64"
_carch="arm64"
_flavor="clockworkpi-uconsole-radxa-cm5"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native"
makedepends="
bash
bc
bison
devicepkg-dev
dtc
flex
findutils
installkernel
linux-firmware
linux-headers
openssl-dev
perl
xz
zstd
"
# Source
_repository="kernel"
# from linux-6.1-stan-rkr5.1
_commit="8582469f117fdfd5d1ab88fa7e4e15c3b714bf24"
_dtso_commit="c2204834e1d7d0acfd64e1b7874d432bc142f1a4"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/radxa/$_repository/archive/$_commit.tar.gz
radxa-cm5-uconsole-$_dtso_commit.tar.gz::https://github.com/dev-null2019/radxa-cm5-uconsole/archive/$_dtso_commit.tar.gz
$_config
0001-video-backlight-Add-OCP8178-backlight-driver.patch
0002-drm-panel-add-clockwork-cwu50.patch
0003-power-axp20x_battery-implement-calibration.patch
postmarketos-defconfig.patch
"
replaces="linux-radxa=$pkgver-r$pkgrel"
builddir="$srcdir/$_repository-$_commit"
_builddir="$srcdir"/build-$_flavor.$CARCH
_dtsodir="$srcdir"/radxa-cm5-uconsole-$_dtso_commit/devicetree_overlays
prepare() {
default_prepare
cp "$srcdir/config-$_flavor.$CARCH" .config
}
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1))-postmarketOS"
# generate dtbo for uconsole
for dts in "$_dtsodir"/*.dts; do
cpp -nostdinc -I "$_dtsodir" -I arch -undef -x assembler-with-cpp $dts $dts.preprocessed
dtc -O dtb -o ${dts/.dts/.dtbo} $dts.preprocessed
done
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"
make modules_install dtbs_install \
ARCH="$_carch" \
INSTALL_PATH="$pkgdir"/boot \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_MOD_STRIP=1 \
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
rm -f "$pkgdir"/lib/modules/*/build "$pkgdir"/lib/modules/*/source
# merge dtbos with soc dtb for uconsole
fdtoverlay -i "$builddir"/arch/arm64/boot/dts/rockchip/rk3588s-radxa-cm5-rpi-cm4-io.dtb "$_dtsodir"/*.dtbo -o "$pkgdir"/boot/dtbs/rockchip/rk3588s-radxa-cm5-uconsole.dtb
}
sha512sums="
c59852f84aa505f85fd1bd30e36583aad506ae641072b2b8c69f5bb889e80d7fc6612411a912be07ae4d81b031aa3a2ede6b63121c69e0872807f8f6903abde9 linux-clockworkpi-uconsole-radxa-cm5-8582469f117fdfd5d1ab88fa7e4e15c3b714bf24.tar.gz
a15eb74d9db9114022e96ba04542d18350cf6d637c5efa49f4a5a65c33c5fd20a7997095a049a561fb7aac767a299f367489c5a342138a5259cc32ebb6152384 radxa-cm5-uconsole-c2204834e1d7d0acfd64e1b7874d432bc142f1a4.tar.gz
51da11849ccc66a133a51ea40157e22b8beb9e4e4f2bab7eb8aa6afd859b7bd4638c332dacc97e66671e1a78e7ffd497300ccc53627e0c47af50b6e34f3be8b5 config-clockworkpi-uconsole-radxa-cm5.aarch64
41ee267962fc9f5580997bfaabaafd782f42995599b127df30794a7b5147b5b7bf787de6206642480c07c7716fe494bc135f24a9bcf406ab57a73af6292fc915 0001-video-backlight-Add-OCP8178-backlight-driver.patch
e9402b88083cc2d3af6c471e36e00e65e97d88cde447ce2f59c07bf29fc712bfdeae6d6d3b503115763b57ba2ac00e827654bc24a91b1cb85b575fdd0db8f5be 0002-drm-panel-add-clockwork-cwu50.patch
f3ce23b013ed7bfbf51849ec683fad2f53ea5e7e5907bbd7f60f56c630dc3ec7d4c595fbb217019e100a053dcdbb731da1f376db5fc841562afa2059b24d7d0a 0003-power-axp20x_battery-implement-calibration.patch
2c9c3649e621841ea067dba5df1deca721c0800ee465356d4f1d71825af081cdbfaa6e88e463a2c48682ac0f3e7ed3e9b8373ee87f5f00d6aa9484be0ab82a87 postmarketos-defconfig.patch
"
@@ -2,14 +2,14 @@
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.1.115 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 14.3.0) 14.3.0"
CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 15.2.0) 15.2.0"
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=140300
CONFIG_GCC_VERSION=150200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24200
CONFIG_AS_VERSION=24501
CONFIG_LD_IS_BFD=y
CONFIG_LD_VERSION=24200
CONFIG_LD_VERSION=24501
CONFIG_LLD_VERSION=0
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
@@ -739,10 +739,11 @@ CONFIG_MODVERSIONS=y
CONFIG_ASM_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_MODULE_SIG is not set
CONFIG_MODULE_COMPRESS_NONE=y
# CONFIG_MODULE_COMPRESS_NONE is not set
# CONFIG_MODULE_COMPRESS_GZIP is not set
# CONFIG_MODULE_COMPRESS_XZ is not set
# CONFIG_MODULE_COMPRESS_ZSTD is not set
CONFIG_MODULE_COMPRESS=y
CONFIG_MODULE_COMPRESS_ZSTD=y
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
# CONFIG_TRIM_UNUSED_KSYMS is not set
@@ -2398,7 +2399,7 @@ CONFIG_BCACHE=m
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
CONFIG_DM_BUFIO=m
# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
@@ -2425,6 +2426,7 @@ CONFIG_DM_MULTIPATH_ST=m
# CONFIG_DM_MULTIPATH_IOA is not set
CONFIG_DM_DELAY=m
# CONFIG_DM_DUST is not set
# CONFIG_DM_INIT is not set
# CONFIG_DM_UEVENT is not set
CONFIG_DM_FLAKEY=m
CONFIG_DM_VERITY=m
@@ -2883,8 +2885,11 @@ CONFIG_BRCMFMAC_PROTO_BCDC=y
CONFIG_BRCMFMAC_SDIO=y
# CONFIG_BRCMFMAC_USB is not set
# CONFIG_BRCMFMAC_PCIE is not set
# CONFIG_BRCMFMAC_BT_SHARED_SDIO is not set
# CONFIG_INFFMAC_BT_SHARED_SDIO is not set
# CONFIG_BRCM_TRACING is not set
# CONFIG_BRCMDBG is not set
# CONFIG_BRCMFMAC_PCIE_BARWIN_SZ is not set
CONFIG_WLAN_VENDOR_CISCO=y
CONFIG_WLAN_VENDOR_INTEL=y
# CONFIG_IPW2100 is not set
@@ -3067,7 +3072,7 @@ CONFIG_INPUT_FF_MEMLESS=y
#
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_JOYDEV is not set
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_EVDEV=m
# CONFIG_INPUT_EVBUG is not set
#
@@ -3281,6 +3286,7 @@ CONFIG_INPUT_MISC=y
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_CM109 is not set
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_AXP20X_PEK=m
CONFIG_INPUT_UINPUT=y
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_PWM_BEEPER is not set
@@ -3383,7 +3389,7 @@ CONFIG_SERIAL_MCTRL_GPIO=y
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_N_GSM is not set
# CONFIG_NOZOMI is not set
CONFIG_NULL_TTY=y
CONFIG_NULL_TTY=m
# CONFIG_HVC_DCC is not set
# CONFIG_RPMSG_TTY is not set
CONFIG_SERIAL_DEV_BUS=y
@@ -3606,6 +3612,7 @@ CONFIG_PINMUX=y
CONFIG_PINCONF=y
CONFIG_GENERIC_PINCONF=y
# CONFIG_DEBUG_PINCTRL is not set
CONFIG_PINCTRL_AXP209=m
# CONFIG_PINCTRL_CY8C95X0 is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
@@ -3780,6 +3787,9 @@ CONFIG_BATTERY_SBS=y
# CONFIG_CHARGER_SBS is not set
# CONFIG_MANAGER_SBS is not set
# CONFIG_BATTERY_BQ27XXX is not set
CONFIG_CHARGER_AXP20X=m
CONFIG_BATTERY_AXP20X=m
CONFIG_AXP20X_POWER=m
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_BATTERY_MAX1721X is not set
@@ -4064,7 +4074,8 @@ CONFIG_MFD_CORE=y
# CONFIG_MFD_ATMEL_HLCDC is not set
# CONFIG_MFD_BCM590XX is not set
# CONFIG_MFD_BD9571MWV is not set
# CONFIG_MFD_AXP20X_I2C is not set
CONFIG_MFD_AXP20X=y
CONFIG_MFD_AXP20X_I2C=y
# CONFIG_MFD_MADERA is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_DA9052_SPI is not set
@@ -4199,6 +4210,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_ACT8865=y
# CONFIG_REGULATOR_AD5398 is not set
# CONFIG_REGULATOR_ARM_SCMI is not set
CONFIG_REGULATOR_AXP20X=y
# CONFIG_REGULATOR_DA9121 is not set
# CONFIG_REGULATOR_DA9210 is not set
# CONFIG_REGULATOR_DA9211 is not set
@@ -5260,6 +5272,7 @@ CONFIG_DRM_PANEL_RASPITS_TC358762=y
# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
CONFIG_DRM_PANEL_CWU50=m
# end of Display Panels
CONFIG_DRM_BRIDGE=y
@@ -5312,7 +5325,7 @@ CONFIG_DRM_ANALOGIX_DP=y
# CONFIG_DRM_CDNS_MHDP8546 is not set
CONFIG_DRM_DW_HDMI=y
# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set
CONFIG_DRM_DW_HDMI_I2S_AUDIO=y
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
# CONFIG_DRM_DW_HDMI_GP_AUDIO is not set
CONFIG_DRM_DW_HDMI_CEC=y
CONFIG_DRM_DW_MIPI_DSI=y
@@ -5505,6 +5518,7 @@ CONFIG_BACKLIGHT_PWM=y
# CONFIG_BACKLIGHT_BD6107 is not set
# CONFIG_BACKLIGHT_ARCXCNN is not set
# CONFIG_BACKLIGHT_LED is not set
CONFIG_BACKLIGHT_OCP8178=m
# end of Backlight & LCD device support
#
@@ -5574,21 +5588,21 @@ CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
# CONFIG_LOGO is not set
# end of Graphics support
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SOUND=m
CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_PCM_ELD=y
CONFIG_SND_PCM_IEC958=y
CONFIG_SND_DMAENGINE_PCM=y
CONFIG_SND_HWDEP=y
CONFIG_SND_SEQ_DEVICE=y
CONFIG_SND_RAWMIDI=y
CONFIG_SND_DMAENGINE_PCM=m
CONFIG_SND_HWDEP=m
CONFIG_SND_SEQ_DEVICE=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_JACK=y
CONFIG_SND_JACK_INPUT_DEV=y
# CONFIG_SND_OSSEMUL is not set
CONFIG_SND_PCM_TIMER=y
CONFIG_SND_HRTIMER=y
CONFIG_SND_HRTIMER=m
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
# CONFIG_SND_SUPPORT_OLD_API is not set
@@ -5598,11 +5612,11 @@ CONFIG_SND_VERBOSE_PROCFS=y
CONFIG_SND_CTL_FAST_LOOKUP=y
# CONFIG_SND_DEBUG is not set
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
CONFIG_SND_SEQUENCER=y
CONFIG_SND_SEQ_DUMMY=y
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
CONFIG_SND_SEQ_MIDI_EVENT=y
CONFIG_SND_SEQ_MIDI=y
CONFIG_SND_SEQ_MIDI_EVENT=m
CONFIG_SND_SEQ_MIDI=m
CONFIG_SND_DRIVERS=y
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_ALOOP is not set
@@ -5621,7 +5635,7 @@ CONFIG_SND_DRIVERS=y
CONFIG_SND_HDA_PREALLOC_SIZE=64
# CONFIG_SND_SPI is not set
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
# CONFIG_SND_USB_UA101 is not set
# CONFIG_SND_USB_CAIAQ is not set
@@ -5632,7 +5646,7 @@ CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y
# CONFIG_SND_USB_PODHD is not set
# CONFIG_SND_USB_TONEPORT is not set
# CONFIG_SND_USB_VARIAX is not set
CONFIG_SND_SOC=y
CONFIG_SND_SOC=m
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_DYNAMIC_DMA_CHAN is not set
# CONFIG_SND_SOC_ADI is not set
@@ -5664,27 +5678,27 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_I2S_HI6210_I2S is not set
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_MTK_BTCVSD is not set
CONFIG_SND_SOC_ROCKCHIP=y
CONFIG_SND_SOC_ROCKCHIP_ASRC=y
CONFIG_SND_SOC_ROCKCHIP_DLP=y
CONFIG_SND_SOC_ROCKCHIP_DLP_PCM=y
CONFIG_SND_SOC_ROCKCHIP=m
CONFIG_SND_SOC_ROCKCHIP_ASRC=m
CONFIG_SND_SOC_ROCKCHIP_DLP=m
CONFIG_SND_SOC_ROCKCHIP_DLP_PCM=m
# CONFIG_SND_SOC_ROCKCHIP_DUMMY_DAI is not set
CONFIG_SND_SOC_ROCKCHIP_I2S=y
CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=y
CONFIG_SND_SOC_ROCKCHIP_I2S=m
CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=m
# CONFIG_SND_SOC_ROCKCHIP_I2S_TDM_MULTI_LANES is not set
CONFIG_SND_SOC_ROCKCHIP_MULTI_DAIS=y
CONFIG_SND_SOC_ROCKCHIP_PDM=y
CONFIG_SND_SOC_ROCKCHIP_PDM_V2=y
CONFIG_SND_SOC_ROCKCHIP_SAI=y
CONFIG_SND_SOC_ROCKCHIP_MULTI_DAIS=m
CONFIG_SND_SOC_ROCKCHIP_PDM=m
CONFIG_SND_SOC_ROCKCHIP_PDM_V2=m
CONFIG_SND_SOC_ROCKCHIP_SAI=m
# CONFIG_SND_SOC_ROCKCHIP_SAI_VERBOSE is not set
CONFIG_SND_SOC_ROCKCHIP_SPDIF=y
CONFIG_SND_SOC_ROCKCHIP_SPDIFRX=y
CONFIG_SND_SOC_ROCKCHIP_TRCM=y
CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
CONFIG_SND_SOC_ROCKCHIP_SPDIFRX=m
CONFIG_SND_SOC_ROCKCHIP_TRCM=m
# CONFIG_SND_SOC_ROCKCHIP_VAD is not set
CONFIG_SND_SOC_ROCKCHIP_MAX98090=y
CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=y
CONFIG_SND_SOC_ROCKCHIP_RT5645=y
CONFIG_SND_SOC_ROCKCHIP_HDMI=y
CONFIG_SND_SOC_ROCKCHIP_MAX98090=m
CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=m
CONFIG_SND_SOC_ROCKCHIP_RT5645=m
CONFIG_SND_SOC_ROCKCHIP_HDMI=m
# CONFIG_SND_SOC_RK3288_HDMI_ANALOG is not set
# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set
# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
@@ -5698,7 +5712,7 @@ CONFIG_SND_SOC_ROCKCHIP_HDMI=y
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
# CONFIG_SND_SOC_XTFPGA_I2S is not set
CONFIG_SND_SOC_I2C_AND_SPI=y
CONFIG_SND_SOC_I2C_AND_SPI=m
#
# CODEC drivers
@@ -5753,19 +5767,19 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
# CONFIG_SND_SOC_CX2072X is not set
# CONFIG_SND_SOC_DA7213 is not set
# CONFIG_SND_SOC_DMIC is not set
CONFIG_SND_SOC_DUMMY_CODEC=y
CONFIG_SND_SOC_HDMI_CODEC=y
CONFIG_SND_SOC_DUMMY_CODEC=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ES7134 is not set
CONFIG_SND_SOC_ES7202=y
CONFIG_SND_SOC_ES7202=m
CONFIG_SND_SOC_ES7202_MIC_MAX_CHANNELS=2
CONFIG_SND_SOC_ES7202_I2C_BUS=1
# CONFIG_SND_SOC_ES7210 is not set
# CONFIG_SND_SOC_ES7241 is not set
CONFIG_SND_SOC_ES7243E=y
CONFIG_SND_SOC_ES8311=y
CONFIG_SND_SOC_ES8316=y
CONFIG_SND_SOC_ES8323=y
CONFIG_SND_SOC_ES8326=y
CONFIG_SND_SOC_ES7243E=m
CONFIG_SND_SOC_ES8311=m
CONFIG_SND_SOC_ES8316=m
CONFIG_SND_SOC_ES8323=m
CONFIG_SND_SOC_ES8326=m
# CONFIG_SND_SOC_ES8328_I2C is not set
# CONFIG_SND_SOC_ES8328_SPI is not set
# CONFIG_SND_SOC_ES8396 is not set
@@ -5774,7 +5788,7 @@ CONFIG_SND_SOC_ES8326=y
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_MAX98088 is not set
CONFIG_SND_SOC_MAX98090=y
CONFIG_SND_SOC_MAX98090=m
# CONFIG_SND_SOC_MAX98357A is not set
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9867 is not set
@@ -5800,28 +5814,28 @@ CONFIG_SND_SOC_MAX98090=y
# CONFIG_SND_SOC_PCM512x_SPI is not set
# CONFIG_SND_SOC_RK312X is not set
# CONFIG_SND_SOC_RK3228 is not set
CONFIG_SND_SOC_RK3308=y
CONFIG_SND_SOC_RK3328=y
CONFIG_SND_SOC_RK3308=m
CONFIG_SND_SOC_RK3328=m
# CONFIG_SND_SOC_RK3506 is not set
CONFIG_SND_SOC_RK3528=y
CONFIG_SND_SOC_RK3528=m
# CONFIG_SND_SOC_RK730 is not set
CONFIG_SND_SOC_RK817=y
CONFIG_SND_SOC_RK_CODEC_DIGITAL=y
CONFIG_SND_SOC_RK_DSM=y
CONFIG_SND_SOC_RL6231=y
CONFIG_SND_SOC_RK817=m
CONFIG_SND_SOC_RK_CODEC_DIGITAL=m
CONFIG_SND_SOC_RK_DSM=m
CONFIG_SND_SOC_RL6231=m
# CONFIG_SND_SOC_ROCKCHIP_SPI_CODEC is not set
CONFIG_SND_SOC_RT5616=y
CONFIG_SND_SOC_RT5616=m
# CONFIG_SND_SOC_RT5631 is not set
CONFIG_SND_SOC_RT5640=y
CONFIG_SND_SOC_RT5645=y
CONFIG_SND_SOC_RT5651=y
CONFIG_SND_SOC_RT5640=m
CONFIG_SND_SOC_RT5645=m
CONFIG_SND_SOC_RT5651=m
# CONFIG_SND_SOC_RT5659 is not set
# CONFIG_SND_SOC_RT9120 is not set
# CONFIG_SND_SOC_RV1106 is not set
# CONFIG_SND_SOC_SGTL5000 is not set
# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
# CONFIG_SND_SOC_SIMPLE_MUX is not set
CONFIG_SND_SOC_SPDIF=y
CONFIG_SND_SOC_SPDIF=m
# CONFIG_SND_SOC_SRC4XXX_I2C is not set
# CONFIG_SND_SOC_SSM2305 is not set
# CONFIG_SND_SOC_SSM2518 is not set
@@ -5854,7 +5868,7 @@ CONFIG_SND_SOC_SPDIF=y
# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
# CONFIG_SND_SOC_TLV320ADCX140 is not set
CONFIG_SND_SOC_TS3A227E=y
CONFIG_SND_SOC_TS3A227E=m
# CONFIG_SND_SOC_TSCS42XX is not set
# CONFIG_SND_SOC_TSCS454 is not set
# CONFIG_SND_SOC_UDA1334 is not set
@@ -5905,8 +5919,8 @@ CONFIG_SND_SOC_TS3A227E=y
# CONFIG_SND_SOC_IT6621 is not set
# end of CODEC drivers
CONFIG_SND_SIMPLE_CARD_UTILS=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_SND_SIMPLE_CARD_UTILS=m
CONFIG_SND_SIMPLE_CARD=m
# CONFIG_SND_AUDIO_GRAPH_CARD is not set
# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
# CONFIG_SND_TEST_COMPONENT is not set
@@ -7200,6 +7214,8 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_AD7949 is not set
# CONFIG_AD799X is not set
# CONFIG_ADI_AXI_ADC is not set
CONFIG_AXP20X_ADC=m
# CONFIG_AXP288_ADC is not set
# CONFIG_CC10001_ADC is not set
# CONFIG_ENVELOPE_DETECTOR is not set
# CONFIG_HI8435 is not set
@@ -7225,7 +7241,7 @@ CONFIG_ROCKCHIP_SARADC=y
# CONFIG_ROCKCHIP_SARADC_TEST_CHN is not set
# CONFIG_RICHTEK_RTQ6056 is not set
# CONFIG_SD_ADC_MODULATOR is not set
# CONFIG_TI_ADC081C is not set
CONFIG_TI_ADC081C=y
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
# CONFIG_TI_ADC12138 is not set
@@ -8024,7 +8040,7 @@ CONFIG_NFS_SWAP=y
CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y
CONFIG_PNFS_FILE_LAYOUT=y
CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_BLOCK=y
CONFIG_PNFS_FLEXFILE_LAYOUT=y
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
CONFIG_NFS_V4_1_MIGRATION=y
@@ -2,11 +2,16 @@ diff --git a/./arch/arm64/configs/rockchip_linux_defconfig.orig b/./arch/arm64/c
index 0a870e6c7a..7ce0610aec 100644
--- a/./arch/arm64/configs/rockchip_linux_defconfig.orig
+++ b/./arch/arm64/configs/rockchip_linux_defconfig
@@ -1,3 +1,14 @@
@@ -1,3 +1,29 @@
+CONFIG_MODULE_COMPRESS=y
+CONFIG_MODULE_COMPRESS_ZSTD=y
+CONFIG_BLK_DEV_DM=y
+CONFIG_INPUT_EVDEV=m
+CONFIG_PNFS_BLOCK=y
+CONFIG_UDMABUF=y
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_NULL_TTY=y
+CONFIG_NULL_TTY=m
+CONFIG_PSI=y
+CONFIG_FW_LOADER_PAGED_BUF=y
+CONFIG_FW_LOADER_COMPRESS=y
@@ -14,6 +19,16 @@ index 0a870e6c7a..7ce0610aec 100644
+CONFIG_FW_LOADER_COMPRESS_ZSTD=y
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT53XX=y
+CONFIG_BACKLIGHT_OCP8178=m
+CONFIG_DRM_PANEL_CWU50=m
+CONFIG_INPUT_AXP20X_PEK=y
+CONFIG_PINCTRL_AXP209=y
+CONFIG_CHARGER_AXP20X=y
+CONFIG_BATTERY_AXP20X=y
+CONFIG_AXP20X_POWER=y
+CONFIG_MFD_AXP20X=y
+CONFIG_MFD_AXP20X_I2C=y
+CONFIG_REGULATOR_AXP20X=y
CONFIG_WERROR=y
CONFIG_DEFAULT_HOSTNAME="localhost"
CONFIG_SYSVIPC=y
@@ -0,0 +1,63 @@
# Reference: <https://postmarketos.org/vendorkernel>
# Kernel config based on: arch/arm64/configs/vendor/lineage-a52sxq_defconfig
pkgname=linux-samsung-a52sxq
pkgver=5.4.254
pkgrel=0
pkgdesc="Samsung Galaxy A52s 5G kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="samsung-a52sxq"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native"
makedepends="
bash
bc
bison
cpio
devicepkg-dev
findutils
flex
openssl-dev
perl
tar
xz
"
# Source
_repository="android_kernel_samsung_sm7325"
_commit="12334aaea98147c1739de857b4f36f8949a3f095"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/LineageOS/$_repository/archive/$_commit.tar.gz
$_config
fix-camera-include-paths.patch
"
builddir="$srcdir/$_repository-$_commit"
_outdir="out"
prepare() {
default_prepare
REPLACE_GCCH=0 . downstreamkernel_prepare
}
build() {
unset LDFLAGS
make O="$_outdir" ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" \
"$_flavor" "$_outdir"
mkdir -p "$pkgdir"/usr/share/dtb
cp "$_outdir"/arch/arm64/boot/dts/vendor/qcom/yupik.dtb "$pkgdir"/usr/share/dtb/a52sxq.dtb
}
sha512sums="
0fe044ef320cee92384f0cd606a52d30935ae04cb6098c466bb95f2bca2b929c1adf483eff990d97a36900ca579cc4d432a1545c2eb62a097549e66597916da4 linux-samsung-a52sxq-12334aaea98147c1739de857b4f36f8949a3f095.tar.gz
baf724d9d48b264583cd113ae5ead553bb622519d455e8cc9dd7d195166869868d5919afe4e886eed38b88bf9e8bd6bc1c2890cbfa70a73dc10745593722ba80 config-samsung-a52sxq.aarch64
026ebb85188141c30ad379a23df3b9bda1a914d307e75cc0d1e41bea05ec4d990af21cb2fed8f995c351ca9a6a7dce57508fba57c66b8ec8ce73da63047210d5 fix-camera-include-paths.patch
"
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,88 @@
diff --git a/techpack/camera/drivers/Makefile b/techpack/camera/drivers/Makefile
index d36a2f358753..6dd2b0abd6db 100755
--- a/techpack/camera/drivers/Makefile
+++ b/techpack/camera/drivers/Makefile
@@ -10,6 +10,83 @@ ccflags-y += -I$(srctree)/drivers/media/platform/msm/synx
endif
ccflags-y += -I$(srctree)/techpack/camera/include/uapi/camera
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sync
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cpas
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cpas/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cpas/cpas_top
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cpas/camss_top
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_req_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cdm
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_jpeg
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_jpeg/jpeg_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_jpeg/jpeg_hw/jpeg_dma_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_jpeg/jpeg_hw/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_jpeg/jpeg_hw/jpeg_enc_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cust
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cust/cam_custom_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cust/cam_custom_hw_mgr/cam_custom_hw1
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cust/cam_custom_hw_mgr/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_cust/cam_custom_hw_mgr/cam_custom_csid
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/fw_inc
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/icp_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/icp_hw_mgr/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/a5_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/ipe_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/bps_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_icp/icp_hw/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/hw_utils
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/hw_utils/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/hw_utils/irq_controller
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_top
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_top/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe17x
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/tfe_csid_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/ppi_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/tfe_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/sfe_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/sfe_hw/sfe_top
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/sfe_hw/sfe_bus
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/sfe_hw/sfe_bus/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_isp/isp_hw_mgr/isp_hw/top_tpg
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_lrme
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_lrme/lrme_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_lrme/lrme_hw_mgr/lrme_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_core
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_fd
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_fd/fd_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_fd/fd_hw_mgr/fd_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_smmu
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_utils
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope/ope_hw_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope/ope_hw_mgr/ope_hw
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope/ope_hw_mgr/ope_hw/bus_wr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope/ope_hw_mgr/ope_hw/bus_rd
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_ope/ope_hw_mgr/ope_hw/top
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_eeprom
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_flash
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_sensor_io
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_res_mgr
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_sensor
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_sensor/adaptive_mipi
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_csiphy
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_csiphy/include
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_sensor_utils
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_actuator
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_ois
+ccflags-y += -I$(srctree)/techpack/camera/drivers/cam_sensor_module/cam_cci
ccflags-y += -I$(srctree)
camera-y := \
@@ -1,8 +1,9 @@
maintainer="Antoine Martin (ayakael) <dev@ayakael.net>"
pkgname=u-boot-radxa-cm5
pkgname=u-boot-clockworkpi-uconsole-radxa-cm5
pkgver=2017.09
pkgrel=0
pkgdesc="U-Boot fork for the Radxa CM5"
pkgrel=1
_ddr_ver=1.19
pkgdesc="U-Boot fork for the Radxa CM5 for uConsole"
arch="aarch64"
_carch="arm"
license="GPL-2.0"
@@ -23,20 +24,24 @@ makedepends="
swig
u-boot-tools
"
options="!check !tracedeps pmb:crossdirect"
_targets="rpi-cm4-io io"
options="!check !tracedeps"
_repository="u-boot"
_commit="575d1a114c66ad09e0d9d9f478c993fc243f5aec"
_rkbin_commit="efaf8526fe85521ac86f4e88b0a6a6c6cf2563a1"
source="
$pkgname-$_commit.tar.gz::https://github.com/radxa/$_repository/archive/$_commit.tar.gz
https://ayakael.net/api/packages/forge/generic/spl_loader_rk3588/1.19.113/rk3588_spl_loader_v1.19.113.bin
https://github.com/radxa/rkbin/raw/$_rkbin_commit/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v$_ddr_ver.bin
0001-menu-fix-timeout-duration.patch
0002-rockchip-move-crypto-functions-to-rk3588s.patch
0003-rk3588-support-compressed-kernel.patch
disable-spl-spi-load.patch
use-python3.patch
https://github.com/radxa/rkbin/raw/efaf8526fe85521ac86f4e88b0a6a6c6cf2563a1/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.19.bin
update-u-boot
"
replaces="u-boot-radxa-cm5=$pkgver-r$pkgrel"
builddir="$srcdir/$_repository-$_commit"
build() {
@@ -44,39 +49,34 @@ build() {
LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"' > include/timestamp_autogenerated.h
LC_ALL=C date +'#define U_BOOT_TIME "%T"' >> include/timestamp_autogenerated.h
for target in $_targets; do
export BUILD_DIR="$builddir"/build_$target
export ROCKCHIP_TPL="$srcdir"/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v$_ddr_ver.bin
export UBOOTVERSION=rk2410-2017.09-1
export BL31="/usr/share/arm-trusted-firmware/rk3588/bl31.elf"
export ROCKCHIP_TPL="$srcdir"/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.19.bin
export UBOOTVERSION=rk2410-2017.09-1
export BL31="/usr/share/arm-trusted-firmware/rk3588/bl31.elf"
make radxa-cm5-rpi-cm4-io-rk3588s_defconfig
make all u-boot.itb
# python scripts for BL31 management doesn't get copied over
mkdir -p "$BUILD_DIR"/arch/arm/mach-rockchip
cp "$builddir"/arch/arm/mach-rockchip/*.py "$BUILD_DIR"/arch/arm/mach-rockchip/.
make O="$BUILD_DIR" ARCH="$_carch" radxa-cm5-$target-rk3588s_defconfig
make O="$BUILD_DIR" ARCH="$_carch" all u-boot.itb
# make idbloader.img
mkimage -n rk3588 -T rksd -d "$ROCKCHIP_TPL:$BUILD_DIR"/spl/u-boot-spl.bin "$BUILD_DIR"/idbloader.img
done
# make idbloader.img
mkimage -n rk3588 -T rksd -d "$ROCKCHIP_TPL:$builddir"/spl/u-boot-spl.bin "$builddir"/idbloader.img
}
package() {
for target in $_targets; do
install -Dm644 "$builddir/build_$target/u-boot-dtb.bin" "$pkgdir/usr/share/u-boot/radxa-cm5/$target/u-boot.bin"
install -Dm644 "$builddir/build_$target/idbloader.img" "$pkgdir/usr/share/u-boot/radxa-cm5/$target/idbloader.img"
install -Dm644 "$builddir/build_$target/u-boot.itb" "$pkgdir/usr/share/u-boot/radxa-cm5/$target/u-boot.itb"
done
install -D -m755 "$srcdir"/update-u-boot "$pkgdir"/usr/sbin/update-u-boot
install -Dm644 \
"$builddir"/idbloader.img \
"$builddir"/u-boot.itb \
"$srcdir"/rk3588_spl_loader_v1.19.113.bin \
-t "$pkgdir"/usr/share/u-boot/clockworkpi-uconsole-radxa-cm5
}
sha512sums="
4805d0224b8c4ffecdaf560cf493ea06df9e195b7009aa7c30457cb33ecaeea92a64e7b2004ec1903d20fecc0e711905c710bca53072eefececd41a46b4176a2 u-boot-radxa-cm5-575d1a114c66ad09e0d9d9f478c993fc243f5aec.tar.gz
4805d0224b8c4ffecdaf560cf493ea06df9e195b7009aa7c30457cb33ecaeea92a64e7b2004ec1903d20fecc0e711905c710bca53072eefececd41a46b4176a2 u-boot-clockworkpi-uconsole-radxa-cm5-575d1a114c66ad09e0d9d9f478c993fc243f5aec.tar.gz
ec2bcf5d5574759ba4bfa71a1880aa76a6647b73a104cac01c17666beab44bf864cc25407435bd2bdc2f9bb88f4bee12ee980cd824044179549e895daba8eff9 rk3588_spl_loader_v1.19.113.bin
0b529e57a7206471a66dcdb98dab3f8deeff333d587c2ebdd08febb40ab9b44e2d51de364d2383ed80dd2b38764ccb552a48f9e34da43607f1e08d385af3f161 rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.19.bin
36baf3b8618928e8927229353157ccecb5477e6ed868b9425a04acc2b297026084bd5ed96785292ab2ccb74b9f6328fe032b55505749b103cd68e25777dc3334 0001-menu-fix-timeout-duration.patch
364a8701898e34f6235d2de486316413b5beec95578ee450e504e9a6f5c9feec773642a8129a91eef264e9466206c082950d0793a6a3e97f638edac42e4a70bf 0002-rockchip-move-crypto-functions-to-rk3588s.patch
d80fbde984311b97b0dbd3d1bf7e740350f7c85f3bc8c22fdac93f9200c5b7c722c956dbcc3ec0f4422a72fe5c46b14c0770433efa0f6faf01520ad2ac5f9eca 0003-rk3588-support-compressed-kernel.patch
11a1e30ad0002148f32314dc60c95120d45ffe462755e0bbc7d52ee4001e3283ffb87ba6f58d41feb0c40d456ef42c03857f98f8921c9a7bb810bbf404abedb3 disable-spl-spi-load.patch
1164247343518c9820ce2bf1302f18079b9af81f6ef164e5b9d2c5cbad00ac20e1943bb44d48862c0d4a2f0b7448f9fa35d02d2f66e90c34033d999b3a968443 use-python3.patch
0b529e57a7206471a66dcdb98dab3f8deeff333d587c2ebdd08febb40ab9b44e2d51de364d2383ed80dd2b38764ccb552a48f9e34da43607f1e08d385af3f161 rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.19.bin
c38b421d48f399ab30707cb244460d9dfc9050592dbafd13f09be11aeda2a19d325f2599cf2650e6855034999a1daf54324e9a65979f9a5d5dc55fe012421384 update-u-boot
"
@@ -0,0 +1,110 @@
#!/bin/sh
verbose=
board=
device=
dryrun=
imagedir=
get_defaults() {
if [ -z "$board" -a -e /sys/firmware/devicetree/base/compatible ]; then
case "$(cat /sys/firmware/devicetree/base/compatible 2>/dev/null)" in
radxa,cm5-rpi-cm4-io*) board=radxa-cm5 ;;
esac
fi
if [ -z "$device" ]; then
case "$board" in
radxa-cm5) device=/dev/mmcblk1 ;;
esac
fi
if [ -z "$imagedir" ]; then
imagedir="$(realpath $(dirname $0))"
[ -f "$imagedir/README.txt" ] || imagedir="/usr/share/u-boot"
fi
}
die() {
echo "ERROR: $@"
exit 1
}
usage() {
get_defaults
cat <<EOF
usage: $0 [-n,--dry-run] [-i,--imagedir <imagedir>] [-b|--board <board-type>] [-d|--device <device>]
options:
-b,--board <board> Specify the board type: radxa-cm5
(current default: ${board:-none})
-d,--device <device> Specify the device where to install u-boot
(current default: ${device:-none})
-i,--imagedir <imagedir> Specify u-boot image directory
(current default: ${imagedir:-none})
-n,--dry-run Print commands but don't execute them
EOF
}
while [ $# -gt 0 ]; do
opt="$1"
shift
case "$opt" in
-b|--board)
case "$1" in
radxa-cm5) board="radxa-cm5" ;;
*) usage; exit 1;;
esac
shift
;;
-d|--device)
device="$1"
shift
;;
-i|--imagedir)
imagedir="$1"
shift
;;
-n|--dry-run)
dryrun="echo"
;;
--)
break
;;
-*)
usage
exit 1
;;
esac
done
get_defaults
if [ -z "$board" -o -z "$device" -o -z "$imagedir" -o ! -e "$imagedir" ]; then
usage
exit 1
fi
if [ -z "$dryrun" ]; then
echo "Updating $board u-boot in $device in 3 seconds..."
sleep 3
fi
(
set -e
case "$board" in
radxa-cm5)
[ -e "$imagedir/clockworkpi-uconsole-radxa-cm5/" ] || die "radxa-cm5 images not installed, apk add u-boot-clockworkpi-uconsole-radxa-cm5"
$dryrun dd if=$imagedir/clockworkpi-uconsole-radxa-cm5/idbloader.img of=$device seek=64 status=none
$dryrun dd if=$imagedir/clockworkpi-uconsole-radxa-cm5/u-boot.itb of=$device seek=16384 status=none
;;
esac
$dryrun sync
) || die "U-Boot installation in $device failed"
[ -z "$dryrun" ] && echo "Completed successfully."
@@ -1 +1 @@
../../.gitlab-ci/packages/single-runner-defined-in-ci-common-with-vmlinuz-kernel-variant.yml.j2
../../.gitlab-ci/packages/single-runner-defined-in-ci-common.yml.j2
@@ -1 +1 @@
../../.gitlab-ci/packages/single-runner-defined-in-ci-common-with-vmlinuz-kernel-variant.yml.j2
../../.gitlab-ci/packages/single-runner-defined-in-ci-common.yml.j2
@@ -0,0 +1,229 @@
From 1036fc931dcd28ea093949a07873545665b0c520 Mon Sep 17 00:00:00 2001
From: Nathan Chancellor <nathan@kernel.org>
Date: Fri, 21 Jan 2022 11:53:52 -0700
Subject: [PATCH 1/3] WIP: arch/powerpc/boot: Support LLVM=1 in wrapper script
When LLVM=1 is set, pass through the make variables, as they will
generally be multi-targeted.
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
arch/powerpc/boot/Makefile | 11 +++++-
arch/powerpc/boot/wrapper | 72 +++++++++++++++++++++++++++++---------
2 files changed, 66 insertions(+), 17 deletions(-)
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index f1a4761ebd44..655750126ce9 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -264,6 +264,15 @@ CROSSWRAP := -C "$(CROSS_COMPILE)"
endif
endif
+ifneq ($(LLVM),)
+WRAPTOOLS := --ld $(LD)
+WRAPTOOLS += --nm $(NM)
+WRAPTOOLS += --objcopy $(OBJCOPY)
+WRAPTOOLS += --objdump $(OBJDUMP)
+# No $(STRINGS)
+WRAPTOOLS += --strings llvm-strings
+endif
+
compressor-$(CONFIG_KERNEL_GZIP) := gz
compressor-$(CONFIG_KERNEL_XZ) := xz
compressor-$(CONFIG_KERNEL_LZMA) := lzma
@@ -272,7 +281,7 @@ compressor-$(CONFIG_KERNEL_LZO) := lzo
# args (to if_changed): 1 = (this rule), 2 = platform, 3 = dts 4=dtb 5=initrd
quiet_cmd_wrap = WRAP $@
cmd_wrap =$(CONFIG_SHELL) $(wrapper) -Z $(compressor-y) -c -o $@ -p $2 \
- $(CROSSWRAP) $(if $3, -s $3)$(if $4, -d $4)$(if $5, -i $5) \
+ $(CROSSWRAP) $(WRAPTOOLS) $(if $3, -s $3)$(if $4, -d $4)$(if $5, -i $5) \
vmlinux
image-$(CONFIG_PPC_PSERIES) += zImage.pseries
diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
index 1efd1206fcab..8dabcf5406b2 100755
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -167,6 +167,31 @@ while [ "$#" -gt 0 ]; do
compression=
uboot_comp=none
;;
+ --ld)
+ shift
+ [ "$#" -gt 0 ] || usage
+ ld="$1"
+ ;;
+ --nm)
+ shift
+ [ "$#" -gt 0 ] || usage
+ nm="$1"
+ ;;
+ --objcopy)
+ shift
+ [ "$#" -gt 0 ] || usage
+ objcopy="$1"
+ ;;
+ --objdump)
+ shift
+ [ "$#" -gt 0 ] || usage
+ objdump="$1"
+ ;;
+ --strings)
+ shift
+ [ "$#" -gt 0 ] || usage
+ strings="$1"
+ ;;
-?)
usage
;;
@@ -178,6 +203,21 @@ while [ "$#" -gt 0 ]; do
shift
done
+if [ -z "$ld" ]; then
+ ld=${CROSS}ld
+fi
+if [ -z "$nm" ]; then
+ nm=${CROSS}nm
+fi
+if [ -z "$objcopy" ]; then
+ objcopy=${CROSS}objcopy
+fi
+if [ -z "$objdump" ]; then
+ objdump=${CROSS}objdump
+fi
+if [ -z "$strings" ]; then
+ strings=${CROSS}strings
+fi
if [ -n "$dts" ]; then
if [ ! -r "$dts" -a -r "$object/dts/$dts" ]; then
@@ -193,7 +233,7 @@ if [ -z "$kernel" ]; then
kernel=vmlinux
fi
-LC_ALL=C elfformat="`${CROSS}objdump -p "$kernel" | grep 'file format' | awk '{print $4}'`"
+LC_ALL=C elfformat="`$objdump -p "$kernel" | grep 'file format' | awk '{print $4}'`"
case "$elfformat" in
elf64-powerpcle) format=elf64lppc ;;
elf64-powerpc) format=elf32ppc ;;
@@ -230,7 +270,7 @@ nodl="--no-dynamic-linker"
# suppress some warnings in recent ld versions
nowarn="-z noexecstack"
-if "${CROSS}ld" -v --no-warn-rwx-segments >/dev/null 2>&1; then
+if $ld -v --no-warn-rwx-segments >/dev/null 2>&1; then
nowarn="$nowarn --no-warn-rwx-segments"
fi
@@ -369,7 +409,7 @@ epapr)
link_address='0x20000000'
pie=-pie
notext='-z notext'
- rodynamic=$(if ${CROSS}ld -V 2>&1 | grep -q LLD ; then echo "-z rodynamic"; fi)
+ rodynamic=$(if $ld -V 2>&1 | grep -q LLD ; then echo "-z rodynamic"; fi)
;;
mvme5100)
platformo="$object/fixed-head.o $object/mvme5100.o"
@@ -385,7 +425,7 @@ esac
vmz="$tmpdir/`basename \"$kernel\"`.$ext"
# Calculate the vmlinux.strip size
-${CROSS}objcopy $objflags "$kernel" "$vmz.$$"
+$objcopy $objflags "$kernel" "$vmz.$$"
strip_size=$(${CONFIG_SHELL} "${srctree}/scripts/file-size.sh" "$vmz.$$")
if [ -z "$cacheit" -o ! -f "$vmz$compression" -o "$vmz$compression" -ot "$kernel" ]; then
@@ -438,14 +478,14 @@ fi
# Extract kernel version information, some platforms want to include
# it in the image header
-version=`${CROSS}strings "$kernel" | grep '^Linux version [-0-9.]' | \
+version=`$strings "$kernel" | grep '^Linux version [-0-9.]' | \
head -n1 | cut -d' ' -f3`
if [ -n "$version" ]; then
uboot_version="-n Linux-$version"
fi
# physical offset of kernel image
-membase=`${CROSS}objdump -p "$kernel" | grep -m 1 LOAD | awk '{print $7}'`
+membase=`$objdump -p "$kernel" | grep -m 1 LOAD | awk '{print $7}'`
case "$platform" in
uboot)
@@ -460,7 +500,7 @@ uboot)
esac
addsec() {
- ${CROSS}objcopy $4 $1 \
+ $objcopy $4 $1 \
--add-section=$3="$2" \
--set-section-flags=$3=contents,alloc,load,readonly,data
}
@@ -490,18 +530,18 @@ if [ "$platform" != "miboot" ]; then
text_start="-Ttext $link_address"
fi
#link everything
- ${CROSS}ld -m $format -T $lds $text_start $pie $nodl $nowarn $rodynamic $notext -o "$ofile" $map \
+ $ld -m $format -T $lds $text_start $pie $nodl $nowarn $rodynamic $notext -o "$ofile" $map \
$platformo $tmp $object/wrapper.a
rm $tmp
fi
# Some platforms need the zImage's entry point and base address
-base=0x`${CROSS}nm "$ofile" | grep ' _start$' | cut -d' ' -f1`
-entry=`${CROSS}objdump -f "$ofile" | grep '^start address ' | cut -d' ' -f3`
+base=0x`$nm "$ofile" | grep ' _start$' | cut -d' ' -f1`
+entry=`$objdump -f "$ofile" | grep '^start address ' | cut -d' ' -f3`
if [ -n "$binary" ]; then
mv "$ofile" "$ofile".elf
- ${CROSS}objcopy -O binary "$ofile".elf "$ofile"
+ $objcopy -O binary "$ofile".elf "$ofile"
fi
# post-processing needed for some platforms
@@ -510,7 +550,7 @@ pseries|chrp)
$objbin/addnote "$ofile"
;;
coff)
- ${CROSS}objcopy -O aixcoff-rs6000 --set-start "$entry" "$ofile"
+ $objcopy -O aixcoff-rs6000 --set-start "$entry" "$ofile"
$objbin/hack-coff "$ofile"
;;
cuboot*)
@@ -538,18 +578,18 @@ ps3)
# copied to offset 0x100. At runtime the bootwrapper program copies
# the data at __system_reset_kernel back to addr 0x100.
- system_reset_overlay=0x`${CROSS}nm "$ofile" \
+ system_reset_overlay=0x`$nm "$ofile" \
| grep ' __system_reset_overlay$' \
| cut -d' ' -f1`
system_reset_overlay=`printf "%d" $system_reset_overlay`
- system_reset_kernel=0x`${CROSS}nm "$ofile" \
+ system_reset_kernel=0x`$nm "$ofile" \
| grep ' __system_reset_kernel$' \
| cut -d' ' -f1`
system_reset_kernel=`printf "%d" $system_reset_kernel`
overlay_dest="256"
overlay_size="512"
- ${CROSS}objcopy -O binary "$ofile" "$ofile.bin"
+ $objcopy -O binary "$ofile" "$ofile.bin"
run_cmd dd if="$ofile.bin" of="$ofile.bin" conv=notrunc \
skip=$overlay_dest seek=$system_reset_kernel \
@@ -567,7 +607,7 @@ ps3)
# reached, then enter the system reset vector of the partially decompressed
# image. No warning is issued.
rm -f "$odir"/{otheros,otheros-too-big}.bld
- size=$(${CROSS}nm --no-sort --radix=d "$ofile" | grep -E ' _end$' | cut -d' ' -f1)
+ size=$($nm --no-sort --radix=d "$ofile" | grep -E ' _end$' | cut -d' ' -f1)
bld="otheros.bld"
if [ $size -gt $((0x1000000)) ]; then
bld="otheros-too-big.bld"
--
2.53.0
@@ -0,0 +1,41 @@
From b5cf37159427f2589632e30789488e993a725e0c Mon Sep 17 00:00:00 2001
From: Nathan Chancellor <nathan@kernel.org>
Date: Fri, 21 Jan 2022 12:39:58 -0700
Subject: [PATCH 2/3] WIP: arch/powerpc/boot: Use '-z notext' for pseries image
Same reason as commit 4c078c86b4a4 ("powerpc/boot/wrapper: Add "-z
notext" flag to disable diagnostic").
ld.lld: error: relocation R_PPC64_ADDR64 cannot be used against symbol '_start'; recompile with -fPIC
>>> referenced by crt0.o:(.text+0x8) in archive arch/powerpc/boot/wrapper.a
ld.lld: error: relocation R_PPC64_ADDR64 cannot be used against symbol '_etext'; recompile with -fPIC
>>> referenced by crt0.o:(.text+0x10) in archive arch/powerpc/boot/wrapper.a
ld.lld: error: relocation R_PPC64_ADDR64 cannot be used against symbol '__bss_start'; recompile with -fPIC
>>> referenced by crt0.o:(.text+0x18) in archive arch/powerpc/boot/wrapper.a
ld.lld: error: relocation R_PPC64_ADDR64 cannot be used against symbol '_end'; recompile with -fPIC
>>> referenced by crt0.o:(.text+0x20) in archive arch/powerpc/boot/wrapper.a
make[2]: *** [arch/powerpc/boot/Makefile:400: arch/powerpc/boot/zImage.pseries] Error 1
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
arch/powerpc/boot/wrapper | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
index 8dabcf5406b2..2a28695d5bd6 100755
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -302,6 +302,7 @@ pseries)
if [ "$format" != "elf32ppc" ]; then
link_address=
pie=-pie
+ notext='-z notext'
fi
make_space=n
;;
--
2.53.0
@@ -0,0 +1,38 @@
From 445dd03e6d4c8ba8bbc0525d82f77ede2f89355e Mon Sep 17 00:00:00 2001
From: Nathan Chancellor <nathan@kernel.org>
Date: Fri, 21 Jan 2022 14:15:08 -0700
Subject: [PATCH 3/3] WIP: arch/powerpc/boot: Add '-z norelro'
ld.bfd defaults to '-z norelro', whereas ld.lld defaults to '-z relro',
which results in an error when building cuImages:
ld.lld: error: section: .dynamic is not contiguous with other relro sections
Commit a538d184e3f0 ("powerpc/boot: Move the .got section to after the
.dynamic section") previously worked around this in the boot wrapper by
shuffling the sections but other areas of the kernel have just disabled
the relro program header altogether (see commit 3b92fa7485eb ("arm64:
link with -z norelro regardless of CONFIG_RELOCATABLE") and
commit 0cda9bc15dfc ("ARM: 9038/1: Link with '-z norelro'")).
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
arch/powerpc/boot/wrapper | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
index 2a28695d5bd6..1e4f4fbd3948 100755
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -531,7 +531,7 @@ if [ "$platform" != "miboot" ]; then
text_start="-Ttext $link_address"
fi
#link everything
- $ld -m $format -T $lds $text_start $pie $nodl $nowarn $rodynamic $notext -o "$ofile" $map \
+ $ld -m $format -T $lds $text_start $pie $nodl $nowarn $rodynamic $notext -z norelro -o "$ofile" $map \
$platformo $tmp $object/wrapper.a
rm $tmp
fi
--
2.53.0
+21 -10
View File
@@ -1,7 +1,7 @@
# Co-Maintainer: Achill Gilgenast <achill@achill.org>
maintainer="Aelin <aelin@postmarketos.org>"
pkgname=linux-postmarketos-lts
pkgver=6.18.15
pkgver=6.18.18
pkgrel=0
_kver=${pkgver%.*}
pkgdesc="LTS Kernel"
@@ -48,10 +48,18 @@ makedepends="
"
replaces="linux-lts"
# Source
# powerpc boot wrapper patches:
# Necessary for compilation without cross GCC in PATH, cherry-picked from
# Nathan's fork, he does not have time to upstream them right now but would be
# happy if someone else did:
# https://lore.kernel.org/linuxppc-dev/aXs8sgAcci9FKKpx@luna/
source="
linux-$_kver.tar.xz::https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kver.tar.xz
0001-WIP-arch-powerpc-boot-Support-LLVM-1-in-wrapper-scri.patch
0002-WIP-arch-powerpc-boot-Use-z-notext-for-pseries-image.patch
0003-WIP-arch-powerpc-boot-Add-z-norelro.patch
config-lts.aarch64
config-lts.armv7
config-lts.loongarch64
@@ -112,13 +120,16 @@ package() {
}
sha512sums="
e70df2b6f8bee4ad98a558e1cc97c713c4cb08b80cc6cb21bb36a4be02e995007d1c6215f485b9d679fc66e2a7e30c94e3e98d12b21ede1e96761fbd7509a7a2 patch-6.18.15.patch.xz
b242e9ea9c744a61529abb2447d3eb8de31167272b669e132666447a619b24730c4a9fcdb6d7a4132b5aa83cc9ee47f85d7d4d72e25aef383f8929cc7107acd6 patch-6.18.18.patch.xz
88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0 linux-6.18.tar.xz
e5d72748a2c31bbebd6eac963ca4a0d49a09207d6ba1016669a6161c944bb30d163e3d039df72ff9d28aa624d1588f7399244c64c19a058b5df625897bd0c6c7 config-lts.aarch64
243d214543f63c65e96517eae9c4565cd4e4d014d3797c7905279641ebbe6d73b7744fbe3dda93432fd08ada05b4fe683926d4ea77fb653cf63474e9ee9003c0 config-lts.armv7
c0603020dbd60737b79aaceb36d06d41baa5231baf0a4e2aff14ea0e8f6361d79c2639a66e6dfb845135197bb4392bb006097439500336a887c463c83d454caa config-lts.loongarch64
cf302cc7b9a735547f80ed5a0c5638ddd8e55907b8762785c61edcccdc5110118d7850c0511698d432e27669f2d05ba3bb41797ac5f583401fb00bead9af2983 config-lts.ppc64le
bca1194c877835c4e9ca1c5b378a38f773f7510702aa1c6ed701732897cdbe3466c438d95e475a6e078d7f64d1f8a1e5bd6cb1738d5d7573c87f1527841a023c config-lts.riscv64
0ea2ef29f6b6dca241206b358357c13a166fca6bd74b69b4acf7119a7610b82c39b92b4e798222edfdadb2ca5966f6599cf81b8277ee2247925d65f74833bccc config-lts.x86
26c5f8665646e277596f39b4d1d2548d1c979bf73784662e69a81f363ec839c269975f4b92aafd77e7b0e39fc59997ad603d3ca6163f860cb0e47c31535a8808 config-lts.x86_64
1f11df2480e9f691573283597160b4c806e492cdca4825f3acb3afb70bde43abfab487bcde1f5553b431a702a0039479d041b0ce7859970e706b5a51d2ad8fb0 0001-WIP-arch-powerpc-boot-Support-LLVM-1-in-wrapper-scri.patch
26521a9c9ea769534095dc4e306babadc8bcbaf03d7faa523c377e41ba0f742ecd0490fa27791d895f729c3ae8845297dca59b4db2475e7f078e689c447430bc 0002-WIP-arch-powerpc-boot-Use-z-notext-for-pseries-image.patch
302c20c85559fc9b3b2420ed25be1bfbb76c87f2a470e4141c32e9542cf1f5c6b3b5a7847231a3eaa0f6bc0e5942d0c1599e807175dcf5e63469704c3d6adde3 0003-WIP-arch-powerpc-boot-Add-z-norelro.patch
6b11c769104b173d5f91b77396808ee0adea11458dd67c63fb280d31ff903fe0c1885d8dbfcd82baf25204013b151375392cfdd02058bf98189dcd1f12e519f0 config-lts.aarch64
2d4f878f902e09cad92e839b44138fc49083dae626f4adcad7f80e6ee58e19bef0171258a61df9130da6155bdaeb3e75b1bef88766c50b59e052b5b7f0c4e526 config-lts.armv7
678f24eecaeee883b83d4dde3412543928e06528cb696d90a226ed03b5a79f9a352074ed08a0c0fd57a70cf6d9532576f5aaac904f032e8395f3e4d206d073f2 config-lts.loongarch64
146c8a065ed7042bec29fd678b3d7eb8869266b0eb56701b1ed3e2e698f9490b57b1cab82b22c9b92249336556909e11a18da0d94f65f4458d08960f545260a0 config-lts.ppc64le
20b66884baac96242ea3aa1de02242f3b04f5ddffb1b07c0edeea5051f795c87556f844cedc16a5435ff4d2e19663cc4b8b1d8535b6512742cc08b504c39a227 config-lts.riscv64
616cb2c8b46907d166de29ab1bf0eea342e240b9d853a7d1ca52fbdce4424148c934c5051b126d592a0f4f5310803ade2b2470bfa94a5076eb0428ae183e3562 config-lts.x86
e5d32487f40a66a057e5199490297521610a961e4f1ed75c30faff7a5296198a7cc7fbe5ac90d17479e9aba474c5d3d35ccfb4990849981418c7b9ec56c25740 config-lts.x86_64
"
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.18.15 Kernel Configuration
# Linux/arm64 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -117,7 +117,7 @@ CONFIG_BPF_JIT=y
CONFIG_BPF_JIT_DEFAULT_ON=y
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
# CONFIG_BPF_LSM is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
@@ -803,11 +803,12 @@ CONFIG_SCHED_MC=y
CONFIG_HOTPLUG_CORE_SYNC=y
CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
CONFIG_GENERIC_IRQ_ENTRY=y
# CONFIG_KPROBES is not set
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_UPROBES=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_KRETPROBES=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
@@ -1346,11 +1347,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1483,7 +1486,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
@@ -1518,7 +1521,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -3777,7 +3780,7 @@ CONFIG_TOUCHSCREEN_ELAN=m
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -11964,7 +11967,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -11993,6 +11995,7 @@ CONFIG_RCU_TRACE=y
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_DEBUG_CGROUP_REF is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
@@ -12037,6 +12040,8 @@ CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
@@ -12057,6 +12062,7 @@ CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_RV is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
@@ -12095,6 +12101,7 @@ CONFIG_CORESIGHT_CTI=m
#
# CONFIG_KUNIT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FUNCTION_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
# CONFIG_KCOV is not set
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm 6.18.15 Kernel Configuration
# Linux/arm 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -112,9 +112,11 @@ CONFIG_HAVE_EBPF_JIT=y
# BPF subsystem
#
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
CONFIG_BPF_JIT=y
# CONFIG_BPF_JIT_ALWAYS_ON is not set
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_NONE_BUILD=y
@@ -879,12 +881,14 @@ CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_HOTPLUG_CORE_SYNC=y
CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
# CONFIG_KPROBES is not set
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_OPTPROBES=y
CONFIG_UPROBES=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_KRETPROBES=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
@@ -922,7 +926,6 @@ CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_LTO_NONE=y
CONFIG_ARCH_SUPPORTS_CFI=y
CONFIG_ARCH_USES_CFI_GENERIC_LLVM_PASS=y
CONFIG_CFI=y
CONFIG_CFI_ICALL_NORMALIZE_INTEGERS=y
CONFIG_HAVE_CFI_ICALL_NORMALIZE_INTEGERS=y
@@ -1259,6 +1262,7 @@ CONFIG_IPV6_MULTIPLE_TABLES=y
# CONFIG_IPV6_SEG6_HMAC is not set
# CONFIG_IPV6_RPL_LWTUNNEL is not set
# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
# CONFIG_NETLABEL is not set
# CONFIG_MPTCP is not set
# CONFIG_NETWORK_SECMARK is not set
CONFIG_NET_PTP_CLASSIFY=y
@@ -1358,11 +1362,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1496,7 +1502,8 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
# end of IP: Netfilter Configuration
@@ -1530,7 +1537,8 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
# CONFIG_IP6_NF_TARGET_NPT is not set
@@ -3575,7 +3583,7 @@ CONFIG_TOUCHSCREEN_ELAN=m
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
CONFIG_TOUCHSCREEN_MMS114=m
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -10718,6 +10726,7 @@ CONFIG_PNFS_BLOCK=y
CONFIG_PNFS_FLEXFILE_LAYOUT=y
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
# CONFIG_NFS_V4_1_MIGRATION is not set
CONFIG_NFS_V4_SECURITY_LABEL=y
CONFIG_ROOT_NFS=y
# CONFIG_NFS_FSCACHE is not set
# CONFIG_NFS_USE_LEGACY_DNS is not set
@@ -10824,10 +10833,25 @@ CONFIG_KEY_DH_OPERATIONS=y
CONFIG_PROC_MEM_ALWAYS_FORCE=y
# CONFIG_PROC_MEM_FORCE_PTRACE is not set
# CONFIG_PROC_MEM_NO_FORCE is not set
# CONFIG_SECURITY is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
# CONFIG_SECURITY_NETWORK is not set
# CONFIG_SECURITY_PATH is not set
# CONFIG_STATIC_USERMODEHELPER is not set
# CONFIG_SECURITY_SMACK is not set
# CONFIG_SECURITY_TOMOYO is not set
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_LOADPIN is not set
# CONFIG_SECURITY_YAMA is not set
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
# CONFIG_IMA is not set
# CONFIG_EVM is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_LSM="landlock,lockdown,yama,loadpin,safesetid,ipe,bpf"
#
# Kernel hardening options
@@ -11445,7 +11469,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -11474,6 +11497,7 @@ CONFIG_RCU_TRACE=y
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_DEBUG_CGROUP_REF is not set
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -11514,6 +11538,8 @@ CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
@@ -11533,6 +11559,7 @@ CONFIG_FTRACE_MCOUNT_USE_RECORDMCOUNT=y
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_RV is not set
# CONFIG_SAMPLES is not set
# CONFIG_STRICT_DEVMEM is not set
@@ -11551,6 +11578,7 @@ CONFIG_ARM_UNWIND=y
CONFIG_DEBUG_VF_UART_PORT=1
CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
# CONFIG_ARM_KPROBES_TEST is not set
# CONFIG_PID_IN_CONTEXTIDR is not set
# CONFIG_CORESIGHT is not set
# end of arm Debugging
@@ -11560,6 +11588,7 @@ CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
#
# CONFIG_KUNIT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FUNCTION_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
# CONFIG_KCOV is not set
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/loongarch 6.18.15 Kernel Configuration
# Linux/loongarch 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -110,7 +110,7 @@ CONFIG_BPF_JIT=y
CONFIG_BPF_JIT_DEFAULT_ON=y
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
# CONFIG_BPF_LSM is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
@@ -511,12 +511,15 @@ CONFIG_SCHED_MC=y
CONFIG_GENERIC_IRQ_ENTRY=y
CONFIG_GENERIC_SYSCALL=y
CONFIG_GENERIC_ENTRY=y
# CONFIG_KPROBES is not set
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_KPROBES_ON_FTRACE=y
CONFIG_UPROBES=y
CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_KRETPROBES=y
CONFIG_KRETPROBE_ON_RETHOOK=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
@@ -1100,11 +1103,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
CONFIG_NETFILTER_XT_TARGET_RATEEST=m
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
@@ -1260,7 +1265,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_ECN=m
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
CONFIG_NFT_COMPAT_ARP=m
@@ -1297,7 +1302,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -3157,7 +3162,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -8729,7 +8734,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -8758,9 +8762,11 @@ CONFIG_RCU_TRACE=y
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_DEBUG_CGROUP_REF is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_RETHOOK=y
CONFIG_RETHOOK=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
@@ -8805,6 +8811,8 @@ CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
@@ -8823,6 +8831,7 @@ CONFIG_FTRACE_MCOUNT_USE_RECORDMCOUNT=y
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_RV is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
@@ -8842,6 +8851,7 @@ CONFIG_UNWINDER_ORC=y
#
# CONFIG_KUNIT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FUNCTION_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
# CONFIG_KCOV is not set
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/powerpc 6.18.15 Kernel Configuration
# Linux/powerpc 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -1172,11 +1172,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1313,7 +1315,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
@@ -1348,7 +1350,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -2752,7 +2754,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -6555,7 +6557,6 @@ CONFIG_PTDUMP=y
CONFIG_HAVE_DEBUG_KMEMLEAK=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_PER_VMA_LOCK_STATS is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_SHRINKER_DEBUG is not set
CONFIG_DEBUG_STACK_USAGE=y
# CONFIG_SCHED_STACK_END_CHECK is not set
@@ -6640,7 +6641,6 @@ CONFIG_LOCK_TORTURE_TEST=m
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/riscv 6.18.15 Kernel Configuration
# Linux/riscv 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -109,9 +109,11 @@ CONFIG_HAVE_EBPF_JIT=y
# BPF subsystem
#
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
CONFIG_BPF_JIT=y
# CONFIG_BPF_JIT_ALWAYS_ON is not set
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_NONE_BUILD=y
@@ -601,11 +603,13 @@ CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
CONFIG_GENERIC_IRQ_ENTRY=y
CONFIG_GENERIC_SYSCALL=y
CONFIG_GENERIC_ENTRY=y
# CONFIG_KPROBES is not set
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_UPROBES=y
CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y
CONFIG_KRETPROBES=y
CONFIG_KRETPROBE_ON_RETHOOK=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
@@ -1111,11 +1115,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
# CONFIG_NETFILTER_XT_TARGET_SECMARK is not set
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1251,7 +1257,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
@@ -1286,7 +1292,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -2798,7 +2804,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -7712,7 +7718,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -7741,9 +7746,11 @@ CONFIG_RCU_TRACE=y
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_DEBUG_CGROUP_REF is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_RETHOOK=y
CONFIG_RETHOOK=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
@@ -7781,6 +7788,8 @@ CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
@@ -7800,6 +7809,7 @@ CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_RV is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
@@ -7823,6 +7833,7 @@ CONFIG_RUNTIME_KERNEL_TESTING_MENU=y
#
# CONFIG_KUNIT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FUNCTION_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
# CONFIG_KCOV is not set
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 6.18.15 Kernel Configuration
# Linux/i386 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_TOOLS_SUPPORT_RELR=y
@@ -120,9 +120,11 @@ CONFIG_HAVE_EBPF_JIT=y
# BPF subsystem
#
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
CONFIG_BPF_JIT=y
# CONFIG_BPF_JIT_ALWAYS_ON is not set
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
@@ -1247,11 +1249,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1388,7 +1392,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
@@ -1423,7 +1427,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -2877,7 +2881,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -4468,6 +4472,7 @@ CONFIG_HID_MCP2221=m
#
# HID-BPF support
#
# CONFIG_HID_BPF is not set
# end of HID-BPF support
CONFIG_I2C_HID=y
@@ -6242,7 +6247,7 @@ CONFIG_PROC_MEM_ALWAYS_FORCE=y
# CONFIG_PROC_MEM_NO_FORCE is not set
CONFIG_SECURITY=y
CONFIG_HAS_SECURITY_AUDIT=y
# CONFIG_SECURITYFS is not set
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
# CONFIG_SECURITY_PATH is not set
@@ -6263,6 +6268,7 @@ CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
# CONFIG_SECURITY_IPE is not set
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_AUDIT=y
@@ -6814,7 +6820,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_NMI_CHECK_CPU is not set
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -1,19 +1,19 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 6.18.15 Kernel Configuration
# Linux/x86_64 6.18.18 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="Alpine clang version 21.1.8"
CONFIG_CC_VERSION_TEXT="Alpine clang version 22.1.1"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=210108
CONFIG_CLANG_VERSION=220101
CONFIG_AS_IS_LLVM=y
CONFIG_AS_VERSION=210108
CONFIG_AS_VERSION=220101
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
CONFIG_LLD_VERSION=210108
CONFIG_LLD_VERSION=220101
CONFIG_RUSTC_VERSION=109301
CONFIG_RUST_IS_AVAILABLE=y
CONFIG_RUSTC_LLVM_VERSION=210108
CONFIG_RUSTC_LLVM_VERSION=220100
CONFIG_CC_CAN_LINK=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
@@ -124,9 +124,12 @@ CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
# BPF subsystem
#
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
CONFIG_BPF_JIT=y
# CONFIG_BPF_JIT_ALWAYS_ON is not set
CONFIG_BPF_JIT_DEFAULT_ON=y
CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
# CONFIG_BPF_PRELOAD is not set
CONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_BUILD=y
@@ -799,6 +802,8 @@ CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
CONFIG_HAVE_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_PERF_EVENTS_NMI=y
CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y
CONFIG_UNWIND_USER=y
CONFIG_HAVE_UNWIND_USER_FP=y
CONFIG_HAVE_PERF_REGS=y
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
@@ -1348,11 +1353,13 @@ CONFIG_NETFILTER_XT_NAT=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_TRACE is not set
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
@@ -1489,7 +1496,7 @@ CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_ARPFILTER is not set
@@ -1524,7 +1531,7 @@ CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
@@ -2991,7 +2998,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
# CONFIG_TOUCHSCREEN_MSG2638 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
@@ -4560,6 +4567,7 @@ CONFIG_HID_MCP2221=m
#
# HID-BPF support
#
# CONFIG_HID_BPF is not set
# end of HID-BPF support
CONFIG_I2C_HID=y
@@ -6397,7 +6405,7 @@ CONFIG_PROC_MEM_ALWAYS_FORCE=y
# CONFIG_PROC_MEM_NO_FORCE is not set
CONFIG_SECURITY=y
CONFIG_HAS_SECURITY_AUDIT=y
# CONFIG_SECURITYFS is not set
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
# CONFIG_SECURITY_PATH is not set
@@ -6419,6 +6427,7 @@ CONFIG_SECURITY_SELINUX_SID2STR_CACHE_SIZE=256
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
# CONFIG_SECURITY_IPE is not set
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_AUDIT=y
@@ -7017,7 +7026,6 @@ CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_NMI_CHECK_CPU is not set
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
#
@@ -11,6 +11,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -11,6 +11,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -8,6 +8,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -8,6 +8,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -8,6 +8,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -8,6 +8,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -8,6 +8,7 @@ CONFIG_REGULATOR=y
CONFIG_RMI4_CORE=m
CONFIG_RMI4_I2C=m
CONFIG_STK3310=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_ZINITIX=m
# localversion
@@ -31,6 +31,18 @@ CONFIG_FW_LOADER_COMPRESS_ZSTD=y
CONFIG_PSI=y
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_UDMABUF=y
CONFIG_BPF=y
CONFIG_BPF_JIT=y
CONFIG_BPF_LSM=y
CONFIG_IPC_NS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
CONFIG_NET_NS=y
CONFIG_PID_NS=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_USER_NS=y
CONFIG_UTS_NS=y
# waydroid
# CONFIG_ANDROID_BINDERFS is not set
@@ -121,9 +133,13 @@ CONFIG_DUMMY=m
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IPC_NS=y
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_VS=m
@@ -157,11 +173,21 @@ CONFIG_VXLAN=m
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_MACVLAN=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_CT=m
CONFIG_NFT_NAT=m
CONFIG_NF_TABLES=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_IP6_NF_NAT=m
CONFIG_NFT_MASQ=m
CONFIG_OVERLAY_FS=m
CONFIG_IPVLAN=m
CONFIG_SECCOMP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_BPF=y
CONFIG_NFT_FIB=m
CONFIG_NFT_FIB_IPV4=m
CONFIG_NFT_FIB_IPV6=m
CONFIG_IP6_NF_FILTER=m
# zram
CONFIG_SWAP=y
@@ -31,6 +31,18 @@ CONFIG_FW_LOADER_COMPRESS_ZSTD=y
CONFIG_PSI=y
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_UDMABUF=y
CONFIG_BPF=y
CONFIG_BPF_JIT=y
CONFIG_BPF_LSM=y
CONFIG_IPC_NS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
CONFIG_NET_NS=y
CONFIG_PID_NS=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_USER_NS=y
CONFIG_UTS_NS=y
# waydroid
# CONFIG_ANDROID_BINDERFS is not set
@@ -121,9 +133,13 @@ CONFIG_DUMMY=m
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IPC_NS=y
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_VS=m
@@ -157,11 +173,21 @@ CONFIG_VXLAN=m
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_MACVLAN=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_CT=m
CONFIG_NFT_NAT=m
CONFIG_NF_TABLES=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_IP6_NF_NAT=m
CONFIG_NFT_MASQ=m
CONFIG_OVERLAY_FS=m
CONFIG_IPVLAN=m
CONFIG_SECCOMP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_BPF=y
CONFIG_NFT_FIB=m
CONFIG_NFT_FIB_IPV4=m
CONFIG_NFT_FIB_IPV6=m
CONFIG_IP6_NF_FILTER=m
# zram
CONFIG_SWAP=y
@@ -31,6 +31,18 @@ CONFIG_FW_LOADER_COMPRESS_ZSTD=y
CONFIG_PSI=y
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_UDMABUF=y
CONFIG_BPF=y
CONFIG_BPF_JIT=y
CONFIG_BPF_LSM=y
CONFIG_IPC_NS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
CONFIG_NET_NS=y
CONFIG_PID_NS=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_USER_NS=y
CONFIG_UTS_NS=y
# waydroid
# CONFIG_ANDROID_BINDERFS is not set
@@ -121,9 +133,13 @@ CONFIG_DUMMY=m
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IPC_NS=y
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_VS=m
@@ -157,11 +173,21 @@ CONFIG_VXLAN=m
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_MACVLAN=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_CT=m
CONFIG_NFT_NAT=m
CONFIG_NF_TABLES=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_IP6_NF_NAT=m
CONFIG_NFT_MASQ=m
CONFIG_OVERLAY_FS=m
CONFIG_IPVLAN=m
CONFIG_SECCOMP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_BPF=y
CONFIG_NFT_FIB=m
CONFIG_NFT_FIB_IPV4=m
CONFIG_NFT_FIB_IPV6=m
CONFIG_IP6_NF_FILTER=m
# zram
CONFIG_SWAP=y
@@ -31,6 +31,18 @@ CONFIG_FW_LOADER_COMPRESS_ZSTD=y
CONFIG_PSI=y
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_UDMABUF=y
CONFIG_BPF=y
CONFIG_BPF_JIT=y
CONFIG_BPF_LSM=y
CONFIG_IPC_NS=y
CONFIG_KPROBES=y
CONFIG_KPROBE_EVENTS=y
CONFIG_NET_NS=y
CONFIG_PID_NS=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_USER_NS=y
CONFIG_UTS_NS=y
# waydroid
# CONFIG_ANDROID_BINDERFS is not set
@@ -121,9 +133,13 @@ CONFIG_DUMMY=m
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IPC_NS=y
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_VS=m
@@ -157,11 +173,21 @@ CONFIG_VXLAN=m
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_MACVLAN=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_CT=m
CONFIG_NFT_NAT=m
CONFIG_NF_TABLES=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_IP6_NF_NAT=m
CONFIG_NFT_MASQ=m
CONFIG_OVERLAY_FS=m
CONFIG_IPVLAN=m
CONFIG_SECCOMP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_BPF=y
CONFIG_NFT_FIB=m
CONFIG_NFT_FIB_IPV4=m
CONFIG_NFT_FIB_IPV6=m
CONFIG_IP6_NF_FILTER=m
# zram
CONFIG_SWAP=y
Loaded 100 of 304 files, more files were not shown because too many files have changed in this diff. Show more