Compare commits

...
554 Commits
Author SHA1 Message Date
Oliver Smith 37059adbe1 main/postmarketos-base-ui: show EOL message 2024-07-31 20:51:24 +02:00
Oliver Smith d78210ca6f main/postmarketos-upgrade-gtk3: new aport 2024-07-31 20:51:24 +02:00
Oliver Smith a18c4703a6 cross/busybox-static-*: upgrade to 1.36.1-r19 2024-06-20 19:31:08 +02:00
Oliver Smith 46f8bc7593 main/postmarketos-release-upgrade: upgrade to 1.7.0 (MR 5193)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 06f761e972)
2024-06-16 19:17:30 +02:00
Oliver Smith 86d6eea8ef cross/busybox-static-*: upgrade to 1.36.1-r18 2024-05-29 00:23:57 +02:00
Oliver Smith 17d58a59f6 main/mobile-config-firefox: upgrade to 4.3.1 (MR 4998) (MR 5122)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 6d3cbd5d95)
2024-05-12 21:39:35 +02:00
Oliver Smith 281b6d781d main/mobile-config-firefox: upgrade to 4.3.0 (MR 4975) (MR 5122)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 1526420d86)
2024-05-12 21:39:18 +02:00
Stefan Hansson f5e1b0eac7 linux-postmarketos-exynos4: enable CONFIG_AUDIT (MR 4946) (MR 5053)
Necessary to debug seccomp filters, among other things. Without this
auditd doesn't work at all.

(cherry picked from commit d74c66bcf6)
[ci:skip-build]: already built successfully in CI
2024-04-22 12:59:05 -07:00
Henrik Grimler c40adfab1b linux-postmarketos-exynos4: update to 6.7.6 (MR 4862) (MR 5053)
Tested on m0, i9100 and odroid-u2.

[ci:skip-build]: already built successfully in CI

(cherry picked from commit 39a2a1aa5c)
2024-04-22 12:59:05 -07:00
Luca Weiss 3f9ad5f597 linux-postmarketos-exynos4: enable new community kconfig options (MR 4795) (MR 5053)
(cherry picked from commit ac788b8f3d)
2024-04-22 12:59:05 -07:00
Stefan Hansson 17135ee65a linux-purism-librem5: upgrade to 6.6.22pureos1 (MR 4964)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit a445ce34bd)
2024-04-20 13:15:24 +02:00
Stefan Hansson b6cefd3370 linux-purism-librem5: upgrade to 6.6.18pureos1 (MR 4866)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 79a047d5ae)
2024-04-20 13:15:21 +02:00
Luca Weiss ec1174493f modem/tqftpserv: upgrade and add patches for rsize & seek option handling (MR 4747)
Makes modem work on fairphone-fp4 (sm6350/sm7225) and fairphone-fp5
(sc7280/qcm6490)

Patches are submitted upstream:
https://github.com/andersson/tqftpserv/pull/13
[ci:skip-build]: already built successfully in CI

(cherry picked from commit d7c64500ee)
2024-03-28 19:38:49 +01:00
Arnav Singh 19385cb473 linux-postmarketos-allwinner: update checksum due to upstream changes (MR 4960)
Codeberg tarballs changed checksums.

This was done in master in 6c0391deb4

Ref: https://codeberg.org/Codeberg/Community/issues/1366

[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI.
2024-03-24 10:43:40 +01:00
Bobby The Builder f01c4bb605 device-pine64-pinephonepro: microphone alsa tune (MR 4630)
Since kernel 6.5 (I believe) the ucm config
   need to be adjusted because the mic way too
   sensitive. The other party hears a freight
   train riding rails that are almost
   perpendicular ...

   This is an attempt to get the mic to work nicely.
[ci:skip-build]: already built successfully in CI
2024-03-09 21:01:43 +01:00
Luca Weiss 6255108caf linux-purism-librem5: enable new community kconfig options (MR 4795) (MR 4682)
[ci:skip-build] # too many packages
2024-02-27 21:41:20 +01:00
Stefan Hansson b4a1bab481 linux-purism-librem5: upgrade to 6.6.13pureos1 (MR 4759) (MR 4682)
[ci:skip-build]: already built successfully in CI
2024-02-27 21:41:20 +01:00
Newbyte f55ef00572 linux-purism-librem5: upgrade to 6.6.6pureos1 (MR 4682) 2024-02-27 21:41:19 +01:00
Stefan Hansson ff08b8adf9 main/postmarketos-ui-plasma-bigscreen: disable on armv7 (MR 4864)
mycroft-plasmoid was disabled on armv7 in Alpine 3.19:
https://gitlab.alpinelinux.org/alpine/aports/-/commit/33dade81e989491540391517e1bab221289f91b8

[ci:skip-vercheck]: No need to update pkgrel when just changing enabled
architectures.
[ci:skip-build]: already built successfully in CI
2024-02-27 19:33:03 +01:00
Stefan Hansson 7615bf5f01 CI: don't check for executable files in temp (MR 4858)
Most things in temp come from Alpine's aports repository, which has
different rules and does not for example mandate that files are not
marked as executable. As such, let's not require packages in there
to conform to our rules.

[ci:skip-build]: already built successfully in CI
2024-02-27 08:53:24 -08:00
Stefan Hansson 3f926eefef CI: .ecrc: Exclude temp from check (MR 4858)
Most things in temp come from Alpine's aports repository, which has
different rules and does not for example mandate that all files use tabs
instead of spaces. As such, let's not require packages in there to
conform to our rules.
2024-02-27 08:53:24 -08:00
Clayton Craft e09952c8b5 pmos-base-ui: disable DNS filtering to work around dnsmasq hang (MR 4824)
Crappy workaround, it's better than having DNS broken...
See: https://gitlab.com/postmarketOS/pmaports/-/issues/2601

Also removed it from shellcheck, because SC doesn't like all of the
unused/unreachable things after the `exit 0`. This commit should be
reverted when the issue is actually fixed later...

[ci:skip-build] already built successfully in CI

(cherry picked from commit 4dac896160)
2024-02-14 12:20:21 -08:00
Luca Weiss 017ddd388c device-qemu-amd64: move kernel-none subpackage as last (MR 4790)
Currently the none kernel gets selected as default, move it to last so
that kernel-lts gets selected by default.

[ci:skip-vercheck]

(cherry picked from commit 91475c1230)
2024-02-06 00:04:48 +00:00
Oliver Smith 7827bbd020 main/unl0kr: add workaround to fix fast typing bug (MR 4642)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 0aa9524204)
2023-12-17 17:29:56 +01:00
vipoll a4dc4fed5f device-xiaomi-markw: workaround to fix touchscreens (MR 4631)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 20e0ff41c5)
2023-12-15 18:56:13 +01:00
Sicelo A. Mhlongo 427ee9f6a2 gps-nokia-n900: upgrade to 0.3.2 (MR 4628)
Upgrade to latest upstream version. It contains a fix for the reported GPS
date.

https://github.com/maemo-leste/gps-nokia-n900/commit/be8febb04200bea28cbe681d160e5fc1fd97a85a
[ci:skip-build]: already built successfully in CI

(cherry picked from commit f9c6d36d33)
2023-12-13 17:18:04 +01:00
Sicelo A. Mhlongo 39f8bd4da2 gps-nokia-n900: switch upstream sources to Leste repos (MR 4621)
Maemo Leste has better support/integration for the N900. Switch to their GPS
repository

[ci:skip-build]: Already built successfully in CI.
2023-12-12 20:53:43 +01:00
Sicelo A. Mhlongo d7bc3fb7e1 gps-nokia-n900: add maintainer (MR 4621) 2023-12-12 20:53:43 +01:00
Sicelo A. Mhlongo 794fba1218 gps-nokia-n900: switch arch to armv7 (MR 4621) 2023-12-12 20:53:43 +01:00
Sicelo A. Mhlongo 4734c0b694 device/testing/gps-nokia-n900: move to device/community (MR 4621)
Enable installing gps-nokia-n900 for the N900 device, which is in community
category
2023-12-12 20:53:34 +01:00
Luca Weiss 914d69d9dd device-fairphone-fp4: remove phosh-specific config (MR 4619)
Remove the gtk tweaks, they break the UI now, presumably because I've
added proper notch config for FP4 to the gmobile project.

Also we can remove the phoc.ini since nowadays phosh can properly scale
itself based on the screen information and doesn't need this static
config anymore.
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 62a2c66f02)
2023-12-11 14:33:29 +01:00
Oliver Smith db6ac6bbaa main/postmarketos-release-upgrade: upgrade to 1.6.1 (MR 4616)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 1a5e394074)
2023-12-10 22:35:25 +01:00
Pablo Correa Gómez f905cf462a main/postmarketos-artwork: upgrade and install GNOME XMLs (MR 4614)
This allows GNOME Settings to display our wallpapers. And most
remarkably, it allows people to switch back to the original wallpaper
if they ever happen to change it.

[ci:skip-build]: already built successfully in CI

(cherry picked from commit f8f7228621)
2023-12-10 15:16:11 +01:00
Pablo Correa Gómez b1a0788182 main/postmarketos-artwork: set buildddir (MR 4614)
This allows to build the package locally with pmbootstrap build --src

And is less repetition

(cherry picked from commit c49ac1cc80)
2023-12-10 15:16:04 +01:00
Oliver Smith 57ac2e4cf8 main/postmarketos-ui-sxmo*: upgrade to 1.15.0 (MR 4605) (MR 4615)
Adjust to sxmo-utils 1.15.0 not having a sxmo-utils-openrc subpackage
anymore.

Temporarily disable it for riscv64 since the alpine edge builder is
currently stuck. We should still merge the patch to unblock bpo images
for edge for the other arches.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/56851
Related: https://lists.sr.ht/~mil/sxmo-announce/%3CCXIQYCSF6FI9.28OPMYXGT91GL%40willowbarraco.fr%3E
(cherry picked from commit ee7acf9714)
2023-12-10 15:04:00 +01:00
Oliver Smith cb44e191d9 temp/sxmo-utils: fork 1.15.1 from Alpine edge (MR 4615) 2023-12-10 15:04:00 +01:00
Caleb Connolly 9b91e790f4 device/community/sdm845: enable console to workaround display init issue (MR 4610)
See edge blog post
https://gitlab.com/postmarketOS/postmarketos.org/-/merge_requests/236

upstream bug: https://gitlab.freedesktop.org/drm/msm/-/issues/46

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
[ci:skip-build]: already built successfully in CI
(cherry picked from commit 363446f9da)
2023-12-08 19:04:29 +01:00
Luca Weiss f33f085d14 device-fairphone-fp4: add bootmac dependency (MR 4608)
In order to get stable WiFi and Bluetooth MAC addresses, install the
bootmac service by default.

Also as noted in other device package reviews, qbootctl-openrc should be
a dependency so the post-install/post-upgrade script will definitely
have the openrc service available.
[ci:skip-build]: already built successfully in CI

(cherry picked from commit a5882ea0ac)
2023-12-08 18:04:17 +01:00
Caleb Connolly 1f4561fabf linux-postmarketos-qcom-sdm845: remove unused DTBs (MR 4597)
Drop all the non-sdm845 DTBs. This saves about 12MiB
of space in /boot

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
[ci:skip-build]: already built successfully in CI
(cherry picked from commit b977cf3128)
2023-12-07 20:59:53 +01:00
Pablo Correa Gómez 78a4e77840 linux-postmarketos-allwinner: revert to 6.4.7 kernel (MR 4600)
This is the last kernel version that had working USB-C for everybody

Related #2349

[ci:skip-vercheck]
(cherry picked from commit 750f69ff0b1d8a2a5db987a347b713bbfb27d552)

Note by Oliver: this was not merged to master as of writing.
As Arnav put it in the MR:
> I have a small preference that master remain on 6.6. Only USB
> ethernet is broken, and it's not broken for everyone. If we revert
> master then we're banking on upstream fixing it independently. If we
> leave master as-is then we're banking on either upstream or another
> motivated pmOS user fixing it, which makes a fix more likely.
2023-12-07 20:51:14 +01:00
Pablo Correa Gómez 3653a883cc device/*: rebuild all devices with kernel subpackages (MR 4596)
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 9ca0b50688)
2023-12-07 09:04:57 +01:00
Pablo Correa Gómez 16588f5f7e main/devicepkg-dev: remove deviceinfo link in kernel subpackages (MR 4596)
This was a fallout from the /usr/share relocation, only found and
reported now by z3ntu. If the device package happened to be installed
later, then the link would point to the wrong location.

Fixes 1d748a93dd

(cherry picked from commit 18e44a52ab)
2023-12-07 09:04:13 +01:00
Oliver Smith e20c85651b main/postmarketos-ui-plasma-bigscreen: remove ovos (MR 4603)
Upstream Plasma Bigscreen stopped supporting it.

[ci:skip-build]: already built successfully in CI

(cherry picked from commit 97a6609aae)
2023-12-07 08:19:04 +01:00
Oliver Smith acd220adf3 Revert "main/postmarketos-ui-plasma-bigscreen: remove"
This reverts commit 663259af6f.
2023-12-07 08:18:50 +01:00
Sam Day dad30db28c linux-postmarketos-qcom-msm8916: enable CONFIG_USB_VIDEO_CLASS (MR 4595) 2023-12-06 13:24:14 +01:00
Oliver Smith 2945c3db12 main/postmarketos-release-upgrade: upgrade to 1.6.0 (MR 4592)
[ci:skip-build]: already built successfully in CI
2023-12-05 17:54:03 +01:00
André Apitzsch b435c177d6 main/hwtest: add missing dependency (MR 4591)
hwtest crashes if fftest is not provided.

[ci:skip-build]: already built successfully in CI

(cherry picked from commit 8c934b9f74)
2023-12-03 16:37:18 +01:00
Sicelo A. Mhlongo fa9f284495 main/hwtest: upgrade to 0.7.0 (MR 4582)
[ci:skip-build] already built successfully in CI

(cherry picked from commit d4a73356c8)
2023-12-03 16:37:11 +01:00
Caleb Connolly f4a96f44a6 linux-postmarketos-qcom-sdm845: don't install linux.efi (MR 4590)
Space constraints in /boot result in mkinitfs failing. As we aren't
using EFI booting yet, stop installing the ZBOOT kernel variant until
this can be addressed properly (by moving the non-EFI vmlinuz binary out
of /boot)

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

Update by Oliver: I had observed running out of space in /boot, but that
was because I had a non-standard boot partition size of 128 MiB. The
default is 256 MiB for two years already. Let's merge this to v23.12
just in case somebody else has the same problem, but I'll also extend
the postmarketos-release-upgrade script to check the boot partition
size beforehand and warn about it, so we can assume that the partition
is big enough moving forward.

[ci:skip-build]

(cherry picked from commit 58ee8da591829984cce87f71b43367c6c5b91d7b)
2023-12-03 15:46:39 +01:00
Jan Jasper de Kroon e506cbeec3 linux-postmarketos-allwinner: upgrade to 6.6.3 (MR 4545)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 2459e95cd6)
2023-12-03 14:08:04 +01:00
Stefan Hansson 6c7fd48207 linux-purism-librem5: upgrade to 6.6.3 (MR 4584)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 736715b172)
2023-12-03 13:54:45 +01:00
Oliver Smith 2b08221aac device-google-x64-cors: backport from master
Copy the pmaport from master (08c20a83) as discussed in MR 4577. (Not
cherry-picking, because device/testing/device-google-x64cors is not
available in v23.12 and so we would have conflicts.)
2023-12-03 13:47:14 +01:00
Oliver Smith e851acf040 temp/petitboot: remove
Doesn't build currently, and isn't needed for devices in main and
community.
2023-12-03 12:50:12 +01:00
Clayton Craft 9bbe4b877d main/postmarketos-base-ui: setup cgroups on boot (MR 4585)
Allows things like podman/docker to work out of the box.

I looked at /etc/init.d/cgroups, and having this service enabled isn't a
problem if the kernel doesn't have cgroup support... in that situation,
the service script just simply exits (success).

[ci:skip-build] already built successfully in CI

(cherry picked from commit bfa873343a)
2023-12-02 10:51:10 -08:00
Oliver Smith a781cf11f8 temp/power-profiles-daemon: disable tests 2023-12-01 15:21:48 +01:00
Oliver Smith 85d8b17c41 main/postmarketos-mkinitfs-hook-apx: remove
Remove it for now, as it depends on devmem2 from alpine testing. If
somebody wants to have this in pmOS v23.12, make a merge request that
brings it back and adds devmen2.

Related: https://gitlab.alpinelinux.org/alpine/aports/-/issues/15527
2023-12-01 09:36:03 +01:00
Sicelo A. Mhlongo 7911ca02a0 linux-postmarketos-omap: upgrade to 6.6.3 (MR 4578)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit aa289aa350)
2023-12-01 08:58:45 +01:00
Caleb Connolly d1108dd369 linux-postmarketos-qcom-sdm845: use ZBOOT (MR 4542)
EFI booting with systemd-boot requires building the kernel with ZBOOT -
the EFI decompressor stub. However, this breaks the old Android booting.
Detect when ZBOOT is enabled and install both vmlinuz.efi as well as the
old gzipped kernel image.

To help make this upgrade more seamless, continue to support building
the kernel with ZBOOT disabled and just print a warning.

Disable module stripping - we compress them anyway and a recent kernel
change seems to have caused some bug here.

This is a packaging change that doesn't require rebuilding the kernel.
[ci:skip-vercheck]

(cherry picked from commit 5fa718644e)
NOTE by ollieparanoid: cherry-picked in a different order than on
master, but now both aports are identical again. The build failed
without this: https://builds.sr.ht/~postmarketos/job/1104620
2023-12-01 08:55:11 +01:00
Oliver Smith 23774f50c8 temp/power-profiles-daemon: fork from Alpine edge
[ci:skip-vercheck]
2023-11-30 07:33:52 +01:00
Stefan Hansson a81b8f9742 linux-postmarketos-qcom-sdm845: upgrade to sdm845-6.6.3-r3 tag (MR 4581)
[ci:skip-build]: already built successfully in CI

(cherry picked from commit e384812b29)
2023-11-29 23:19:49 +01:00
Stefan Hansson a1108766f9 linux-postmarketos-qcom-sdm845: migrate defconfig (MR 4581)
The 6.6.3 upgrade had some oddities such as being configured for
Clang and being generated for 6.6.0. This resolves that.

(cherry picked from commit 48d6f7383c)
2023-11-29 23:19:41 +01:00
Oliver Smith 663259af6f main/postmarketos-ui-plasma-bigscreen: remove
_pmb_recommends dep ovos is not in alpine 3.19.
2023-11-29 22:20:04 +01:00
Oliver Smith e8fb5fea69 main/postmarketos-ui-bananui: remove
Dependency bananui-demos is still in alpine testing, therefore didn't
make it into 3.19. If somebody wants to use it on v23.12, we make a MR
to add it with all dependencies.
2023-11-29 22:17:50 +01:00
Oliver Smith 8b43a5ce0f temp/mutter-mobile: add lcms2-dev to makedepends (MR 4580)
Fix for:
  meson.build:130:12: ERROR: Dependency "lcms2" not found, tried pkgconfig

Related: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/53961
[ci:skip-build]: already built successfully in CI

(cherry picked from commit 5783346ecb)
2023-11-29 22:14:00 +01:00
Oliver Smith 269996880b cross/gcc-x86: new aport
Add it back, as it is needed for systemd-boot.
2023-11-29 21:22:18 +01:00
Oliver Smith e02fc3a49a cross/musl-x86: new aport
Add it back, as it is needed for systemd-boot.
2023-11-29 21:22:12 +01:00
Caleb Connolly 9a2a9510e4 linux-postmarketos-qcom-sdm845: upgrade to 6.6.3 (MR 4542)
Finally!

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

[ci:skip-build]: Already built successfully in CI.
2023-11-29 20:38:54 +01:00
Oliver Smith e69fb9d80e Remove packages not relevant for stable 2023-11-28 21:08:20 +01:00
Oliver Smith f5ab362041 cross: regenerate for v23.12 2023-11-28 21:07:11 +01:00
Oliver Smith 5fa7c964f3 main/postmarketos-base: set version to v23.12 2023-11-28 21:06:37 +01:00
Oliver Smith 2f1f37a6bf === Branch v23.12 from master ===
Related: https://wiki.postmarketos.org/wiki/Create_release_branch
2023-11-28 20:47:42 +01:00
Anton Bambura c084e40b80 firmware-powervr-gx6250: move to community (MR 4575)
This was missed when moving google-oak to community
2023-11-28 18:15:30 +02:00
ptrcnull 0f862d3fe3 firmware-powervr-gx6250: upgrade to 1.17.6503725 (MR 4573) 2023-11-28 18:11:21 +02:00
Petr Hodina b8f4433e68 linux-pine64-pinenote: upgrade to 6.3.10. (MR 4279)
Enable the Wacom pen as bluetooth input HID

[ci:skip-build]: Already built successfully in CI.
2023-11-28 12:19:34 +01:00
Brandon Boese 943cfe7540 google-x64cros: switch to systemd-boot (MR 4571)
[ci:skip-build]: Already built successfully in CI.
2023-11-28 12:12:16 +01:00
adamthiede e39ec891b8 linux-postmarketos-mediatek-mt8173: upgrade to 6.6.2 and enable CONFIG_LRU_GEN (MR 4570)
[ci:skip-build]: Already built successfully in CI
2023-11-27 22:35:17 +02:00
Brandon Boese 5b9382b742 device-google-x64cros: add myself as maintainer (MR 4569)
[ci:skip-build]: already built successfully in CI
2023-11-27 11:34:49 +01:00
Clayton Craft 38073a05a4 cross/gcc-x86_64: new aport (MR 4568)
Useful for compiling x86_64 packages on aarch64

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-11-24 17:44:48 -08:00
Clayton Craft 1590be8611 cross/musl-x86_64: new aport (MR 4568) 2023-11-24 17:44:48 -08:00
Antoni Aloy Torrens c467e17bfc main/postmarketos-ui-lxqt: various fixes and usability improvements (MR 3259)
Co-developed-by: Jakob Hauser <jahau@rocketmail.com>
Co-developed-by: Pablo Correa Gomez <ablocorrea@hotmail.com>

[ci:skip-build]: Already built successfully in CI.
2023-11-24 14:01:07 +01:00
Bart Ribbers bcabeb80a1 main/postmarketos-ui-plasma-mobile: remove plasma-welcome from _pmb_recommends (MR 4567)
It isn't ready for mobile yet as it refers to things that do not exist
on Plasma Mobile. We'll add it back later when it is ready

[ci:skip-vercheck]
2023-11-24 11:38:57 +01:00
Teemu Ikonen 665dbfd204 temp/gtk4.0: upgrade to 4.12.4 (MR 4566)
[ci:skip-build]: already built successfully in CI
2023-11-23 23:47:13 +01:00
Pablo Correa Gómez ed1040e5dc temp/pulseaudio: disable lto, might be broken in some armv7 devices (MR 4563)
Something seems to have gone wrong in our rebuild and sync of pulseaudio
with alpine upstream. And user feedback points that building armv7 devices
with LTO is actually broken in our builders. In alpine, they enabled lto
in pulseaudio very long ago (f46174365b219fe431890df3df7e7dc488c9451e 08-09-22)
and nobody as complained so far. Since it's not really a phone-specific package,
one would hope that more people upstream would have noticed if it were broken
there. Since nobody has, we assume this is a downstream problem, and just
unconditionally disable lto in our build. We hope this will be just a temporary
workaround, until the patches that prompted the fork are no longer needed, and
we can simply use upstream pulseaudio, that shouldn't be broken.

Fixes #2368

[ci:skip-build] already built successfully in CI
2023-11-22 01:15:41 -08:00
Luca Weiss 2a4320e16e main/postmarketos-mkinitfs: use NCM instead of RNDIS (MR 3670)
As described in [0] let's switch away from RNDIS and use NCM instead.

Since we cannot force all kernels to switch at the same time, let's keep
a fallback to RNDIS in the setup function.

We can also remove usb_f_rndis from modprobe as the module gets loaded
automatically when needed, but instead we need to load libcomposite
manually so that $configfs/usb_gadget gets created.

[0] https://gitlab.com/postmarketOS/pmaports/-/issues/1797

[ci:skip-build] already built successfully in CI
2023-11-20 16:33:57 -08:00
Henrik Grimler 2df9debe71 linux: add shared patch for when compiling kernels older than 5.5 (MR 4558)
With recent gcc versions we get errors like:

/linux/arch/arm/mm/proc-v7.S: Assembler messages:
/linux/arch/arm/mm/proc-v7.S:425: Error: junk at end of line, first unrecognized character is `#'

Seen on at least two samsung kernels based on 3.4 and 3.10. Fix issue
by backporting (part of) commit found in mainline.
2023-11-19 21:51:57 +01:00
Clayton Craft 63228b7c3c main/boot-deploy: upgrade to 0.12 (MR 4561)
upstream changelog:
https://gitlab.com/postmarketOS/boot-deploy/-/tags/0.12
2023-11-19 11:30:07 -08:00
Ben Westover aeedc86d67 amazon-biscuit: new device (MR 4532) 2023-11-19 10:45:27 -08:00
Anton Bambura 0bbbd50adb modem/msm-cros-efs-loader: update remote (MR 4559)
[ci:skip-build] already built successfully in CI
2023-11-19 10:35:44 -08:00
Ion Agorria c43e9f45a8 CI: add setup_usb_storage.sh to shellcheck.sh (MR 4450)
[ci:skip-build] already built successfully in CI
2023-11-19 10:27:42 -08:00
Ion Agorria 1258df73d7 postmarketos-mkinitfs-hook-debug-shell: Add setup_usb_storage.sh (MR 4450) 2023-11-19 10:27:41 -08:00
Ion Agorria 5626781fca main/postmarketos-initramfs: Separate code into setup_usb_configfs_udc (MR 4450)
This method is called from setup_usb_network_configfs and debug shell's
setup_usb_storage.sh
2023-11-19 10:27:41 -08:00
Jakob Meier 9d9fc6fa49 linux-postmarketos-mediatek-mt8183: enable BINFMT_MISC kconfig (MR 4555)
[ci:skip-build]: Already built successfully in CI
2023-11-14 21:04:53 +01:00
Minecrell 8833243e8b firmware-<qcom-msm8916>: adjust for new venus firmware path (MR 4553)
Linux 6.7-rc1 looks for the venus (video) firmware in
qcom/venus-1.8/venus.mbn instead of qcom/venus-1.8/venus.mdt.

Let's install it in both places with a symlink so that the firmware
packages work for both older and newer Linux versions.

[ci:ignore-count]: lots of packages
[ci:skip-build] already built successfully in CI
2023-11-13 22:56:59 -08:00
Oliver Smith ffd16fa263 cross/musl-*: upgrade to 1.2.4_git20230717-r4 2023-11-13 08:44:30 +01:00
Oliver Smith 2dc2b58c26 cross/busybox-static-*: upgrade to 1.36.1-r15 2023-11-13 08:44:24 +01:00
Sergey Lisov 3b85595ff8 modem/samsungipcd: update to v0.2.3 (MR 4544)
[ci:skip-build]: already built successfully in CI
2023-11-12 14:46:38 +01:00
Jan Jasper de Kroon f193f840cc linux-pine64-pinephonepro: upgrade to 6.6.0 (MR 4538)
[ci:skip-build]: already built successfully in CI
2023-11-12 13:58:58 +01:00
Danila Tikhonov 5e01ef5453 linux-postmarketos-qcom-sm7150: Upgrade to 6.6.1 (MR 4546)
Swap maintainer and co-maintainer (David is not active now and requested
it himself). Also update email addresses.

Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
2023-11-11 21:18:23 +03:00
Andreas Kemnade 937c1a8772 linux-kobo-clara-mainline: Upgrade to v6.6 (MR 4543)
[ci:skip-build]: Already built successfully in CI
2023-11-09 11:31:00 +01:00
Duje Mihanović f578581ad0 linux-samsung-coreprimevelte: upgrade to 6.6 (MR 4540)
Bluetooth and poweroff support are also added.

[ci:skip-build]: already built successfully in CI
2023-11-08 19:48:15 +01:00
Duje Mihanović 5abb5574db samsung-coreprimevelte: move downstream port to unmaintained (MR 4540)
The mainline port has almost reached full feature parity with the
downstream port. Default to mainline in new installations, but keep
downstream around as it'll still be needed for bringing up the currently
missing features.
2023-11-08 19:48:15 +01:00
Duje Mihanović 779361ba0a linux-samsung-coreprimevelte: fix build error, enable PROC_DEVICETREE (MR 4540) 2023-11-08 19:41:28 +01:00
Jianhua Lu d64553214f alsa-ucm-conf-qcom-sm8250: remove _packagename and _flavor variable to improve readability (MR 4524)
[ci:skip-build]: Already built successfully in CI
2023-11-08 16:57:31 +01:00
Jianhua Lu 52703cce87 linux-postmarketos-qcom-sm8250: upgrade to 6.6.0 (MR 4524) 2023-11-08 16:57:31 +01:00
Clayton Craft b08ff33a33 linux-postmarketos-allwinner: enable rtw88 wifi drivers on armv7 (MR 4536)
Used on some USB WiFi adapters. This also enabled RFKILL (used by iwd)

[ci:skip-build]: Already built successfully in CI
2023-11-08 16:41:12 +01:00
Bryant Mairs e371bbdb1f device-samsung-milletwifi: Add msm-modem to enable GPS (MR 4528)
GPS on milletwifi is via the "modem", which doesn't have any cell model
support, but is similar. This starts the modem remoteproc to support
GPS output.

[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI
2023-11-08 16:27:54 +01:00
Bryant Mairs 190f13df1f device-samsung-milletwifi: Add firmware for Wi-Fi and Bluetooth (MR 4528) 2023-11-08 16:27:49 +01:00
Bryant Mairs 0ccd921802 linux-postmarketos-qcom-msm8226: Move more sensors to modules (MR 4528)
Some of these sensors give spurious dmesg warnings, even when not used,
so move them to modules.
2023-11-08 16:27:49 +01:00
Bryant Mairs 809aa1a627 linux-postmarketos-qcom-msm8226: Enable nftables support (MR 4528) 2023-11-08 16:27:48 +01:00
Bryant Mairs bbb73593be linux-postmarketos-qcom-msm8226: Enable firmare loading (MR 4528)
Firmware drivers will load too early, before msm-firmware-loader, so they
won't load the necessary firmware. Instead, mark them as modules so they load
later in the boot process, when the firmware is available.
2023-11-08 16:27:48 +01:00
Bryant Mairs 3137915ddf linux-postmarketos-qcom-msm8226: Upgrade kconfig to latest kernel (MR 4528)
Didn't do this when I upgraded the version, so doing it here as a separate
commit for clarity.
2023-11-08 16:27:48 +01:00
Jan Jasper de Kroon a56803bc52 linux-postmarketos-allwinner: upgrade to 6.6.0 (MR 4537)
[ci:skip-build]: already built successfully in CI
2023-11-07 22:54:03 +01:00
blacksilver 95e9949260 linux-samsung-xcover3lte: fix kernel build (MR 4539)
[ci:skip-build]: already built successfully in CI
2023-11-07 22:50:18 +01:00
Clayton Craft eef37b4d81 linux-lenovo-21bx: enable BINFMT_MISC, HIDRAW, ETHERNET kconfig (MR 4533)
BINFMT_MISC for running qemu on this system, and HIDRAW is used for some
USB devices. ETHERNET lets me use usb NICs, since this device does not
have a rj45 port/onboard NIC.

[ci:skip-build] already built successfully in CI
2023-11-04 15:44:39 -07:00
Anton Bambura 44c6fba704 samsung-w767: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523)
[ci:skip-build] already built successfully in CI
2023-11-04 10:02:49 -07:00
Anton Bambura b441adafe8 lenovo-yoga-5g: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523) 2023-11-04 10:02:49 -07:00
Anton Bambura a7d4668b8d lenovo-flex-5g: depend on linux-postmarketos-qcom-sc8180x>=6.6.0 (MR 4523) 2023-11-04 10:02:49 -07:00
Stefan Hansson 24b0744ae4 purism-librem5dev: remove gpsd config (MR 4507)
And don't bother disabling the gpsd service given how unlikely it is
that someone is doing something serious with this device, let alone
having it in the first place. Plus, it's in testing.

[ci:skip-build] already built successfully in CI
2023-11-03 23:28:30 -07:00
Stefan Hansson 5a2aafd62a pine64-pinephone: remove gpsd config (MR 4507)
This is no longer necessary as geoclue now can talk to ModemManager
directly for GPS information. It also presents a security risk due to
how gpsd works. As such, remove it.

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/2340
2023-11-03 23:28:29 -07:00
Clayton Craft 0443f204c7 device-purism-librem5: upgrade to 1.51 (MR 4411)
- librem5-base upgraded to v64: some tweaks to shipmode stuff, but
  otherwise nothing interesting for us

- actually install the mm-broadmobi-port-types udev rule

- add udev rule + service for enabling bluetooth for Sparklan WiFi
  adapters (fixes #2043)
2023-11-03 21:55:40 +01:00
Clayton Craft a44d7fd097 firmware-brcm43752: upgrade to 0.3_git20230613 (4411) (MR 4411)
pkgver was also updated to reflect that this is packaged from the latest
in git as of now. I probably should have done that from the start
(instead of ending up at the arbitrary '0.3'.)
2023-11-03 21:55:40 +01:00
Oliver Smith 1e47f77bc7 pine64-pinephonepro: update maintainers (MR 4529)
[ci:skip-build]: already built successfully in CI
2023-11-03 09:27:16 +01:00
Oliver Smith 9dad13d2e6 pine64-pinephone: update maintainers (MR 4529) 2023-11-03 09:27:16 +01:00
Oliver Smith 930aa6df78 cross/busybox-static-*: upgrade to 1.36.1-r14 2023-11-03 09:26:31 +01:00
Minecrell 6c2de41538 linux-postmarketos-qcom-msm8916: upgrade to 6.6 (MR 4520)
- Update to Linux v6.6
- Lots of cleanup and upstreaming, more than 40 commits upstreamed
  for 6.7

Device changes:
 - Add KTD2026 LED driver, used by bq-paella, bq-piccolo and
   acer-a1-724
 - bq-piccolo: Set proximity near level to fix detection in
   iio-sensor-proxy

New devices:
 - Vivo Y21L
   - eMMC, SD card, USB, Buttons, WiFi/BT
   - Sensors (Accelerometer, Magnetometer, Light)
   - No display yet

[ci:skip-build]: already built successfully in CI
2023-11-03 09:21:28 +01:00
Duje Mihanović 057584931e linux-samsung-coreprimevelte-mainline: upgrade to 6.6-rc7 (MR 4517)
Also adds patches for WiFi and backlight.

[ci:skip-build]: already built successfully in CI
2023-11-02 08:59:36 +01:00
Anton Bambura 2770d39f10 soc-qcom-sc7180: set non-strict iommu for eMMC, SD card and USB (MR 4526)
[ci:skip-build]: already built successfully in CI
2023-11-02 08:53:33 +01:00
Clayton Craft cc3dd7de87 postmarketos-mkinitfs: trigger on upgrades to sd-boot (MR 4525)
Since mkinitfs / boot-deploy install sd-boot in the ESP, it makes sense
to always trigger mkinitfs when sd-boot is upgraded so that we always
boot with the latest supported version.

[ci:skip-build]: already built successfully in CI
2023-11-02 08:49:27 +01:00
Clayton Craft c9c4b492e4 main/postmarketos-initramfs: show OS version on splash screen (MR 4470)
This shows the OS version (from /etc/os-release), e.g. "edge", on the splash
screen. os-release is a tiny text file, adding it to the initramfs doesn't seem
too bad, and having this information on the splash screen can be helpful.

Note that this uses "VERSION" and not "PRETTY_NAME" from the os-release file,
since the splash already shows "postmarketOS" (and the pretty name includes
that too), it seemed redundant and took up valuable display space.

[ci:skip-build]: already built successfully in CI
2023-11-02 08:44:47 +01:00
Clayton Craft 1c56a8a0d1 main/postmarketos-base: include os-release in the initramfs (MR 4470) 2023-11-02 08:44:31 +01:00
Jan Jasper de Kroon 4adee867e1 linux-postmarketos-allwinner: upgrade to 6.6-rc5 (MR 4516)
[ci:skip-build] already built successfully in CI
2023-11-01 16:05:11 -07:00
Oliver Smith f8f223fef0 main/postmarketos-ui-phosh: set pmOS wallpaper (MR 4527)
[ci:skip-build] already built successfully in CI
2023-11-01 16:02:41 -07:00
Oliver Smith f231f88d4d main/postmarketos-ui-gnome: set pmOS wallpaper (MR 4527)
Set myself as maintainer while at it, as Martijn is currently inactive.
2023-11-01 16:02:41 -07:00
Oliver Smith fbc3f390fa main/postmarketos-ui-gnome-mobile: set wallpaper (MR 4527)
Set the GNOME Mobile specific wallpaper in this package, now that it
isn't set in postmarketos-base-ui-gnome anymore.
2023-11-01 16:02:41 -07:00
Oliver Smith 367caeb4fc main/postmarketos-base-ui-gnome: add wallpaper_pmos subpkg (MR 4527)
Add a subpackage that sets the pmOS wallpaper, instead of always setting
the wallpaper that was added for giving GNOME Shell on Mobile a better
contrast.
2023-11-01 16:02:36 -07:00
Caleb Connolly 614cbdc5d1 postmarketos-mkinitfs: trigger on initramfs tests (MR 4420)
Add a trigger to rebuild the initramfs when CI tests are installed.

[ci:ignore-count]
2023-10-31 20:39:55 +00:00
Caleb Connolly c99a360a6e unl0kr: add pmtest (MR 4420)
Add a test for CI that:
* ensures unl0kr runs for 10 seconds without crashing
* ensures that it doesn't print any errors

This sure isn't an "ideal" test, but it at least validates that the
framebuffer interface doesn't die horribly...

With a little more effort we should be able to run unl0kr and then pull
the framebuffer and check it against some known good unl0kr screenshot.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:54:17 +00:00
Caleb Connolly 6fcc759991 device/community/firmware-*-sdm845: add pmtest subpackages (MR 4420)
Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:54:17 +00:00
Caleb Connolly 570e52d99c device/community: add pmtest subpackages for a few sdm845 devices (MR 4420)
Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:53:22 +00:00
Caleb Connolly 2204c0a390 main/bootrr: new aport (MR 4420)
bootrr is a simple shell script tool for validating that a given board
has booted correctly. It checks that all expected drivers are loaded.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:53:22 +00:00
Caleb Connolly bcd6fc9c32 modem/qrtr: add ci tests (MR 4420)
Add a basic test that runs qrtr-lookup and ensures that at least one QMI
service is available. This is mostly a proof of concept and can be
extended in the future.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:53:22 +00:00
Caleb Connolly 69832ab121 postmarketos-initramfs: support running in CI (MR 4420)
Enable using the postmarketOS initramfs for boot-testing devices, in
this scenario we don't care about some components like the splash, mdev,
or subpartitions, instead we want to run full udev (to load all devices)
and then run hooks. The ci hook will deadloop after running tests.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:53:22 +00:00
Caleb Connolly ac1d78a246 devicepkg-dev: add pmtest helper (MR 4420)
Add a helper to generate a post-install script for device pmtest
subpackages. This script configures the console and enables logging in
the initramfs for images running in CI.

[ci:ignore-count]
2023-10-31 19:53:22 +00:00
Caleb Connolly 161711dea3 main/postmarketos-test: new aport (MR 4420)
This package provides a helper for writing a pmtest subpackage, as well
as being a place to write generic tests that aren't specific to a device
(e.g. a suspend test).

Signed-off-by: Caleb Connolly <caleb@connolly.tech>

[ci:ignore-count]
2023-10-31 19:53:22 +00:00
Caleb Connolly e22f6f684f postmarketos-mkinitfs-hook-ci: new aport (MR 4420)
Add a new initramfs hook for running tests in a CI environment.

This hook automatically runs any scripts from /usr/libexec/ci-tests.
Tests should be installed as a subpackage of some other package (e.g.
qrtr) with an install_if clause to install them when this hook is
installed.

This allows platform specific packages like device packages to define
tests that will automatically be installed and executed when building
the initramfs for that device. See
device/community/device-oneplus-enchilada for an example.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-10-31 19:53:21 +00:00
Arnav Singh aecda04b22 linux-postmarketos-allwinner, *-pinephone: add myself as co-maintainer (MR 4513)
Also remove craftyguy per their request.

Ref:

- https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4505

- https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4513#note_1624398634

[ci:skip-build] already built successfully in CI
2023-10-31 11:30:45 -07:00
Sicelo A. Mhlongo 6f3262d477 linux-postmarketos-omap: upgrade to 6.6.0 (MR 4521)
[ci:skip-build] already built successfully in CI
2023-10-30 20:39:09 -07:00
Luca Weiss 027866c8d4 {community,main}/*: enable USB_CONFIGFS_NCM (MR 4511)
See also #1797 and !3670

[ci:skip-build] already built successfully in CI
2023-10-30 20:17:27 -07:00
Konrad DybcioandClayton Craft 7aa1013087 lenovo-21bx: new device (MR 4392)
Co-authored-by: Clayton Craft <clayton@craftyguy.net>

[ci:skip-build] already built successfully in CI
2023-10-30 19:49:48 -07:00
Anton Bambura 21301644fd lenovo-yoga-5g: add PMIC glink initfs modules for USB (MR 4522)
[ci:skip-build] already built in CI
2023-10-30 22:33:37 +02:00
Anton Bambura eb4318d908 lenovo-flex-5g: add PMIC glink initfs modules for USB (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura ab3b6098fe samsung-w767: add cmdline to fix UFS (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura c1e4b238b1 lenovo-yoga-5g: add cmdline to fix UFS (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura 474a3d2a89 lenovo-flex-5g: add cmdline to fix UFS (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura 19fb4d5362 samsung-w767: switch to systemd-boot (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura a1a2f1580c lenovo-yoga-5g: switch to systemd-boot (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura 588f82329f lenovo-flex-5g: switch to systemd-boot (MR 4522) 2023-10-30 22:33:37 +02:00
Anton Bambura 33f518f93f linux-postmarketos-qcom-sc8180x: upgrade to 6.6.0 (MR 4522)
Also enable CONFIG_EFI_ZBOOT for systemd-boot
2023-10-30 22:33:37 +02:00
Luca Weiss daabd8fce2 linux-postmarketos-qcom-sc7280: upgrade to 6.6.0 (MR 4518)
[ci:skip-build]: already built successfully in CI
2023-10-30 11:38:57 +01:00
Clayton Craft 1f8c3c240a device-valve-jupiter: use systemd-boot (MR 4514)
[ci:skip-build] # already built in CI
2023-10-29 21:54:18 +00:00
Clayton Craft c748048ef3 main/systemd-boot: add patch to load dtb even if fw is missing config (MR 4509)
Submitted upstream: https://github.com/systemd/systemd/pull/29749

[ci:skip-build] already built successfully in CI
2023-10-28 12:32:56 -07:00
Clayton Craft 22c6020965 device-qemu-amd64: Add support for EFI boot (MR 4508)
systemd-boot is used for EFI boot (when using "pmbootstrap qemu --efi"),
legacy boot (seabios) is still supported as well (pmb/qemu boots the
kernel directly).

[ci:skip-build] already built successfully in CI
2023-10-28 09:33:03 -07:00
Stefan Hansson 93c04ff4a6 CI: don't shadow built-in dir function (MR 4500)
Not related to the deprecation fixes.

[ci:skip-build]: already built successfully in CI
2023-10-27 08:37:43 +02:00
Stefan Hansson c5b66e4090 CI: replace depreciated module (MR 4500)
See PEP 632: https://peps.python.org/pep-0632

Closes https://gitlab.com/postmarketOS/pmaports/-/issues/2207
2023-10-27 08:37:37 +02:00
André Apitzsch 5dec8f2c87 bq-piccolo: remove unneeded pointercal (MR 4506)
With unl0kr being default now, pointercal is no longer needed.

[ci:skip-build]: already built successfully in CI
2023-10-26 00:05:55 +02:00
Raymond Hackley 398cba07b7 samsung-a6plte: drop 30-gpu-firmware.files (MR 4501)
msm-firmware-loader path is valid only on booted phones, which won't exist
in pmbootstrap chroot, but results in no such file or directory errors.
Drop 30-gpu-firmware.files to workaround temporarily. Besides it's
preferred to be put in firmware packages.

[ci:skip-build]: already built successfully in CI
2023-10-23 08:26:06 +02:00
Alexandre Marquet 0480628fe1 device-samsung-manta-downstream: remove package (MR 4406)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>

[ci:skip-build]: already built successfully in CI
2023-10-23 08:18:27 +02:00
Alexandre Marquet dd4fc39824 linux-samsung-manta-downstream: remove package (MR 4406)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2023-10-23 08:18:27 +02:00
Alexandre Marquet db2b912a0a device-samsung-manta: switch to mainline kernel (MR 4406)
Samsung Manta is now supported by linux-posmarketos-exynos5.
Update device-samsung-manta to use it, and move downstream kernel and
device to unmaintained.

Also adds a script and networkmanager configuration to autoconfigure
WiFi MAC address from /proc/cmdline.

Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2023-10-23 08:18:26 +02:00
Alexandre Marquet 08f32ffa4d firmware-samsung-manta: update for mainline (MR 4406)
WiFi firmware for brcm43241b0 is in linux-firmware, but not the calibration (bcmdhd.cal).
Mainline driver need bcmdhd.cal to be renamed brcmfmac43241b0-sdio.samsung,nexus10-manta.txt.

Mainline Bluetooth driver needs BCM.samsung,nexus10-manta.hcd.

Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2023-10-23 08:18:26 +02:00
Alexandre Marquet 062a26a60d linux-postmarketos-exynos5: update config for Samsung Manta (MR 4406)
Signed-off-by: Alexandre Marquet <tb@a-marquet.fr>
2023-10-23 08:18:21 +02:00
Caleb Connolly 78762563c2 postmarketos-initramfs: use blkid (MR 4487)
Explicitly pull in the blkid package (we already added it to
00-initramfs-base.files), and replace uses of busybox findfs. Full fat
blkid supports PARTLABEL (so the /dev/disk/by-partlabel symlinks will
work consistently now), and has some nice optimisations that make the
lookup times a lot faster than busybox findfs.

[ci:skip-build]: already built successfully in CI
2023-10-23 08:10:56 +02:00
Caleb Connolly 5c6f2dd0d9 postmarketos-initramfs: fix partition cmdline priority (MR 4487)
The "pmos_[br]oot(_uuid)?" kernel cmdline args can be used to specify
how to mount the root and boot partitions. During a previous rework, the
behaviour of these was made inconsistent (becoming dependent on the
order they were specified on the cmdline).

Undo the previous "optimisation" by splitting them back out into two
FOR loops, where the _uuid variants take precedence.
2023-10-23 08:10:50 +02:00
Alistair Francis 2c2aeed034 temp/pulseaudio: Enable webrtc (MR 4480)
Signed-off-by: Alistair Francis <alistair@alistair23.me>

[ci:skip-build]: already built successfully in CI
2023-10-23 07:40:41 +02:00
Alistair Francis 32b9b64c98 temp/pulseaudio: Refresh from upstream (MR 4480)
Refresh the package with latest changes from Alpine

Signed-off-by: Alistair Francis <alistair@alistair23.me>
2023-10-23 07:40:35 +02:00
Stefan Hansson a0a14ce58d linux-purism-librem5: upgrade to 6.5.6 (MR 4499)
[ci:skip-build] already built in CI
2023-10-22 15:54:33 +01:00
Dark98 0a8069435b device-htc-leo: depend on postmarketos-base-downstream (MR 4497)
Postmarketos-base-downstream provides a lightdm config file needed
for GUI to be brought up when using an x11 based UI.

[ci:ignore-count]
[ci:skip-build]: Already built successfully in CI
2023-10-21 14:43:14 +02:00
Dark98 7cea0a4a7b device-amazon-ford: depend on postmarketos-base-downstream (MR 4497)
WPostmarketos-base-downstream provides a lightdm config file needed
for GUI to be brought up when using an x11 based UI.
2023-10-21 14:43:13 +02:00
Henrik Grimler 1b86b7b922 device-samsung-gts210lte: depend on postmarketos-base-downstream (MR 4497)
Postmarketos-base-downstream provides a lightdm config file needed for
GUI to be brought up when using an x11 based UI.
2023-10-21 14:43:13 +02:00
Henrik Grimler 5462164fad exynos5420-tablets: depend on postmarketos-base-downstream (MR 4497)
When using downstream kernel.  Postmarketos-base-downstream provides a
lightdm config file needed for GUI to be brought up when using
an x11 based UI.
2023-10-21 14:43:12 +02:00
Henrik Grimler 2a03913ef4 device-samsung-dream: depend on postmarketos-base-downstream (MR 4497)
Postmarketos-base-downstream provides a x11 config file needed for GUI
to be brought up when using lightdm+x11 based UIs.

Fixes: https://gitlab.com/postmarketOS/pmaports/-/issues/2102
2023-10-21 14:43:12 +02:00
Henrik Grimler b2c3933136 device-samsung-crownlte: depend on postmarketos-base-downstream (MR 4497)
And drop 10-logind-check-graphical.conf since
postmarketos-base-downstream provides that file.
2023-10-21 14:43:12 +02:00
Henrik Grimler fc69517273 device-samsung-star2lte: depend on postmarketos-base-downstream (MR 4497)
And drop 10-logind-check-graphical.conf since
postmarketos-base-downstream provides that file.
2023-10-21 14:43:12 +02:00
Henrik Grimler 0028ae7353 device-samsung-starlte: depend on postmarketos-base-downstream (MR 4497)
And drop 10-logind-check-graphical.conf since
postmarketos-base-downstream provides that file.
2023-10-21 14:43:12 +02:00
Henrik Grimler c2175703fe main/postmarketos-base-downstream: add package (MR 4497)
All devices that use downstream kernels should depend on this package.
We will to start with use it to fix so that lightdm+x11 work again
when using downstream kernels.

See also https://gitlab.com/postmarketOS/pmaports/-/issues/2102.
2023-10-21 14:43:12 +02:00
Bryant Mairs 8d522e2640 samsung-milletwifi: new device (MR 4495) 2023-10-21 14:40:02 +02:00
Bryant Mairs ac80693307 linux-postmarketos-qcom-msm8226: add kernel options (MR 4494)
These are necessary for samsung-milletwifi to use this kernel.

[ci:skip-build]: Already built successfully in CI
2023-10-20 22:19:50 +02:00
Bryant Mairs 75774e99df linux-postmarketos-qcom-msm8226: upgrade to 6.5.7 (MR 4494) 2023-10-20 22:19:47 +02:00
Stefan Hansson 14e6594cc5 cross/gcc-*: upgrade to 13.2.1_git20231014 2023-10-20 13:06:28 +02:00
Raymond Hackley 4372013494 samsung-a6plte: add SM5708 modules to initfs, configure getty using deviceinfo_getty variable and add USB ID (MR 4404)
- Add SM5708 modules to initfs for the following devices, to unlock FDE
  with USB OTG keyboards and fix USB networking.
- Configure getty using deviceinfo_getty variable.
- Add USB ID 04e8:6860 to deviceinfo

[ci:skip-build]: already built successfully in CI
2023-10-18 17:58:47 +02:00
Raymond Hackley 6157a01f0f firmware: use build() instead of unpack() (MR 4493)
Some firmware packages has only a WCNSS config file, which is decoded
from base64 uploaded to Pastebin, and there is nothing to unpack.

[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2023-10-18 17:54:42 +02:00
Clayton Craft ef663840c4 main/postmarketos-mkinitfs: upgrade to 2.2.2 (MR 4475)
The only new thing in this version is the addition of a deprecation warning
when osk-sdl is installed in the initramfs.

Also see: https://gitlab.com/postmarketOS/pmaports/-/issues/2319
[ci:skip-build]: already built successfully in CI
2023-10-18 17:51:59 +02:00
Clayton Craft cf8fc87a52 device-valve-jupiter: set deviceinfo_generate_systemd_boot (MR 4485)
Upstream boot-deploy (me, lol) removed generate_gummiboot,
and now generate_systemd_boot is used to configure both gummiboot and
systemd boot.

[ci:skip-build]: already built successfully in CI
2023-10-18 17:46:15 +02:00
Clayton Craft 4a8b89e750 main/boot-deploy: upgrade to 0.11 (MR 4485)
Upstream changelog: https://gitlab.com/postmarketOS/boot-deploy/-/tags/0.11
2023-10-18 17:46:15 +02:00
Pablo Correa Gómez bdaf8ef02f main/postmarketos-initramfs: support comments in modules.load file (MR 4490)
[ci:skip-build]: already built successfully in CI
2023-10-18 15:08:21 +00:00
Clayton Craft 9400f43579 cross/gcc-riscv64: upgrade to 13.1.1_git20230722-r3 (MR 4476)
This reverts commit 72e55aae91, which was
itself a revert of this change 🥳

[ci:skip-build]: Already built successfully in CI
2023-10-18 16:59:53 +02:00
Raymond Hackley ca6ff9cd98 acer-t01: new device (MR 4488) 2023-10-18 13:15:18 +02:00
Barnabás Czémán 39b9c33cc0 xiaomi-onclite: remove bam_dma from modules-initfs (MR 4489) 2023-10-18 13:11:41 +02:00
Ion Agorria 4dc4b0adf6 oneplus-hotdogb: add device pkg (MR 4451)
[ci:skip-build]: already built successfully in CI
2023-10-16 20:25:55 +02:00
Richard Acayan c0fc15d156 google-sargo: package q6voiced config (MR 4479)
This was missed in the original c720400e47 ("google-sargo: add
q6voiced config (MR 4412)"), then pointed out by craftyguy when
reviewing the full bonito port.

Link: https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4318#note_1587356675
[ci:skip-build]: already built successfully in CI
2023-10-16 20:21:56 +02:00
M0Rf30 0b8a2265f8 qcom-msm8953: make bam_dma static (MR 4486)
[ci:skip-build]: already built successfully in CI
2023-10-16 20:18:21 +02:00
M0Rf30 71389586f8 linux-postmarketos-qcom-msm8953: upgrade to 6.5.2-r1 (MR 4477)
[ci:skip-build]: already built successfully in CI
2023-10-16 20:15:41 +02:00
Clayton Craft 72bd769dcb main/systemd-boot: new aport (MR 4484)
EFI bootloader from systemd, with hacks to build it on Alpine/pmOS.
Cross compilation (using a meson cross file) is used for building
32-bit version on x86_64, for systems that have a 32-bit EFI. Everything
else assumes that the EFI arch matches the CPU arch.

Besides supporting all the archs we need, another major goal was to
minimize the number of changes to systemd's build system required to
build only the bootloader, so that maintaining/rebasing isn't *too*
painful...

I am adding this to the "main" category, because I don't think there's a
way to add it to Alpine. It requires cross compiling to x86 on x86_64
(to support 32-bit EFI on this arch), and Alpine doesn't support this.
It requires stuff in pmaports/cross.

--- Research notes ---

I started looking at all of this because I wanted to come up with a
single way to boot Linux via EFI, that supports all (or as many as possible)
devices in pmaports. I looked at quite a few different options, and have
some notes below about my observations and conclusions for each.

Of everything I looked at, systemd-boot was the clear winner that met
the most requirements ("pro" below) with the fewest downsides ("con"
below).

Using a Unified Kernel Image (UKI) was a close second place, however
systemd-boot can also support booting UKI images quite easily (while
also giving us more flexibility to boot other things easily too), so I
think it wins over UKI.

The capitalization (or lack thereof) of the "pro" and "con" markers
below is significant: "PRO" / "CON" are major pros or cons for each
point (e.g. a major downside that blocks using the option), and
"pro"/"con" are minor (e.g. a downside that I'm willing to overlook.)

---- Requirements ----

- Arch support:
        - x86_64
        - x86 (nice to have, but not sure if necessary...)
        - armv7
        - aarch64
        - riscv64
- EFI support:
        - support 32-bit EFI on x86_64 CPU (includes being able to build
          32-bit .efi app on x86_64)
- Easy to configure
- Easy to maintain
        - Any changes to the bootloader required to get it working in
          pmOS
        - Config for it

---- Evaluated options ----

------ grub ------
   - (PRO) can target all required archs
   - (CON) grub can't be installed in pmb chroot, it calls grub-install and
     that fails due to something missing in /dev. Maybe this could be worked
     around in pmb?
   - (CON) grub-mkimage exe is integrated in grub package, grub-efi depends on
     grub
      - don't want to install all of grub just for 1 exe and/or the EFI modules
      - downsides of installing all of grub is that I think it can mislead
        users into thinking we use grub the "normal way". this might cause them
        to have the wrong expectations and break pmOS boot on their
        system
      - have POC "fixing" this
      - I'm not sure upstream Alpine will like this, it's ugly
   - (CON) grub x86 EFI support for x86_64 is currently in pmaports, that's
     pretty ugly.
      - IMHO forking grub (or grub components) for this purpose signals
        to me that grub is the wrong tool for this job

------- kernel's efistub -------
   - (PRO) already included in the kernel, nothing else required
   - (pro) initrd and dtb can be passed in the kernel cmdline...
     however....
   - (CON) kernel cmdline can only be set at compile time
   - (con) not all kernels may have EFISTUB set?
   - (con) can't do measured/secure boot
   - (con) requires a fairly recent kernel on aarch w/ efi_zboot support
     enabled since we compress the kernel

------- UKI -------
   - (PRO) very simple, 1 file thing
   - (PRO) supports adding dtb, setting kernel cmdline and so on
   - (pro) can do measured/secure boot
   - (CON) requires an EFI stub loader
      - can't find a stub loader that meets all requirements (other than
        the one from systemd-boot...)
   - (con) requires efi-mkuki or dealing with objcopy directly (eww)
   - (con) requires a fairly recent kernel on aarch w/ efi_zboot support

------- limine -------
   - (PRO) easy to install/configure, already have boot-deploy and pmaports
     patches
   - (PRO) can be cross compiled easily
      - evidence is in aports
      - ...but I couldn't reproduce building aarch64 and riscv64 on x86_64
   - (pro) can do measured/secure boot (I think?)
   - (CON) doesn't target all required archs
      - can't do "linux boot" on aarch64, only "chainload"
      - what about using chainload everywhere?
         - requires using efistub in kernel
         - what about dtb= and upstream recommendation to not use it except for
           debug?
         - no kernel compression support on aarch64
         - see efi-stub.txt kernel doc
   - (CON) vendors libgcc to support cross compilation
      - probably not a good idea to trust binaries produced in microsoft
        github's CI for some random project

------- stubbyboot -------
   - (PRO) a straight forward stub loader
   - (pro) can do measured/secure boot
   - (CON) doesn't target all required archs
   - (CON) cross compiling doesn't work.
      - gcc can't do 32-bit on x86_64 Alpine...
      - gnu-efi-dev needs to be fixed to package both 32-bit and 64-bit on x86_64...
         - have patch in ~/src/aports that kinda does it.. but needs to be
           fixed/finished
      - maybe limine-efi works with it?
         - tried, but fails due to missing efilib.h in limine-efi

------- systemd-stub -------
   - (PRO) another straight forward stub loader
   - (PRO) many (many) people using it, as part of systemd-boot
   - (pro) can do measured/secure boot
   - (con) requires a fairly recent kernel on aarch w/ efi_zboot support
     enabled since we compress the kernel
   - (con) doesn't target all required archs
      - but does claim to support most... missing armv7.. maybe it
        works?
   - (con) will end up maintaining some downstream patch to build it
      - hopefully the patch (if I can even make a working one!) is not too
        complex!
   - (CON) can't be built outside of systemd's silly large build system.
      - UPDATE: largely resolved this in pmaports
      - was able to build for native arch!
      - can't build 32-bit on x86_64, no gcc multilib support in Alpine...
        Couldn't get clang to work properly, but maybe it can somehow...
      - https://github.com/mintsuki/libgcc-binaries ? NO! (don't want
        bootloader binaries that depend on code compiled by microsoft /
        github...)

------- DIY stub / bootloader -----
   - (PRO) **might** target all required archs and other meet
     requirements
   - (CON) lots of time required to learn, design, do, debug, test
   - (CON) lots of time required to learn, design, do, debug, test
   - (CON) lots of time required to learn, design, do, debug, test
   - (CON) (get the hint yet???)
   - (CON) written in C, probably (there's a rust EFI lib, lol...)

[ci:skip-build]: Already built successfully in CI
2023-10-16 12:16:41 +02:00
Arnav Singh 160a73321d main/linux-postmarketos-allwinner: switch to working mirror (MR 4478)
Fixes #2303

[ci:skip-vercheck] [ci:skip-build]: changing source location only
2023-10-16 07:48:58 +02:00
Willow Barraco fe066f9731 linux-kobo-clara-mainline: enable PM_WAKELOCKS (MR 4481)
[ci:skip-build]: already built successfully in CI
2023-10-15 18:13:56 +02:00
Willow Barraco 85fca01a25 linux-kobo-clara: enable PM_WAKELOCKS (MR 4481) 2023-10-15 18:13:56 +02:00
Anton Bambura e1dabe77b3 linux-postmarketos-exynos5: upgrade to 6.1.56 (MR 4483)
Backported from our development branch:
- SPI flash for chromebooks;
- support for samsung-manta (see !4406 for status);
- fix performance of video decoder which drastically reduces lag when streaming games.

[ci:skip-build]: already built successfully in CI
2023-10-15 18:11:36 +02:00
Oliver Smith 5cf775dff9 device-pine64-rockpro64: update u-boot image name (MR 4473)
Adjust to change in Alpine that moved rockchip to single image:
https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/51827

Fix for:
  ERROR: The following firmware binary does not exist in the rootfs_pine64-rockpro64 chroot: /usr/share/u-boot/rockpro64-rk3399/idbloader.img
[ci:skip-build]: already built successfully in CI
2023-10-15 18:08:20 +02:00
Emanuele Sorce 40db4c5962 bq-vegetahd: new device (MR 4468)
[ci:skip-build]: already built successfully in CI
2023-10-13 19:14:27 +02:00
Luca Weiss 616b3e14bb device-sony-leo: add firmware for mainline kernel (MR 4452)
As with the firmware commit, no effort is done to keep firmware packages
working with downstream kernel.

[ci:skip-build]: already built successfully in CI
2023-10-13 19:03:49 +02:00
Luca Weiss 8402710815 firmware-sony-leo: update package for mainline kernel (MR 4452)
Package adsp, modem and wifi firmware for mainline. Compatibility with
downstream firmware is not kept on purpose, if somebody wants this,
please make some subpackage for it!
2023-10-13 19:03:49 +02:00
Luca Weiss 805b7fa0ee modem/ta-service: new aport (MR 4452) 2023-10-13 19:03:49 +02:00
Clayton Craft ba934f0325 cross/busybox-static-*: upgrade to 1.36.1-r13 2023-10-12 23:47:20 -07:00
Stefan Hansson 6b7c6a73d4 librecomputer-solitude: new device (MR 4467)
Tested on the V0.2 variant of the hardware which comes with some U-Boot
build preinstalled. I don't know if this will be the case for the final
version that will be shipped to customers, but the announecment would
imply so given that it says the device "incorporates a advanced [sic]
BIOS compatible with UEFI".

[ci:skip-build]: already built successfully in CI
2023-10-12 21:14:48 +02:00
Stefan Hansson cf956551f9 linux-postmarketos-amlogic: add support for cottonwood boards (MR 4467)
This includes the "Alta" and "Solitude" boards, the latter of which I
also introduce a device package for in a later patch. It should be easy
to introduce support for the former, but I don't have the hardware to
test that on.

The two new patches have been merged and will be included in Linux 6.7
as I understand.
2023-10-12 21:14:43 +02:00
Luca Weiss 2d553c50f0 pmaports.cfg: set pmbootstrap_min_version=1.53.0 (MR 4472)
Using versions before 1.53.0 leads to various problems, from Alpine
v3.18 not appearing as supported, to some timezone file conflicts that
were fixed long ago. Bump the version to force users to use at least
that version.
2023-10-12 20:16:05 +02:00
Stefan Hansson 3ffe37e840 librecomputer-lafrite: fix firmware dependency name (MR 4471)
linux-firmware-amlogic doesn't exist. The "vdec" firmware actually
resides in linux-firmware-meson.

[ci:skip-build]: already built successfully in CI
2023-10-12 20:10:16 +02:00
Stefan Hansson 9afcde0854 librecomputer-lepotato: fix firmware dependency name (MR 4471)
linux-firmware-amlogic doesn't exist. The "vdec" firmware actually
resides in linux-firmware-meson.
2023-10-12 20:10:11 +02:00
Clayton Craft ca17321f5d cross/gcc-x86: new aport (MR 4469)
Required for cross compiling 32-bit EFI apps/bootloaders on x86_64

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-10-12 19:50:34 +02:00
Clayton Craft bb18956a2e cross/musl-x86: new aport (MR 4469) 2023-10-12 19:50:34 +02:00
Oliver Smith 5fb3d0a42b firmware-fairphone-fp4: remove a630_sqe.fw from adreno subpackage (MR 4463)
Due to symlinks from linux-firmware-ath10k apk is now pulling in
linux-firmware-qcom which already provides a630_sqe.fw.

Since this file is not device/vendor-specific we can really use the file
from linux-firmware and not provide our own. For the record,
a619_gmu.bin also shouldn't be device-specific but currently
linux-firmware doesn't provide that one.

Also just pulling linux-firmware-qcom for this tiny file is pretty space
inefficient but due to the symlink dependency mentioned above, just
removing this file for now from the firmware package removes the file
conflict reported by apk:

  ERROR: linux-firmware-qcom-20230919-r1: trying to overwrite lib/firmware/qcom/a630_sqe.fw owned by firmware-fairphone-fp4-adreno-20230215-r1.

[luca: update commit message to reflect dependency situation, update
packaging code a bit]
2023-10-12 17:50:35 +02:00
Clayton Craft 72e55aae91 Revert "cross/gcc-riscv64: upgrade to 13.1.1_git20230722-r3"
For some reason this isn't building, and it's blocking bpo + gitlab CI.
Let's revert it until someone had time to debug. In the meantime the
"upstream compat" monitoring check will fail.

This reverts commit 7608d18533.

[ci:skip-vercheck]
2023-10-11 23:40:51 -07:00
Clayton Craft 7608d18533 cross/gcc-riscv64: upgrade to 13.1.1_git20230722-r3
The others were upgraded in 5e42745cd5
2023-10-11 12:58:06 -07:00
Stefan Hansson ebbbeca49c librecomputer-lafrite: remove maintainer line from deviceinfo (MR 4466)
The maintainer line should only be present in APKBUILDs, not other files
in the package.

[ci:skip-build] already built successfully in CI
2023-10-10 22:16:25 -07:00
Stefan Hansson 63af482d5e librecomputer-lepotato: remove maintainer line from deviceinfo (MR 4466)
The maintainer line should only be present in APKBUILDs, not other files
in the package.
2023-10-10 22:16:21 -07:00
Luca Weiss 5e42745cd5 cross/gcc-*: upgrade to 13.1.1_git20230722-r3 (MR 4465)
[ci:skip-build]: Already built successfully in CI
2023-10-10 13:31:33 +02:00
Affe Null 82b139a63c main/postmarketos-ui-bananui: new aport (MR 4457)
[ci:skip-build]: already built successfully in CI
2023-10-09 18:19:59 +02:00
Richard Acayan 49a5704dd4 google-bonito: new device (MR 4318)
I cannot maintain this device because I do not have it, but it is
similar to the Pixel 3a, which I can maintain.

Move the kernel into a subpackage in case support for a different panel
(the Tianma NT37700F panel) is added.
[ci:skip-build]: already built successfully in CI
2023-10-09 08:21:30 +02:00
Luca Weiss e971cdcb15 device-fairphone-fp5: Various improvements and feature bringup (MR 4456)
* Add kernel modules for display to modules-initfs
* Add GPU firmware and dependency for Vulkan
* Add qbootctl to mark the current A/B slot as successful
* Add bootmac to set the Bluetooth MAC address on boot

[ci:skip-build]: already built successfully in CI
2023-10-09 07:01:03 +02:00
Luca Weiss 4bb6542fd8 firmware-fairphone-fp5: add adreno firmware subpackage (MR 4456)
Package the zap shader firmware needed on this device.
2023-10-09 07:01:03 +02:00
Luca Weiss b918f1c5f5 linux-postmarketos-qcom-sc7280: upgrade to 6.6.0_rc4_git20231005 (MR 4456)
Kconfig changes:
* Enable DRM_PANEL_RAYDIUM_RM692E5
* Enable TYPEC_MUX_FSA4480
* Enable TYPEC_MUX_PTN36502
* Disable DRM_SIMPLEDRM
2023-10-09 07:00:58 +02:00
Oliver Smith e179ba59ea main/postmarketos-ondev: upgrade to 0.8.2 (MR 4455)
[ci:skip-build]: already built successfully in CI
2023-10-09 06:42:04 +02:00
Johannes Marbach 1329e4b634 main/unl0kr: upgrade to 2.0.2 (MR 4458)
[ci:skip-build]: already built successfully in CI
2023-10-09 06:25:47 +02:00
Pablo Correa Gómez 655c94f945 main/postmarketos-ui-plasma-bigscreen: follow breeze-icons rename (MR 4462)
Ref https://git.alpinelinux.org/aports/commit/?id=ae2de9e4574314489950d8cfb7197e0157fa112b
2023-10-08 18:16:47 +02:00
Clayton Craft aa2886ef28 cross/busybox-static-*: upgrade to 1.36.1-r12 2023-10-07 22:54:02 -07:00
Clayton Craft 6bee3d14ef cross/musl-*: upgrade to 1.2.4_git20230717-r3 2023-10-07 22:52:46 -07:00
Teemu Ikonen f0c58cea69 temp/gtk4.0: upgrade to 4.12.3 (MR 4449)
[ci:skip-build]: already built successfully in CI
2023-10-05 18:12:06 +02:00
Barnabás Czémán fa6150b289 qcom-msm8953: move devices to community (MR 4381)
[ci:ignore-count]
[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI
2023-10-05 18:06:37 +02:00
Luca Weiss 444a766f3a linux-postmarketos-qcom-msm8974: upgrade to 6.4.0 (MR 4200)
Kconfig changes:
* Enable PWM_CLK and INPUT_PWM_VIBRA instead of INPUT_CLK_VIBRATOR for
  Nexus 5
* Disable unused clock drivers
* Disable MEDIA_SUPPORT - currently unused
* Enable LEDS_TRIGGER_PATTERN for feedbackd
* Disable all of NET_VENDOR_* (which is Ethernet devices)

[ci:skip-build]: already built successfully in CI
2023-10-05 08:43:21 +02:00
Adam Thiede 1c3fbc17c6 oneplus-enchilada: add unl0kr config (MR 4447)
[ci:skip-build]: already built successfully in CI
2023-10-05 08:35:22 +02:00
Barnabás Czémán 5fc07d61ed xiaomi-tissot: switch to msm-firmware-loader and clean ups (MR 4434)
It utilize msm-firmware-loader for minimize device specific firmware package.
It add necessary modules to initramfs for fix fde.
modem package has been removed in favor of soc-qcom-msm8953-modem.
30-gpu-firmware-files has been removed.

[ci:skip-build]: already built successfully in CI
2023-10-05 08:29:28 +02:00
Barnabás Czémán b286211419 xiaomi-daisy: switch to msm-firmware-loader and clean ups (MR 4434)
It utilize msm-firmware-loader for minimize device specific firmware package.
It add necessary modules to initramfs for fix fde.
modem package has been removed in favor of soc-qcom-msm8953-modem.
30-gpu-firmware-files has been removed.
2023-10-05 08:29:28 +02:00
Stefan Hansson 94f2b68c80 main/msm-firmware-loader: upgrade to 1.3.0 (MR 4448)
[ci:skip-build]: already built successfully in CI
2023-10-04 20:49:05 +02:00
Raymond Hackley c6591103a2 samsung-a6plte: depend on msm-firmware-loader (MR 4437) 2023-10-04 10:38:38 +02:00
Stefan Hansson 4cfd9d6d9e linux-purism-librem5: upgrade to 6.5.4pureos1 (MR 4427)
[ci:skip-build]: already built successfully in CI
2023-10-04 08:50:58 +02:00
Barnabás Czémán 114420bb05 xiaomi-onclite: depend on soc-qcom-msm8953 modem and initramfs subpackages (MR 4445)
Depend on soc-qcom-msm8953-modem and initramfs.
Add necessary modules to initfs for fix touchscreen under fde.

[ci:skip-build]: already built successfully in CI
2023-10-04 08:13:52 +02:00
Johannes Marbach 828aac0e8b postmarketos-fde-unlocker: make unl0kr the default (MR 3279)
Fixes: #1411
[ci:skip-build]: already built successfully in CI
2023-10-03 21:07:35 +02:00
Oliver Smith 52fbd2f26e cross/busybox-static-*: upgrade to 1.36.1-r9 2023-10-03 20:38:02 +02:00
Alexander Martinz c5aeb452ae firmware-shift-sdm845: upgrade to 20230815 (MR 4341)
This release includes security fixes.

Changes:
  - https://gitlab.com/sdm845-mainline/firmware-shift-sdm845/-/commit/161e7f1ed32efe25dd8f4f4ce5a6cb981968b21c
  - https://gitlab.com/sdm845-mainline/firmware-shift-sdm845/-/commit/ba16d92aa0e0eaa697eeb937f3349de7089c5f0a

Change-Id: Ibf3c6871cbe044f23091ccfe8a03869d38fb3851
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>

[ci:skip-build]: Already built successfully in CI
2023-10-03 17:06:55 +02:00
Barnabás Czémán c64ac9bba0 xiaomi-ysl: clean up device packages (MR 4433)
It add necessary modules to intramfs for fix fde.
modem package has been removed in favor of soc-qcom-msm8953-modem.
30-gpu-firmware-files has been removed in favor of
soc-qcom-msm8953-initramfs.

[ci:skip-build] already built successfully in CI
2023-10-02 23:02:13 -07:00
Barnabás Czémán 00b7fe46b3 xiaomi-markw: switch to msm-firmware-loader and clean ups (MR 4433)
It utilize msm-firmware-loader for minimize device specific firmware package.
It add necessary modules to intramfs for fix fde.
modem package has been removed in favor of soc-qcom-msm8953-modem.
30-gpu-firmware-files has been removed.
2023-10-02 23:02:12 -07:00
Barnabás Czémán e184ed832c xiaomi-vince: switch to msm-firmware-loader and clean ups (MR 4433)
It utilize msm-firmware-loader for minimize device specific firmware package.
It add necessary modules to initramfs for fix fde.
modem package has been removed in favor of soc-qcom-msm8953-modem.
pointercal, fb.modes, 30-gpu-firmware-files has been removed.
2023-10-02 23:02:12 -07:00
Barnabás Czémán 2b11f2b778 xiaomi-mido: switch to msm-firmware-loader and clean ups (MR 4433)
Utilize msm-firmware-loader for minimize device specific
firmware package.
Add necessary modules to initramfs for fix fde.
Use soc-qcom-msm8953-modem and soc-qcom-msm8953-initramfs as a dependency.
2023-10-02 23:02:12 -07:00
Raymond Hackley c9163b1581 samsung-j5: solve potential filename conflict (MR 4438)
ERROR: the source file 'WCNSS_qcom_wlan_nv.bin' has different checksums in the following files:
- device/testing/firmware-samsung-j5/APKBUILD: 742ee81d034116cf1ecdfae5f75495e6b10ce5be0c2a999b6c8a2c161b1da8b48d6810d5405edb8c829b96fdf75e45a565c74963c76d1bca4aaedf28572fa91f
...

Fix this by setting a different target filename in the package you modified:
https://wiki.alpinelinux.org/wiki/APKBUILD_Reference#source

[ci:skip-build]: already built successfully in CI
2023-10-02 23:37:48 +02:00
Barnabás Czémán d56b851aea soc-qcom-msm8953: add initramfs package (MR 4432)
It add firmwares to initramfs.

[ci:skip-build]: already built successfully in CI
2023-10-02 23:30:40 +02:00
Barnabás Czémán 7d86ad96a5 soc-qcom-msm8953: add modem package (MR 4432)
Common modem package is introduced with q6voiced configuration.
2023-10-02 23:30:22 +02:00
Richard Acayan d3fe50c3d1 google-sargo: nonfree-firmware: depend on ath10k firmware (MR 4442)
The WiFi firmware seems to not be present on a fresh installation
anymore. Add it as a dependency so it gets installed automatically.
2023-10-02 12:13:44 +02:00
Joseph 6b537d26d5 realme-rmx1851: new device (MR 4431)
[ci:skip-build] already built successfully in CI
2023-10-01 22:23:08 -07:00
Duje Mihanović ae3832e43e device-samsung-coreprimevelte: enable DRM for mainline (MR 4440)
[ci:skip-build] already built successfully in CI
2023-10-01 22:18:18 -07:00
Duje Mihanović 7a80409e7e linux-samsung-coreprimevelte-mainline: upgrade to 6.6_rc3 (MR 4440)
Also enables touchscreen with downstream PMIC driver.
2023-10-01 22:18:18 -07:00
Johannes Marbach 953e74646c main/unl0kr: upgrade to 2.0.1 (MR 4439)
[ci:skip-build] already built successfully in CI
2023-10-01 21:53:34 -07:00
Richard Acayan c720400e47 google-sargo: add q6voiced config (MR 4412)
[ci:skip-build]: Already built successfully in CI
2023-09-30 14:44:33 +02:00
Richard Acayan 2470b6b18f google-sargo: allow flashing to vbmeta (MR 4412)
Flashing to vbmeta may be necessary for devices running Android 9
bootloaders.
2023-09-30 14:44:32 +02:00
Richard Acayan 9234b17dc9 testing/alsa-ucm-conf-qcom-sdm670: upgrade to 1.2.9_git20230920 (MR 4412) 2023-09-30 14:44:30 +02:00
Richard Acayan 83213f3ebc linux-postmarketos-qcom-sdm670: upgrade to 6.5.4 (MR 4412)
Now that the modem firmware is installed in the referenced location, the
firmware patch is not needed, so remove that as well.

Also backport a fix for the Pixel 3a XL so a kernel upgrade isn't needed
for that.
2023-09-30 14:44:29 +02:00
Richard Acayan 6bfd71e1f8 firmware-google-sargo: add modem firmware (MR 4412) 2023-09-30 14:44:28 +02:00
Joel Selvaraj 39768d9b9d community/device-xiaomi-beryllium: add new touchscreen module to initramfs (MR 4429)
Fixes broken fde as reported in https://gitlab.com/postmarketOS/pmaports/-/issues/2314.
Both Tianma and EBBG variant use the upstream touchscreen drivers in 6.5.
Add them to the initramfs as it was missed when upgrading to 6.5 kernel release.

[ci:skip-build] already built successfully in CI
2023-09-29 19:00:41 -07:00
Luca Weiss 8be5f081d2 device-htc-memul: add lk2nd dependency (MR 4424)
Add the lk2nd dependency so that pmbootstrap flasher flash_lk2nd works.

[ci:skip-build] already built successfully in CI
2023-09-29 13:55:37 -07:00
Luca Weiss 27be25f327 main/lk2nd: add subpackage for quirky htc-memul (MR 4244)
htc-memul needs a special build with a different scratch address set. So
generalize the build function so we can make multiple builds with
parameters without duplicating too much code.
2023-09-29 13:55:32 -07:00
FuchtelJockel 83f63d1c1b linux-postmarketos-qcom-msm8994: upgrade to 6.6-rc3 (MR 4344)
is upstream:
- Fix-cont_splash_mem-mapping
- removed-clash-with-smem_reg

[ci:skip-build] already built successfully in CI
2023-09-29 10:36:57 -07:00
FuchtelJockel 2d43699f91 device-lg-h815: add support to build mainline (MR 4344) 2023-09-29 10:36:57 -07:00
Luca Weiss 025cb223f8 main/lk2nd: upgrade to 0.15.0 (MR 4423)
[ci:skip-build] already built successfully in CI
2023-09-29 10:32:37 -07:00
Oliver Smith 3faffb7b93 cross/grub-efi-x86: upgrade to 2.06-r14 2023-09-29 09:24:02 +02:00
oatm22 438471fe4a samsung-gtowifi: new device (MR 4414)
[ci:skip-build]: Already built successfully in CI
2023-09-28 12:47:34 +02:00
Ben Westover 0abbfcd853 lg-mmh4x: Add mtkclient flashing method and specify that device is carrier-specific (MR 4421)
[ci:skip-build]: already built successfully in CI
2023-09-27 08:05:34 +02:00
Joel Selvaraj d2fa55c56d community/linux-postmarketos-qcom-sdm845: upgrade to 6.5.5 (MR 4416)
[ci:skip-build]: already built successfully in CI
2023-09-27 07:58:30 +02:00
Dylan Van Assche d1ae6f9d8c firmware-xiaomi-beryllium: use upstream board-2.bin (MR 4416)
Provide common board-2.bin file, extended from linux-firmware.
This file will be temporarily provided and dropped once all devices
are added to upstream linux-firmware's board-2.bin file.
2023-09-27 07:58:30 +02:00
Dylan Van Assche e2d8693034 firmware-shift-sdm845: use upstream board-2.bin (MR 4416)
Provide common board-2.bin file, extended from linux-firmware.
This file will be temporarily provided and dropped once all devices
are added to upstream linux-firmware's board-2.bin file.
2023-09-27 07:58:30 +02:00
Dylan Van Assche cac3c09be3 firmware-oneplus-sdm845: use upstream board-2.bin (MR 4416)
Provide common board-2.bin file, extended from linux-firmware.
This file will be temporarily provided and dropped once all devices
are added to upstream linux-firmware's board-2.bin file.
2023-09-27 07:58:29 +02:00
Joel Selvaraj d00425c263 main/bootmac: update to 0.2.1 and add bluez-btmgmt dependency (MR 4416)
The bootmac script uses the btmgmt command provided by "bluez-btmgmt"
package. So add it as a dependency.

The 0.2.1 update contains fix for https://gitlab.com/postmarketOS/bootmac/-/issues/3
2023-09-27 07:58:21 +02:00
Karl Chan 9e9d418786 linux-postmarketos-amlogic: upgrade to 6.5.5 (MR 4418)
[ci:skip-build]: Already built successfully in CI
2023-09-26 21:49:17 +02:00
Oliver Smith d757a36882 main/postmarketos-mkinitfs: fix trigger script (MR 4422)
Adjust the trigger script to only check for the new deviceinfo path. The
purpose of this check is to make sure that a full device package is
installed, and only in that case run mkinitfs. Otherwise, it will fail
because e.g. no kernels may be installed.

With recent changes, /etc/deviceinfo is a part of devicepkg-utils and
only /usr/share/deviceinfo/deviceinfo really indicates that a device
package is installed.

Remove the "exit 0" at the end while at it, it did not do anything since
the script runs with "/bin/sh -e". Add a comment to make this clear.

[ci:skip-build]: already built successfully in CI
2023-09-26 08:31:00 +02:00
Pablo Correa Gómez ea93a6d07f device/*: rebuild all devices to relocate deviceinfo (MR 4283)
[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2023-09-25 09:21:03 +02:00
Pablo Correa Gómez 870d11322d device-purism-librem5dev: fix maintainer line (MR 4283) 2023-09-25 09:20:33 +02:00
Pablo Correa Gómez 7b2208d292 main/postmarketos-mkinitfs: add trigger on deviceinfo directory (MR 4283)
Fixes #2228

In addition, depend on the first boot-deploy that implemented support
for deviceinfo in /usr/share
2023-09-25 09:20:33 +02:00
Pablo Correa Gómez 34e2a3ddad main/postmarketos-initramfs: add new deviceinfo path to initramfs (MR 4283)
Reorder alphabetically while in the process, and depend on the first
mkinitfs and devicepkg-utils that implemented deviceinfo in /usr/share
2023-09-25 09:20:32 +02:00
Pablo Correa Gómez c5d147be99 main/postmarketos-base: adapt to new deviceinfo path (MR 4283)
This greatly simplifies the trigger, since now we can monitor a
directory.

In addition, depend on the latest devicepkg-utils
2023-09-25 09:20:32 +02:00
Pablo Correa Gómez 0b8814d156 main/devicepkg-utils: install default /etc/deviceinfo (MR 4283)
Previously, every device package would package its own /etc/deviceinfo
file, generating a conflict with every other device package. In a
previous commit we have moved the path to /usr/share/deviceinfo, but
we still want to install a sample "/etc/deviceinfo" file to guide
users on how to use the new features. This has the additional benefit
that there is only one of those files in the whole distro. However,
there is no dependency ordering between the device packages and
devicepkg-utils, so there's no warranty of which will be installed
first. Therefore, to avoid a conflict on most likely every user
upgrade, we use postmarketos-mvcfg.
2023-09-25 09:20:32 +02:00
Pablo Correa Gómez 531dc8123d main/devicepkg-utils: adapt to new deviceinfo path (MR 4283) 2023-09-25 09:20:32 +02:00
Pablo Correa Gómez 1d748a93dd main/devicepkg-dev: install deviceinfo under /usr/share/deviceinfo (MR 4283)
In the process, add some tests and do some renaming on the existing ones, and
remove the workaround for #2228, will be solved appropriately in a follow-up
commit.

Fixes #1836
2023-09-25 09:20:32 +02:00
Teemu Ikonen fe40948947 temp/gtk4.0: upgrade to 4.12.2 (MR 4415)
[ci:skip-build] already built successfully in CI
2023-09-22 15:15:32 -07:00
Oliver Smith bfe9fe8ad6 cross/busybox-static-*: upgrade to 1.36.1-r8 2023-09-22 09:17:51 +02:00
Jerin Philip 58e41997b5 xiaomi-cereus: new device (Xiaomi Redmi 6) (MR 4408)
[ci:skip-build]: already built successfully in CI
2023-09-22 09:12:30 +02:00
Luca Weiss dfc672e76e device-fairphone-fp5: use header_version=2 for new kernel (MR 4409)
Without qcom,board-id and qcom,msm-id we need to use header version 2,
otherwise the device doesn't boot.

[ci:skip-build]: Already built successfully in CI
2023-09-21 17:44:10 +02:00
Luca Weiss a6e5039865 linux-postmarketos-qcom-sc7280: upgrade to 6.5.0_git20230920 (MR 4409)
Minor update for how the Fairphone 5 is booting which aligns with the
version that went upstream.

https://github.com/z3ntu/linux/commit/6aa08e1508a0437c4ecb3a3837f611b699950836
2023-09-21 17:44:03 +02:00
Raymond Hackley 0b5f362f15 samsung-{cprime,gprime,heatqlte,serranove}: add rt5033 modules to initfs (MR 4402)
Add rt5033 modules to initfs for the following devices, to unlock FDE with
USB OTG keyboards:

- Samsung Galaxy Ace 4
- Samsung Galaxy Core Prime
- Samsung Galaxy Grand Prime
- Samsung Galaxy S4 Mini Value Edition

[ci:ignore-count]
[ci:skip-build]: already built successfully in CI
2023-09-19 04:19:39 +00:00
Raymond Hackley a2d1c2e97e samsung-{a2015,e2015}: add rt5033 modules to initfs (MR 4402)
Add rt5033 modules to initfs for the following devices, to unlock FDE with
USB OTG keyboards:

- Samsung Galaxy A3/A5/A7
- Samsung Galaxy E7
- Samsung Galaxy Grand Max
2023-09-19 04:19:39 +00:00
Oliver Smith 3f9b2bb878 main/mobile-config-firefox: upgrade to 4.2.0 (MR 4403)
[ci:skip-build]: already built successfully in CI
2023-09-18 21:19:36 +02:00
Julian Winkler ff71fcb59a temp/kexec-tools: drop (MR 4405)
The x86 devicetree patch is included in latest upstream version, which
is already packaged in alpine.

[ci:skip-build]: already built successfully in CI
2023-09-18 11:32:12 +02:00
Luca Weiss b1c5a66bf7 device-htc-memul: add mainline kernel configuration (MR 4369)
[ci:skip-build]: already built successfully in CI
2023-09-16 12:27:31 +02:00
Anton Bambura db85f5de87 linux-postmarketos-rockchip: enable CONFIG_TCG_TIS_SPI_CR50 (MR 4395)
https://gitlab.com/postmarketOS/pmaports/-/issues/2261#note_1507443549

[ci:skip-build]
2023-09-15 09:20:42 +02:00
Anton Bambura 92bb682a94 linux-postmarketos-qcom-sc7180: enable CONFIG_TCG_TIS_SPI_CR50 (MR 4395)
https://gitlab.com/postmarketOS/pmaports/-/issues/2261#note_1507443549
2023-09-15 09:20:42 +02:00
Anton Bambura b3964fc1da linux-postmarketos-mediatek-mt8183: enable CONFIG_TCG_TIS_SPI_CR50 (MR 4395)
https://gitlab.com/postmarketOS/pmaports/-/issues/2261#note_1507443549
2023-09-15 09:20:42 +02:00
Anton Bambura cc697511e1 linux-postmarketos-mediatek-mt8173: enable CONFIG_TCG_TIS_SPI_CR50 (MR 4395)
https://gitlab.com/postmarketOS/pmaports/-/issues/2261#note_1507443549
2023-09-15 09:20:36 +02:00
Oliver Smith d947491fb7 device-nokia-n900: fix install_if variables (MR 4397) 2023-09-15 09:05:36 +02:00
Sicelo A. Mhlongo e12d937c6b device-nokia-n900: i3wm: use upower for battery status (MR 4397) 2023-09-15 09:05:25 +02:00
Sicelo A. Mhlongo 170189393b device-nokia-n900: add upower support and config (MR 4397)
- Add support for upower, in order to enable automatic shutdown when battery is
  critically low
- Set UPower PercentageLow threshold to 10% so it triggers even when fuel gauge
  is not calibrated (see estimations provided in 4b54fc7f83:
  "linux-postmarketos-omap: add N900 battery capacity estimation")
2023-09-15 09:05:25 +02:00
Oliver Smith 6f0dfe9c96 cross/busybox-static: upgrade to 1.36.1-r7 2023-09-15 08:52:05 +02:00
Stefan Hansson be7b845d17 linux-purism-librem5: upgrade to 6.4.14 (MR 4384)
[ci:skip-build]: already built successfully in CI
2023-09-14 20:48:22 +02:00
methanal e4e5108c11 samsung-on7xelte: enable modem using samsungipcd (MR 4394)
[ci:skip-build]: already built successfully in CI
2023-09-14 20:45:07 +02:00
methanal 4f687403e4 linux-samsung-on7xelte: change downstream kernel to a recent release (MR 4394) 2023-09-14 20:45:00 +02:00
Markus Göllnitz fef1a94b57 main/postmarketos-config-nftables: allow Wi-Fi Display traffic (MR 4391)
The port 7236 for TCP is registered with IANA by the
Wi-Fi Alliance for use for the Wi-Fi Display Protocol,
a.k.a. Miracast.

To establish the connection, the local DHCP server has to
be allowed to respond to requests on peer-to-peer Wi-Fi
networks.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
[ci:skip-build]: already built successfully in CI
2023-09-14 20:40:33 +02:00
Nikita Travkin 9a86da0583 samsung-gt5*: Update the panel module name (MR 4389)
The display panel for these devices was upstreamed and now uses a
different name. Update it so the display is loaded properly.

[ci:skip-build]: already built successfully in CI
2023-09-12 09:12:52 +02:00
Minecrell b75fbc431f soc-qcom-msm8916: update UCM configurations (MR 4389)
- samsung-a2015: Set speaker channels to mono
- samsung-grandmax: Disable broken/missing secondary microphone
2023-09-12 09:12:52 +02:00
Minecrell b6f5f2c5b3 linux-postmarketos-qcom-msm8916: upgrade to 6.5.2 (MR 4389)
- Update to Linux v6.5.2
- Improve charging speed/behavior for SMB1360 battery driver
  (alcatel-idol347, bq-paella, xiaomi-wt88047, alcatel-idol3,
   bq-piccolo)
- Add RT5033 charger driver and OTG support
  (samsung-serranove, samsung-a3, samsung-a5, samsung-e5,
   samsung-e7, samsung-grandmax, samsung-a7, samsung-heatqlte,
   samsung-cprime, samsung-gprime/fortuna)
- Major cleanup of all device trees in preparation of upstreaming
- Potential display fixes for some UIs (e.g. XFCE)

Device changes:
  - acer-a1-724: Add display
  - bq-paella:
    - Add flash LED
    - Fix multi-touch for touch keys
  - samsung-grandmax: Disable broken secondary microphone
  - ufi (USB modem dongles): Allow switching to USB host mode

New devices:
  - acer-t01 (MSM8909)
    - eMMC, SD card, USB, Buttons, WiFi/BT, Vibrator
    - No display yet
    - Brightness control, LEDs
    - Touchscreen
    - Sensors (Accelerometer)
    - Battery/charging
    - Flash LED
2023-09-12 09:12:48 +02:00
Anton Bambura 56b3d147d0 firmware-samsung-klimt: update MFC firmware dependency (MR 4393)
[ci:skip-build]: already built successfully in CI
2023-09-12 09:01:51 +02:00
Anton Bambura 730292a79b firmware-samsung-chagall: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 39aaadf0dc device-odroid-hc2: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 480bf72054 device-google-spring: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 930f7d8904 device-google-peach-pi: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura fe5b104891 firmware-odroid-xu4: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 1352ee8d6a device-google-snow: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 6e11fc2d0c device-google-peach-pit: update MFC firmware dependency (MR 4393) 2023-09-12 09:01:51 +02:00
Anton Bambura 31e5d9a344 samsung-t03g: depend on MFC firmware (MR 4284)
[ci:skip-build]: already built successfully in CI
2023-09-11 20:35:58 +02:00
Anton Bambura 0eb391d23f samsung-p4note: depend on MFC firmware (MR 4284) 2023-09-11 20:35:37 +02:00
Anton Bambura 1bd1765f23 samsung-i9100: depend on MFC firmware (MR 4284) 2023-09-11 20:35:37 +02:00
Anton Bambura 779959dba7 samsung-m3: depend on MFC firmware (MR 4284) 2023-09-11 20:35:37 +02:00
Anton Bambura 001df983d2 samsung-m0: depend on MFC firmware (MR 4284) 2023-09-11 20:35:36 +02:00
Anton Bambura a58d134174 samsung-t0lte: depend on MFC firmware (MR 4284) 2023-09-11 20:35:36 +02:00
Anton Bambura e49167d029 linux-postmarketos-exynos4: enable video decoder (MR 4284) 2023-09-11 20:35:36 +02:00
Sicelo A. Mhlongo 4b54fc7f83 linux-postmarketos-omap: add N900 battery capacity estimation (MR 4388)
Provide a rough battery capacity estimation for the bq27200 fuel gauge inside
Nokia N900. This is useful when the fuel gauge is out of calibration and a
learning cycle cannot take place due to broken USB/charging port on the device.

[ci:skip-build]: Already built successfully in CI
2023-09-11 19:38:37 +02:00
Minecrell c4f8827b78 device-motorola-surnia: add missing panel module to initfs (MR 4390)
motorola-surnia also supports the inx panel as of Linux 6.3, add it to
the initfs so the display can be initialized early.

There is no tianma panel for surnia (only for harpia) so drop that.
It's not clear why it was there in the first place.

[ci:skip-build]: Already built successfully in CI
2023-09-11 19:31:58 +02:00
Minecrell 2137c0b12b device-bq-paella: add missing panel module to initfs (MR 4390)
bq-paella also supports the yushun-nt35521s panel as of Linux 6.3,
add it to the initfs so the display can be initialized early.
2023-09-11 19:31:57 +02:00
Luca Weiss c37967a0ec device-fairphone-fp3: depend on soc-qcom-msm8953 (MR 4376)
With the udev rule in that package feedbackd can start using the
vibration motor for haptics.

Also we can remove the direct swclock-offset dependency since the soc
package depends on that also.
[ci:skip-build]: already built successfully in CI
2023-09-11 17:04:54 +02:00
Barnabás Czémán 6396dd1188 soc-qcom-msm8953: upgrade ucm and add haptic udev rules (MR 4376) 2023-09-11 17:04:54 +02:00
Barnabás Czémán 0ab0b555d1 xiaomi-markw: add soc-qcom-msm8953 as a dependency (MR 4376) 2023-09-11 17:04:54 +02:00
Niko 39052ac078 temp/gnome-shell-mobile: upgrade to 45_git20230908 (MR 4371)
[ci:skip-build]: already built successfully in CI
2023-09-11 16:58:22 +02:00
Luca Weiss 0348958e8f device-lg-lenok: add panel and gpu (MR 4368)
Add it now that the kernel has that support.

[ci:skip-build]: Already built successfully in CI
2023-09-11 15:46:35 +02:00
Luca Weiss fd80cd21c5 linux-postmarketos-qcom-msm8226: upgrade to 6.5.0 (MR 4368) 2023-09-11 15:46:30 +02:00
Clayton Craft 3110ade74f device-shift-axolotl: add edt-ft5x06 driver to initramfs (MR 4374)
It seems like the driver name has changed *again* in 6.5.x kernels, so
let's just have both drivers in the initramfs to help with migrating
between newer/older kernels and any future flip/flopping of drivers.

This is a bit of a hack... it works because missing modules are not
fatal for mkinitfs. The reason why they aren't fatal is that whether or
not it's builtin is somewhat arbitrary... there's an open issue[1] for
mkinitfs to make this smarter, i.e. throw an error if the .ko doesn't
exist AND it's not builtin for the *installed* kernel.

When that's implemented then this patch would likely result in mkinitfs
failing on this device because one of those drivers may not be installed
or builtin. I don't have time to implement this in mkinitfs, so adding
this crude workaround of just including both seemed like a reasonable
thing to do since the 6.5 kernel will break fde on this device (this has
happened before).
[ci:skip-build]: already built successfully in CI
2023-09-08 17:40:27 -07:00
Stefan Hansson 2ab59a220f main/postmarketos-ui-phosh: Rebuild following url and pkgdesc update (MR 4385)
`url` and `pkgdesc` do affect the resulting package and as such
`pkgver` should be incremented, but it wasn't.

Fixes 0dfb1219f8
[ci:skip-build]: already built successfully in CI
2023-09-08 17:33:17 +02:00
Caleb Connolly 16bf9c9700 main/postmarketos-mkinitfs-hook-debug-shell: fixes (MR 4204)
Some change (I think some tools switching from the coreutils to busybox
versions?) subtly broke debug-shell behaviour. Try to fix it.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
[ci:skip-build]: already built successfully in CI
2023-09-08 17:15:05 +02:00
Clayton Craft 9198a2ad6e main/postmarketos-initramfs: upgrade to 2.0.0 (MR 4204)
Updates this package's checksums for files modified in this patch
series, and bumps the pkgver
2023-09-08 17:14:59 +02:00
Clayton Craft 20e4eb495d main/postmarketos-initramfs: hide cryptsetup not found error (MR 4204)
Hides this error when FDE is *not* enabled, and ultimately skips the
block of logic for detecting the luks partition:
        /init: line 437: cryptsetup: not found

This error has confused some users in the past, who were reporting
issues with the initramfs.

There's probably a minor speedup on non-FDE systems as well from
bailing early.
2023-09-07 20:33:56 +01:00
Clayton Craft cfed09ca36 main/postmarketos-initramfs: overwrite dest when extracting initramfs-extra (MR 4204)
If a file exists in the initramfs at runtime, cpio won't overwrite it
by default when extracting the initramfs-extra archive. This adds the -u
option to cpio, to overwrite any existing files in the destination.

This is meant to fix issues where the -extra archive has an app that is
meant to replace a busybox app, busybox --install creates it in the
initramfs and gzip will skip it since it's newer than what is in the
archive.
2023-09-07 20:33:56 +01:00
Caleb Connolly 9fb29079cd main/postmarketos-initramfs: get to splash faster (MR 4204)
With full-fat mdev supporting by-partlabel lookups, there is a small
delay during startup. As mdev and dynamic partitions aren't actually
needed for the framebuffer device, move show_splash earlier.

Furthermore, slightly rework setup_framebuffer to not dump the verbose
message about waiting for the framebuffer unless the framebuffer isn't
found.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-09-07 20:33:56 +01:00
Clayton Craft 97727c59cb main/postmarketos-initramfs: use only one method to resize the root partition (MR 4204)
This removes the possibility that multiple resize root partition methods
could be invoked. I'm not sure how likely this is in practice, but it
seems like we should avoid the possiblity altogether.

This also adds some more helpful printing to stdout when the partition
resize is skipped / not done.
2023-09-07 20:33:56 +01:00
Caleb Connolly 6f44124c1b main/postmarketos-initramfs: fixup device-mapper paths (MR 4204)
findfs might produce a block device path like /dev/dm-3, these can
change across boots and devices. Make things more readable and
consistent by mapping from the /dev/dm-* path to the equivalent
/dev/mapper/xyz path. Combined with invoking kpartx from a
/dev/disk/by-partlabel/abc symlink, this results in the final block
device having a name like /dev/mapper/userdata2 on an Android device.

Whilst this is just nicer to work with, this will be especially useful for
the upcoming ondev2 postmarketOS installer to make device-specific
configuration and detection easier.
2023-09-07 20:33:56 +01:00
Caleb ConnollyandClayton Craft 89fba12fbb main/postmarketos-initramfs: optimise find_*_partition (MR 4204)
Save the root/boot partition paths once found, and optimise a few loops.

Additionally, fall-back to other search methods when the pmos_boot or
pmos_uuid_boot cmdline args are set but fail.

Co-authored-by: Clayton Craft <clayton@craftyguy.net>
2023-09-07 20:33:55 +01:00
Caleb Connolly e0fcfb74e2 main/postmarketos-initramfs: use mdev properly (MR 4204)
Drop in mdev.conf and the /lib/mdev/persistent-storage script, these
cause /dev/disk/by-* to be populated in the ramdisk, making it
possible to do look up partition by-label and by-partlabel for free,
compared to findfs which can take some time.

As a first optimisation based on this, check for some partitions using
these paths and prioritise them when looking for subpartitions. Drop the
first find_boot_partition call as it doesn't really save time over the
call in the while loop.

The mdev config also handles setting up /dev/null, /dev/random, etc, so
these don't have to be done manually.
2023-09-07 20:33:55 +01:00
Clayton Craft 7c79667fe0 main/postmarketos-initramfs: move init.sh to initramfs-specific dir (MR 4204)
These files aren't owned by mkinitfs, or used to configure mkinitfs, so
I think it makes sense that they belong in a dir specific to this
package instead of cluttering up mkinitfs's config dirs.
2023-09-07 20:33:55 +01:00
Caleb Connolly 73e05bf16d main/postmarketos-initramfs: silence pbsplash (MR 4204) 2023-09-07 20:33:55 +01:00
Luca Weiss 5f820deefc main/postmarketos-initramfs: switch_root with /dev (MR 3230) (MR 4204)
Mount /dev (and /run) in initramfs so util-linux switch_root can move
the mounts over to the new sysroot before changing root.
BusyBox switch_root doesn't even attempt to move anything so use
util-linux's switch_root for this.

Explicitly disable tests too...
2023-09-07 20:33:55 +01:00
Barnabás Czémán 146c6b0f1c xiaomi-onclite: new device (MR 4351)
[ci:skip-build]: already built successfully in CI
2023-09-07 09:47:09 +02:00
Clayton Craft 37610c57f7 device-tablet-{x86,x64}uefi: add support for intel hw video decoding (MR 4375)
This also adds a version constraint to the libva install_if
2023-09-06 11:23:14 -07:00
Oliver Smith 9e454209e5 main/mobile-config-firefox: upgrade to 4.1.0 (MR 4377)
[ci:skip-build] already built successfully in CI
2023-09-06 11:13:42 -07:00
M0Rf30 9b21113f2c linux-postmarketos-qcom-msm8953: upgrade to 6.4.7-r3 (MR 4378)
[ci:skip-build]: already built successfully in CI
2023-09-05 23:51:25 +02:00
Clayton Craft 88f6ce6502 main/postmarketos-mkinitfs: upgrade to 2.2.1 (MR 4348)
[ci:skip-build] already built successfully in CI
2023-09-05 11:19:13 -07:00
Teemu Ikonen f3bfe510fa temp/gtk4.0: upgrade to 4.12.1 (MR 4370)
Forcibly generate gdkversionmacros.h and gdk-visibility.h first to fix
the build.

[ci:skip-build]: already built successfully in CI
2023-09-05 19:44:47 +02:00
Guido Günther 0dfb1219f8 main/postmarketos-ui-phosh: Modernize description and URL (MR 4366)
While a lot of Phosh development still happens on and for the Librem 5
we (thankfully) have lots of users and contributors using other devices.
Update the description to reflect that.

Ideally we'd emphasize that this is GNOME technology based and uses
wlroots but let's not  make the description too long.

Instead of Purism's generic home page point the URL to phosh.mobi which
has some more details. An alternative URL would be
https://puri.sm/pureos/phosh/ but that points to a page that is a
currently a bit dated.

[ci:skip-vercheck]
[ci:skip-build] already built successfully in CI
2023-09-05 10:24:15 -07:00
Barnabás Czémán 5570420cc9 xiaomi-vince: remove ucm config from device package (MR 4372)
[ci:skip-build]: already built successfully in CI
2023-09-05 09:25:21 +02:00
Barnabás Czémán 7ee361123c soc-qcom-msm8953: upgrade ucm configs (MR 4372) 2023-09-05 09:25:16 +02:00
Mighty 2150879f9f linux-postmarketos-omap: upgrade to 6.5 (MR 4360)
[ci:skip-build]: already built successfully in CI
2023-09-05 09:18:54 +02:00
SDM845 CI fd62adfe0e linux-postmarketos-qcom-sdm845: Upgrade to sdm845-6.4.13 (MR 4362)
[ci:skip-build]: already built successfully in CI
2023-09-05 08:52:06 +02:00
Oliver Smith d9830c6304 cross/crossdirect: partially use sccache for rust (MR 4310)
Wrap rustc commands with sccache when building native build scripts.
More interesting will be using sscache for compiling for the target
architecture, but sccache currently refuses to cache with --sysroot.
This can be optimized further later on, get some initial support for
sccache in here first.

While at it, tweak the -vV logic to also support -V, start using semver
with this and add myself as maintainer of the package.

[ci:skip-build]: already built successfully in CI
2023-09-05 08:45:41 +02:00
Oliver Smith 63c85a7e3c main/hello-world-rust: several tweaks (MR 4310)
* Don't use "cargo install", as it leads to building a second time.
* Make the build very verbose, as this package is mainly used to debug
  and develop the crossdirect scripts for rust.
2023-09-05 08:45:16 +02:00
Bobby Hamblin c5571fc688 main/postmarketos-ui-framebufferphone: take over maintainership (MR 4365)
[ci:skip-build]: already built successfully in CI
2023-09-04 17:28:28 +02:00
Luca Weiss 3afd25f568 linux-postmarketos-qcom-msm8226: upgrade to 6.4.0 (MR 4357) 2023-09-03 19:00:29 +02:00
Ferass El Hafidi 6ff0fc82bb u-boot-librecomputer-lafrite: new aport (MR 4324)
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>

[ci:skip-build]: Already built successfully in CI
2023-09-03 15:29:45 +02:00
Ferass El Hafidi 0cad27f9aa device-librecomputer-lafrite: new aport (MR 4324)
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
2023-09-03 15:29:33 +02:00
Ferass El Hafidi e13a0a15c5 u-boot-librecomputer-lepotato: new aport (MR 4324)
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
2023-09-03 15:29:33 +02:00
Ferass El Hafidi 9751f8b039 device-librecomputer-lepotato: new aport (MR 4324)
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
2023-09-03 15:29:33 +02:00
Raymond Hackley 2cb492a5f4 main/postmarketos-ui-{lxqt,xfce4}: drop postmarketos-artwork-icons in $_pmb_recommends (MR 4364)
postmarketos-artwork-icons has already been required in
postmarketos-base-ui, which is required by both packages.

[ci:skip-vercheck]
2023-09-01 12:40:05 +02:00
Bart Ribbers 4de739338c main/postmarketos-ui-plasma-mobile: add plasma-welcome to _pmb_recommends (MR 4361)
A welcoming application. It can be extended with custom pages which
we'll do later for a pmOS specific page, but for now it at least tells
the user a bit about Plasma

[ci:skip-vercheck]
2023-08-31 09:42:26 +02:00
Sicelo A. Mhlongo 2e3cd005a4 device-nokia-n900: increase terminal and i3 font sizes (MR 4363)
[ci:skip-build]: already built successfully in CI
2023-08-30 22:55:51 +02:00
Luca Weiss 64e1496e73 fairphone-fp5: new device (MR 4359)
Add an initial port for the Fairphone 5 smartphone. This includes
firmware and close-to-mainline kernel package.

[ci:skip-build]: Already built successfully in CI
2023-08-30 14:36:17 +02:00
Caleb Connolly 5bc1505ed5 boot-deploy: upgrade to 0.10.2 (MR 4358)
Fix a bug where find_dtb() would fail if find encounters any errors,
even if it correctly found the dtb.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
2023-08-29 22:14:17 +01:00
Stefan Hansson a520b35993 lg-judyp: work around hang (MR 4353)
With IPA active, the device hangs shortly after booting into the rootfs
(the initramfs shell is fine as far as I can tell). Blacklisting it
works around this for now.

This is a regression, and did not happen when the device originally was
introduced.
[ci:skip-build]: already built successfully in CI
2023-08-28 22:53:29 +02:00
Stefan Hansson 7bfc8fad09 lg-judyln: work around hang (MR 4353)
With IPA active, the device hangs shortly after booting into the rootfs
(the initramfs shell is fine as far as I can tell). Blacklisting it
works around this for now.

This is a regression, and did not happen when the device originally was
introduced.
2023-08-28 22:53:25 +02:00
Dylan Van Assche 6002e51b70 postmarketos-base-ui: kill/restart unudhcpd unconditionally (MR 4354)
In some cases, the dispatcher script fails if unudhcpd is already running.
Forcefully killing unudhcpd resolves the issue.

Fixes #2267.

Tested-by: Sicelo A. Mhlongo <absicsz@gmail.com>
[ci:skip-build]: already built successfully in CI
2023-08-28 22:50:26 +02:00
Sicelo A. Mhlongo 1199feabbd temp/ofono: drop (MR 4356)
The ofono fork is no longer used and is outdated. Drop.
2023-08-28 16:52:41 +02:00
Jan-Michael Brummer b60b9624dc device-google-sargo: Add feedbackd rule (MR 4346)
Allow drv2624 to be used as vibra.
2023-08-28 16:26:15 +02:00
Barnabás Czémán e43c52dd58 main/lk2nd-msm8953: upgrade to 0.3.5 (MR 4352)
[ci:skip-build]: Already built successfully in CI
2023-08-28 16:22:13 +02:00
Luca Weiss eb7204df91 main/postmarketos-mkinitfs-hook-netboot: use custom IP address if available (MR 4350)
With the recent changes in commit 80fff9242, it's possible that the
client IP address is customized. Use the same code as in
init_functions.sh to get the this potentially customized IP address to
use for the nbd-client.

[ci:skip-build]: already built successfully in CI
2023-08-27 19:19:28 +02:00
Luca Weiss 8cbd19f79d main/postmarketos-mkinitfs-hook-debug-shell: fix launching telnet (MR 4350)
With the recent changes in commit 80fff9242, there's no longer an $IP
variable we can use. Use the same code as in init_functions.sh to get
the potentially customized IP address to use for telnet.
2023-08-27 19:19:28 +02:00
Jan-Michael Brummer 2fd687a0f2 alsa-ucm-conf-qcom-sdm670: upgrade to 1.2.9_git20230807 (MR 4345)
Add comment to speaker configuration to show name in OSD
2023-08-26 13:37:11 +02:00
Clayton Craft c720abf97c device-tablet-{x86,x64}uefi: install sound open firmware (MR 4349)
This is used by the audio devices in many Intel-based tablets.

[ci:skip-build] already built successfully in CI
2023-08-25 09:18:51 -07:00
Luca Weiss 7f17509724 Revert "main/postmarketos-ui-phosh: Disable on riscv64 (MR 4342)" (MR 4347)
The dependency xdg-desktop-portal-gnome has been reenabled in Alpine:
https://gitlab.alpinelinux.org/alpine/aports/-/commit/902360a1841b8de0586238dee9096920a20415fc

> The linking issue was caused by libudev-zero being pulled in as
> dependency instead of eudev. This has been fixed in the meantime.

This reverts commit a48d4dac62.

[ci:skip-vercheck]
[ci:skip-build]: already built successfully in CI
2023-08-25 17:33:32 +02:00
Stefan Hansson eca86adbf3 main/postmarketos-ui-gnome-mobile: Replace EoG with Loupe (MR 4342)
See previous commit for rationale.

[ci:skip-vercheck]: No need to increment pkgrel when only changing
_pmb_recommends.
[ci:skip-build]: already built successfully in CI
2023-08-24 09:52:16 +02:00
Stefan Hansson 5a07413b97 main/postmarketos-ui-phosh: Replace EoG with Loupe (MR 4342)
Loupe is the new image viewer for GNOME. It also works better on phones
than Eye of GNOME and does not require any gschema overrides to fit the
narrow screens of phones.
2023-08-24 09:52:16 +02:00
Stefan Hansson a48d4dac62 main/postmarketos-ui-phosh: Disable on riscv64 (MR 4342)
Unfortunately xdg-desktop-portal-gnome is not available on riscv64 any
more in Alpine.
2023-08-24 09:52:16 +02:00
bademux 80fff9242a main/postmarketos-initramfs: support custom IP addresses for USB net (MR 3349)
[ci:skip-build] already built successfully in CI
2023-08-23 13:06:15 -07:00
Adam Honse 037d44ada1 community/linux-postmarketos-qcom-sdm845: Enable CIFS in config (MR 4343)
[ci:skip-build]: Already built successfully in CI
2023-08-22 09:48:52 +02:00
Clayton Craft a8bf624bb4 ci/shellcheck: ignore SC3043 warnings about use of 'local' (MR 4340)
This configures shellcheck in CI to ignore the use of the 'local'. Using
'local' to support variable scoping can prevent a lot of nasty bugs in
shell scripts.
Ash supports 'local', even though it's not a POSIX sh thing. It's used
extensively in our init.sh script, and many Alpine scripts use it.
2023-08-21 11:16:55 +02:00
Barnabás Czémán ff63a9fd60 device/*: add lk2nd-msm8953 as a dependency (MR 4339)
Fixes: pmbootstrap issue 2261
[ci:skip-build]: already built successfully in CI
2023-08-21 08:18:31 +02:00
Stefan Hansson e17b71ffd1 temp/gtk4.0: upgrade to 4.12.0 (MR 4338)
[ci:skip-build]: already built successfully in CI
2023-08-19 21:49:35 +02:00
Anton Bambura 53dbcab033 soc-mediatek-mt8183: remove unneeded dependency (MR 4335) 2023-08-19 19:57:03 +02:00
Anton Bambura 4970f08293 pine64-pinebookpro: depend on soc-rockchip-rk3399 (MR 4337) 2023-08-19 19:52:05 +02:00
Anton Bambura 49c39b35c1 pine64-pinephonepro: depend on soc-rockchip-rk3399 (MR 4337) 2023-08-19 19:52:05 +02:00
Anton Bambura 6148644a7f pine64-rockpro64: depend on soc-rockchip-rk3399 (MR 4337) 2023-08-19 19:52:05 +02:00
Anton Bambura 1dfe7962be google-gru: depend on soc-rockchip-rk3399 (MR 4337) 2023-08-19 19:52:05 +02:00
Anton Bambura ab47398d30 soc-rockchip-rk3399: new aport (MR 4337) 2023-08-19 19:52:04 +02:00
Barnabás Czémán 6c7d0c7b15 xiaomi-ysl: update firmware url (MR 4336)
[ci:skip-build]: already built successfully in CI
2023-08-19 17:28:55 +02:00
Alistair Francis b567653505 temp/gtk+3.0: Fix Phosh boot splash (MR 4332)
For the splash screen to correctly dismiss itself without
hitting the timeout, we need a Gtk patch.

This is described in the Phosh release notes:
https://gitlab.gnome.org/World/Phosh/phosh/-/releases/v0.30.0#required-patches-that-arent-merged-upstream-yet

The patch isn't in upstream yet, but there is an open PR:
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5628

Mobian also carries the patch:
https://salsa.debian.org/Mobian-team/packages/gtk3/-/blob/mobian/debian/patches/purism/gdk-wayland-Track-last-touch-serial-on-seat.patch

So let's add the patch to pmOS as well. This fixes the Phosh splash
screens so they now disapear when the application is ready.

Signed-off-by: Alistair Francis <alistair@alistair23.me>
[ci:skip-build]: already built successfully in CI
2023-08-18 10:12:22 +02:00
Barnabás Czémán 40aa8e911f xiaomi-ysl: switch to msm-firmware loader (MR 4331) 2023-08-17 10:00:50 +02:00
Clayton Craft 09a3c1dc8c cross/busybox-*: upgrade to 1.36.1-r6 2023-08-16 14:49:30 -07:00
Clayton Craft e72592cd9a cross/gcc-*: upgrade to 13.1.1_git20230722-r2 2023-08-16 14:45:25 -07:00
Stefan Hansson 69bcd3fbf0 linux-purism-librem5: upgrade to 6.4.5pureos1 (MR 4329)
[ci:skip-build]: Already built successfully in CI
2023-08-16 21:38:13 +02:00
Musk Wasis c002f3e196 linux-postmarketos-qcom-sm8250: recommended kernel config (MR 4328)
[ci:skip-build]: already built successfully in CI
2023-08-14 07:58:23 +02:00
Michal Kazior d663d4d678 main/linux-postmarketos-allwinner: add CP210X module (MR 4326)
This allows use of some USB peripherals that
utilize the CP210X serial chip.

This includes not only mere UART-to-USB adapters,
but also some devices like GPS, Zigbee dongles,
etc.

[ci:skip-build]: Already built successfully in CI
2023-08-13 13:05:23 +02:00
Anton Bambura d2eed81a20 odroid-xu4: move to community (MR 4297)
[ci:skip-vercheck]
[ci:skip-build]: Already built successfully in CI
2023-08-12 18:45:11 +02:00
Sicelo A. Mhlongo 5d8dd4d145 device-nokia-n900: fix hwkbd on unl0kr (MR 4320)
- add keyboard driver to initramfs (twl4030_keypad & matrix_keymap)
- order modules in alphabetical order

[ci:skip-build]: Already built successfully in CI
2023-08-12 17:01:15 +02:00
Sicelo A. Mhlongo 9c0e8fcc10 device-nokia-n900: do not open terminal for nagbar actions (MR 4320) 2023-08-12 17:01:14 +02:00
Sicelo A. Mhlongo b117742459 device-nokia-n900: restore modem (MR 4320) 2023-08-12 17:01:06 +02:00
kravandir 6e5122f018 xiaomi-olive: FDE support (MR 4323)
Fixed framebuffer red and blue colors swap and
added FDE support with unl0kr.

[ci:skip-build]: Already built successfully in CI
2023-08-12 16:57:17 +02:00
Arseniy Velikanov 66af27a144 testing/linux-postmarketos-qcom-sm8150: upgrade to 6.4 (MR 4306)
[ci:skip-build]: Already built successfully in CI
2023-08-11 11:45:06 +02:00
Arseniy Velikanov f9bda9fd4d testing/firmware-xiaomi-vayu: new aport (MR 4306) 2023-08-11 11:45:06 +02:00
Arseniy Velikanov e83778c4df xiaomi-vayu: new device (MR 4306) 2023-08-11 11:45:00 +02:00
Nikita Travkin e7ec3ae165 device-acer-aspire1: new device (MR 4322)
Acer Aspire 1 is an WoA aarch64 laptop.

This commit introduces support for it by including some patches that
were already accepted upstream.
2023-08-10 22:36:57 +02:00
Barnabás Czémán 415714ec4d soc-qcom-msm8953: add initial soc package (MR 4268)
[ci:skip-build]: already built successfully in CI
2023-08-10 17:26:28 +02:00
Sicelo A. Mhlongo 56ad1cd821 linux-postmarketos-omap: re-add twl for basic soc reset (MR 4321)
Fix shutdown regression introduced with 3e737241ba ("linux-postmarketos-omap:
N900: disable twl off idle features"). After that commit, shutdown never
completes.

[ci:skip-build]: Already built successfully in CI
2023-08-10 10:44:54 +02:00
Anton Bambura b6f0cfda68 main/postmarketos-mkinitfs-hook-apx: enable aarch64 (MR 4319)
It may work on aarch64 Tegra SoCs

[ci:skip-build]: already built successfully in CI
2023-08-10 01:16:32 +03:00
kravandir 36bdf43fe6 xiaomi-olive: new device (MR 4313)
[ci:skip-build]: Already built successfully in CI
2023-08-09 17:30:21 +02:00
Duje Mihanović 9ea3a58735 samsung-j3xnlte: use Samsung sparse format (MR 4315)
This allows the rootfs image to be flashed with Heimdall without errors.
2023-08-09 16:11:32 +02:00
Jasper Korten 63c6f76327 google-smaug: new device (MR 4007)
[ci:skip-build]: Already built successfully in CI
2023-08-09 10:58:40 +02:00
Jasper Korten 61374468cd linux-google-smaug: new aport (MR 4007) 2023-08-09 11:41:48 +03:00
Jasper Korten 54672bdca7 firmware-google-smaug: new aport (MR 4007) 2023-08-09 11:41:17 +03:00
Joel Selvaraj 098b71ba76 community/soc-qcom-sdm845: fix the missing .post-install script for call audio (MR 4316) 2023-08-09 10:28:28 +02:00
Sicelo A. Mhlongo 3e737241ba linux-postmarketos-omap: N900: disable twl off idle features (MR 4317)
Disable twl pmic off-idle configuration for Nokia N900. An ugly patch to do
this was lost during the migration from linux-nokia-n900 to the shared omap
kernel.

Fixes #2161

[ci:skip-build]: Already built successfully in CI
2023-08-09 09:59:06 +02:00
Johannes Marbach 202b6e9435 main/postmarketos-initramfs: wait for splash to exit before unlocking (MR 3952)
[ci:skip-build]: already built successfully in CI
2023-08-08 09:36:17 +02:00
Johannes Marbach 3dae87fc3c community/device-oneplus-fajita: enable unl0kr quirks (MR 3952) 2023-08-08 09:36:17 +02:00
Johannes Marbach 42f9797845 main/unl0kr: upgrade to 2.0.0 (MR 3952) 2023-08-08 09:36:12 +02:00
Jan Jasper de Kroon 9bba04d366 linux-pine64-pinephonepro: upgrade to 6.4.7 (MR 4287)
[ci:skip-build]: already built successfully in CI
2023-08-08 09:31:02 +02:00
Sicelo A. Mhlongo dbbd4e46ec device-nokia-n900: let user choose power button action (MR 4312)
Offer user a choice between suspend, shutdown, and reboot when power button
pressed.

[ci:skip-build]: already built successfully in CI
2023-08-08 09:27:16 +02:00
Sicelo A. Mhlongo 61951f08e7 device-nokia-n900: use elogind for suspend (MR 4312)
Since 80ab66cd2a (MR 4179), suspend using `loginctl` works, so drop pm-utils
and the associated sudo rule.
2023-08-08 09:27:16 +02:00
Sicelo A. Mhlongo e702458223 device-nokia-n900: switch to urxvt terminal (MR 4312)
Switch to urxvt terminal in order to provide a scrollable terminal. Scrolling
is convoluted in st [1], especially when used on a mobile device.

Scrolling is a basic need, e.g. to page through `dmesg` output.

[1] https://git.suckless.org/st/file/FAQ.html#l21
2023-08-08 09:27:10 +02:00
Anton Bambura 76030e7fa5 alsa-ucm-conf-google-gru: update comment (MR 4314)
See https://gitlab.com/postmarketOS/pmaports/-/merge_requests/4291#note_1502132779

[ci:skip-vercheck]
2023-08-08 09:20:27 +02:00
Pablo Correa Gómez 04abb5b1a7 main/postmarketos-base: migrate wrong timezone configurations (MR 4308)
So that old installations that run setup-timezone without "-i" do not
need to execute manual steps to get sensible timezone configurations.

See https://gitlab.com/postmarketOS/pmaports/-/issues/2168 for more context

Fixes #2168
[ci:skip-build]: already built successfully in CI
2023-08-07 09:41:53 +02:00
Anton Bambura 0383bcaa1e google-trogdor: move to community (MR 4291)
[ci:ignore-count]
[ci:skip-vercheck]

[ci:skip-build]: already built successfully in CI
2023-08-07 09:31:04 +02:00
Anton Bambura 25b1462207 firmware-google-trogdor: move to community (MR 4291) 2023-08-07 09:30:38 +02:00
Anton Bambura 6665328a80 linux-postmarketos-qcom-sc7180: move to community (MR 4291) 2023-08-07 09:30:38 +02:00
Anton Bambura b5aecae28b soc-qcom-sc7180: move to community (MR 4291) 2023-08-07 09:30:38 +02:00
Anton Bambura 2b4a076c5f google-gru: move to community (MR 4291) 2023-08-07 09:30:38 +02:00
Anton Bambura e7f9e9256f alsa-ucm-conf-google-gru: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 7e18458bc8 google-kukui: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 9d9027876e soc-mediatek-mt8183: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 841214a737 alsa-ucm-conf-google-kukui: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 7af938a960 linux-postmarketos-mediatek-mt8183: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 2fcbd471b0 google-oak: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura e740f3dccd linux-postmarketos-mediatek-mt8173: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 21dc035985 google-veyron: move to community (MR 4291) 2023-08-07 09:30:37 +02:00
Anton Bambura 9ada84dbf3 firmware-google-veyron-brcm: move to community (MR 4291) 2023-08-07 09:30:36 +02:00
Anton Bambura 055c64ed50 linux-google-veyron: move to community (MR 4291) 2023-08-07 09:30:36 +02:00
Anton Bambura a2a5539d53 google-peach-pit: move to community (MR 4291) 2023-08-07 09:30:36 +02:00
Anton Bambura 14ab70cac7 google-snow: move to community (MR 4291) 2023-08-07 09:30:36 +02:00
Anton Bambura f0843d6b4a linux-postmarketos-exynos5: move to community (MR 4291) 2023-08-07 09:30:31 +02:00
Musk Wasis 2146027219 testing/linux-postmarketos-qcom-sm8250: Enable BTRFS (MR 4143)
[ci:skip-build]: already built successfully in CI
2023-08-07 09:12:50 +02:00
Anton Bambura 0b5fe0017e linux-postmarketos-rockchip: don't use flavor in dtbs path (MR 4298)
..for consistency with other packages and to not confuse utilities
which make proper use of flavors

[ci:skip-build]: already built successfully in CI
2023-08-06 19:46:43 +02:00
Sicelo A. Mhlongo 7992f29cf9 device-nokia-n900: drop conky (MR 4309)
Save a few CPU cycles by dropping conky. Additionally, the existing config has
not been working for a long time now, and no one missed it.

For completeness, it was no longer displaying on the desktop. Manually starting
it showed:

```
conky: X Error: type 0 Display b5e73620 XID 1302 serial 97 error_code 10 request_code 2 minor_code 0 other Display: b5e73620
```

There are instructions [1] to resolve/workaround it, but we clearly do not have
a pressing need for conky to begin with.

[1] https://github.com/brndnmtthws/conky/issues/1443#issuecomment-1557793718
[ci:skip-build]: already built successfully in CI
2023-08-06 19:38:51 +02:00
Jan Jasper de Kroon 7e488322cb linux-postmarketos-allwinner: upgrade to 6.4.7 (MR 4281)
[ci:skip-build]: already built successfully in CI
2023-08-06 19:11:13 +02:00
Oliver Smith f0cc1edccc cross/busybox-static-*: upgrade to 1.36.1-r5 2023-08-06 18:35:58 +02:00
Anton Bambura e60195f8ae modem/msm-cros-efs-loader: upgrade to 1.0.2 (MR 4307)
[ci:skip-build]: already built successfully in CI
2023-08-05 23:41:59 +02:00
alikates 1a38807594 main/lk2nd-msm8953: upgrade to 3.4.0 (MR 4305)
[ci:skip-build]: already built successfully in CI
2023-08-04 09:26:51 +02:00
Pablo Correa Gómez f0d314793d ci: make sure deviceinfo_modules_initfs is not re-introduced in pmaports (MR 4169)
[ci:ignore-count]
2023-08-04 08:27:44 +02:00
Pablo Correa Gómez 9839303dca main/postmarketos-initramfs: stop using removed deviceinfo_modules_initfs (MR 4169)
The modules are now managed exclusively through the
/lib/modules/initramfs.load files
2023-08-04 08:27:44 +02:00
Pablo Correa Gómez 4914067590 device/*: transform deviceinfo_modules_initfs into a file (MR 4169)
The file is automatically packed by devicepkg-dev utils

Relates #1836
2023-08-04 08:27:44 +02:00
Pablo Correa Gómez 7213fd54ca main/devicepkg-dev: use modules-initfs to install modules into initramfs (MR 4169)
Since the modules are going to be installed into the initfs, it makes
sense to use a more verbose naming for the file. Otherwise there's the
risk of getting confused with other type of module files that exist in
device packages.

Fixes 65be0d7e81
2023-08-04 08:27:38 +02:00
alikates 968d1cb57f linux-postmarketos-qcom-msm8953: upgrade to 6.4.7-r1 (MR 4304)
Fixed an issue with the speaker on tissot.

[ci:skip-build]: already built successfully in CI
2023-08-03 21:33:35 +02:00
Raymond Hackley 5ad102151d huawei-kiwi: add GR5 (2016) (MR 4302)
GR5 is for international markets, and it's also kiwi.
The existing pmaports, lk2nd and kernel works can be used directly
without problems.

There is nothing different found yet. The 2 phones seem to be identical
except that GR5 is not branded as Honor series and it has no Honor logo
on the chassis.
2023-08-03 19:32:44 +02:00
Duje Mihanović 4f842cfd9a samsung-coreprimevelte: add mainline kernel (MR 4267)
[ci:skip-build]: already built successfully in CI
2023-08-03 07:56:19 +02:00
Clayton Craft 4ebd1d1a17 main/boot-deploy: upgrade to 0.10.1 (MR 4301)
[ci:skip-build]: already built successfully in CI
2023-08-03 07:52:00 +02:00
Anton Bambura 1c4369e4fc google-snow: replace bash with sh in sway workaround (MR 4300)
[ci:skip-build]: already built successfully in CI
2023-08-03 07:42:56 +02:00
Anton Bambura acf281069e google-nyan-blaze: replace bash with sh in sway workaround (MR 4300) 2023-08-03 07:42:56 +02:00
Anton Bambura 5e35a947d2 google-nyan-big: replace bash with sh in sway workaround (MR 4300) 2023-08-03 07:42:56 +02:00
Anton Bambura 931bf18591 asus-p024: replace bash with sh in brightness script (MR 4300) 2023-08-03 07:42:51 +02:00
Steven Davies 1e4c8238c3 postmarketos-initramfs: Handle rootfsopts= on kernel cmdline (MR 4288)
This also removes redundant code and handles mount failure/no filesystem
separately.

fixes #2242
2023-08-02 11:33:47 -07:00
Sicelo A. Mhlongo 73a033328e device-nokia-n900: set uniprocessor mode for kernel (MR 4299)
The OMAP 3430 in the Nokia N900 is a uniprocessor SoC, so disable SMP via
kernel command line. This appears to alleviate the ongoing kernel crashes
affecting the Nokia N900 in pmOS.

[ci:skip-build]: already built successfully in CI
2023-08-01 21:50:57 +02:00
alikates 3cd0d57835 linux-postmarketos-qcom-msm8953: upgrade to 6.4.7 (MR 4296)
Updated the kernel to version 6.4.7 and added fixes for the speaker on
xiaomi-daisy and xiaomi-tissot.

Also changed the aport to use tags instead of commit hashes.
2023-08-01 14:16:30 +03:00
Anton Bambura acccef1297 u-boot-veyron-speedy: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:24 +03:00
Anton Bambura 9439f03232 u-boot-veyron-minnie: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:24 +03:00
Anton Bambura 7ce2c8645a u-boot-peach-pit: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:24 +03:00
Anton Bambura 73a9d2e481 u-boot-peach-pi: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:23 +03:00
Anton Bambura ac3ccce178 u-boot-snow: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:23 +03:00
Anton Bambura ae1fffe8c0 u-boot-nyan-4gb: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:23 +03:00
Anton Bambura 3fe3531f47 u-boot-nyan-2gb: drop in favor of depthcharge (MR 4294) 2023-08-01 14:02:23 +03:00
Anton Bambura e6073704d3 google-x64cros: depend on postmarketos-cros-common (MR 4295)
[ci:ignore-count]
2023-08-01 13:52:45 +03:00
Anton Bambura f8bc62c171 google-veyron: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura 0ac0f93599 google-trogdor: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura 0f32828eb1 google-spring: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura 4525d4072b google-snow: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura 53e9209597 google-peach-pit: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura aba1daa8d3 google-peach-pi: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:45 +03:00
Anton Bambura edba36cdb9 google-oak: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura b39ae43314 google-nyan-blaze: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura 49680c648d google-nyan-big: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura bb80cfbc19 google-kukui: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura 972c8d16ec google-gru: depend on postmarketos-cros-common (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura 3aa3758821 main/postmarketos-cros-common: new aport (MR 4295) 2023-08-01 13:52:44 +03:00
Anton Bambura e9f7e3b423 linux-postmarketos-exynos5: make it pass kconfig check again (MR 4292)
[ci:skip-build]: already built successfully in CI
2023-08-01 09:14:10 +02:00
Anton Bambura 2d648883ef google-peach-pi: remove inactive maintainer (MR 4293)
[ci:skip-build] [ci:skip-vercheck]
2023-08-01 08:59:03 +02:00
Anton Bambura 346f93cb6e google-gru: depend on linux-firmware-qca (MR 4289)
Fixes https://gitlab.com/postmarketOS/pmaports/-/issues/2218
2023-08-01 08:50:19 +02:00
pedja bffe5d95ac linux-postmarketos-omap: adjust Kconfig to fix nokia-modem (MR 4282)
Added CONFIG_GPIO_SYSFS, this is required for nokia-modem module
GPIO_SYSFS depends on EXPERT which in turn sets DEBUG*

[ci:skip-build]: already built successfully in CI
2023-08-01 08:28:41 +02:00
Nils Tonnätt 5d4289c416 xiaomi-daisy: remove superfluous underscores in deviceinfo (MR 4285)
[ci:skip-build]: already built successfully in CI
2023-07-31 09:15:37 +02:00
Anton Bambura 941486b663 main/devicepkg-dev: trigger mkinitfs (MR 4206)
[ci:skip-build]: already built successfully in CI
2023-07-31 09:11:11 +02:00
Anton Bambura a025f614bb google-peach-pi: switch to depthcharge (MR 4206) 2023-07-31 09:11:11 +02:00
Anton Bambura a4bce44ef4 google-peach-pi: switch to extlinux.conf (MR 4206) 2023-07-31 09:11:10 +02:00
Anton Bambura 2016c069e7 google-peach-pit: switch to depthcharge (MR 4206) 2023-07-31 09:11:10 +02:00
Anton Bambura 7214fb1a74 google-peach-pit: switch to extlinux.conf (MR 4206) 2023-07-31 09:11:10 +02:00
Anton Bambura 50ca7110d7 google-snow: switch to depthcharge (MR 4206) 2023-07-31 09:11:10 +02:00
Anton Bambura 6ac389d8ae google-snow: switch to extlinux.conf (MR 4206) 2023-07-31 09:11:04 +02:00
Anton Bambura d9116005f1 google-veyron: new device (MR 4252)
[ci:skip-build] already built successfully in CI
2023-07-30 23:32:27 -07:00
Anton Bambura 591ae745ae google-veyron-tiger: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:27 -07:00
Anton Bambura 5d393c43be google-veyron-speedy: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:27 -07:00
Anton Bambura a4f893bfb0 google-veyron-minnie: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:26 -07:00
Anton Bambura 557ddf697f google-veyron-mighty: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:26 -07:00
Anton Bambura cc14792377 google-veyron-mickey: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:26 -07:00
Anton Bambura 675bd6d68d google-veyron-jerry: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:26 -07:00
Anton Bambura 2700b6c52f google-veyron-jaq: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:25 -07:00
Anton Bambura c5c962b6ed google-veyron-fievel: drop in favor of google-veyron (MR 4252) 2023-07-30 23:32:25 -07:00
Anton Bambura 66aacbe00c google-oak: new device (MR 4252) 2023-07-30 23:32:25 -07:00
Anton Bambura 5837cdd6bf google-elm: drop in favor of google-oak (MR 4252) 2023-07-30 23:32:24 -07:00
Anton Bambura 8c9854ea92 google-hana: drop in favor of google-oak (MR 4252) 2023-07-30 23:32:24 -07:00
Anton Bambura f35a52add9 google-kukui: new device (MR 4252) 2023-07-30 23:32:24 -07:00
Anton Bambura cffc7f1d4c google-willow: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:24 -07:00
Anton Bambura 3679e238e7 google-krane: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:23 -07:00
Anton Bambura e35d367d8a google-cozmo: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:23 -07:00
Anton Bambura b01a87b087 google-kakadu: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:23 -07:00
Anton Bambura 38853f6b4b google-fennel14: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:22 -07:00
Anton Bambura f08577c919 google-stern: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:22 -07:00
Anton Bambura e8f434e63c google-kodama: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:22 -07:00
Anton Bambura e2daba5f24 google-damu: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:22 -07:00
Anton Bambura 338d24e60c google-cerise: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:21 -07:00
Anton Bambura 3c5948e480 google-fennel: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:21 -07:00
Anton Bambura c2cff799d7 google-makomo: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:21 -07:00
Anton Bambura 5584000463 google-juniper: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:20 -07:00
Anton Bambura 1e415b1ffb google-burnet: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:20 -07:00
Anton Bambura 638c1e2449 google-katsu: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:20 -07:00
Anton Bambura 0fa314e59e google-kenzo: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:20 -07:00
Anton Bambura 2d4b04d37a google-kappa: drop in favor of google-kukui (MR 4252) 2023-07-30 23:32:19 -07:00
Anton Bambura a24c091ac6 google-gru: new device (MR 4252) 2023-07-30 23:32:19 -07:00
Anton Bambura c8988dd747 google-bob: drop in favor of google-gru (MR 4252) 2023-07-30 23:32:19 -07:00
Anton Bambura 4fda1c33d9 google-kevin: drop in favor of google-gru (MR 4252) 2023-07-30 23:32:18 -07:00
Anton Bambura 40fb66f3c1 google-dumo: drop in favor of google-gru (MR 4252) 2023-07-30 23:32:18 -07:00
Anton Bambura f457ed3540 google-druwl: drop in favor of google-gru (MR 4252) 2023-07-30 23:32:18 -07:00
Anton Bambura be532bf682 google-dru: drop in favor of google-gru (MR 4252) 2023-07-30 23:32:17 -07:00
Clayton Craft 6e4f2c945d main/boot-deploy: upgrade to 0.10 (MR 4278)
This also enables running tests, since we want to do everything possible
to prevent regressions!

[ci:skip-build] already built successfully in CI
2023-07-30 23:23:39 -07:00
Pablo Correa Gómez 80e78d417f cross/musl-*: upgrade to 1.2.4_git20230717-r2 2023-07-30 11:04:35 +00:00
M0Rf30 1f06b6f365 linux-postmarketos-qcom-msm8953: enable soundcard for xiaomi-mido and xiaomi-ysl (MR 4280)
[ci:skip-build]: already built successfully in CI
2023-07-29 12:37:05 +02:00
Richard Acayan fe7993e6c9 google-sargo: include ALSA UCM configuration (MR 4203)
[ci:skip-build]: already built successfully in CI
2023-07-28 13:56:20 +02:00
Richard Acayan 4896bf4e6e alsa-ucm-conf-qcom-sdm670: new aport (MR 4203)
The Pixel 3a uses the SDM845 SoC package but now needs UCM
configuration. Add a fork of it (unless the configuration can be added
to the SDM845 repository).
2023-07-28 13:56:11 +02:00
Richard Acayan 301baea0ae google-sargo: add adsp pd firmware (MR 4203)
The ADSP needs this firmware, otherwise audio bringup will fail. It
wasn't added with initial ADSP support, so add it now.

Also remove execute permissions from the installed firmware.
2023-07-28 13:56:11 +02:00
Richard Acayan 2b7b2ed090 linux-postmarketos-qcom-sdm670: upgrade to 6.4.4 (MR 4203) 2023-07-28 13:56:11 +02:00
Oliver Smith d0f40b0b16 main/mobile-config-firefox: upgrade to 4.0.4 (MR 4276)
[ci:skip-build]: already built successfully in CI
2023-07-28 13:51:45 +02:00
Oliver Smith 2ad28222c0 cross/musl-*: upgrade to 1.2.4_git20230717-r0 2023-07-28 07:53:10 +02:00
4953 changed files with 9831 additions and 1706869 deletions

No files matched your search

-1
View File
@@ -1 +0,0 @@
lib/build_changed_aports.sh
-1
View File
@@ -1 +0,0 @@
lib/build_changed_aports.sh
-1
View File
@@ -1 +0,0 @@
lib/build_changed_aports.sh
+7
View File
@@ -45,3 +45,10 @@ if grep --exclude='source_deviceinfo' -qEr 'source /etc/deviceinfo|\. /etc/devic
grep --color=always --exclude='rootfs-usr-share-misc-source_deviceinfo' -Er 'source /etc/deviceinfo|\. /etc/deviceinfo' -- *
exit 1
fi
# Removed deviceinfo variable
if grep -qr 'deviceinfo_modules_initfs' -- *; then
echo 'ERROR: deviceinfo_modules_initfs variable has been removed. Use "modules-initfs" file instead.'
grep --color=always -r 'deviceinfo_modules_initfs' -- *
exit 1
fi
+2 -2
View File
@@ -17,12 +17,12 @@ sh_files="
./main/mdss-fb-init-hack/mdss-fb-init-hack.sh
./main/osk-sdl/unlock.sh
./main/postmarketos-base/rootfs-usr-lib-firmwareload.sh
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-dns-filter.sh
./main/postmarketos-base-ui/rootfs-usr-lib-NetworkManager-dispatcher.d-50-tethering.sh
./main/postmarketos-installkernel/installkernel-pmos
./main/postmarketos-initramfs/init.sh
./main/postmarketos-initramfs/init_functions.sh
./main/postmarketos-mkinitfs-hook-debug-shell/20-debug-shell.sh
./main/postmarketos-mkinitfs-hook-debug-shell/setup_usb_storage.sh
./main/postmarketos-mkinitfs-hook-netboot/netboot.sh
./main/postmarketos-update-kernel/update-kernel.sh
./main/ttyescape/*.post-install
@@ -48,5 +48,5 @@ sh_files="
for file in $sh_files; do
echo "Test with shellcheck: $file"
cd "$DIR/$(dirname "$file")"
shellcheck -e SC1008 -x "$(basename "$file")"
shellcheck -e SC1008 -e SC3043 -x "$(basename "$file")"
done
@@ -7,7 +7,7 @@ import sys
import os
import importlib
import importlib.util
from distutils.sysconfig import get_python_lib
from site import getsitepackages
def path_pmbootstrap():
@@ -24,13 +24,14 @@ def path_pmbootstrap():
sys.exit(1)
# Resolve the symlink and verify the folder
dir = os.path.dirname(os.path.realpath(bin))
if os.path.exists(dir + "/pmb/__init__.py"):
return dir
directory = os.path.dirname(os.path.realpath(bin))
if os.path.exists(directory + "/pmb/__init__.py"):
return directory
dir = get_python_lib()
if os.path.exists(dir + "/pmb/__init__.py"):
return dir
directories = getsitepackages()
for directory in directories:
if os.path.exists(directory + "/pmb/__init__.py"):
return directory
# Symlink not set up properly
print("ERROR: 'pmbootstrap' is not a symlink to pmbootstrap.py")
+1 -1
View File
@@ -30,7 +30,7 @@ def test_directories():
# Ensure no file in pmaports are executable.
# see https://gitlab.com/postmarketOS/pmaports/-/issues/593.
def test_executable_files():
for file in glob.iglob("**/*", recursive=True):
for file in glob.iglob("[!temp]**/**/*", recursive=True):
if os.path.isdir(file) or os.path.islink(file):
continue
# still check other less common inode types
+2 -1
View File
@@ -1,3 +1,4 @@
{
"SpacesAftertabs": true
"SpacesAftertabs": true,
"Exclude": ["temp"]
}
+2 -17
View File
@@ -18,7 +18,7 @@ stages:
# https://docs.gitlab.com/ee/ci/merge_request_pipelines/index.html#excluding-certain-jobs
.only-default: &only-default
only:
- master
- v23.12
- merge_requests
- tags
@@ -100,7 +100,7 @@ kernel-kconfig:
stage: lint
only:
refs:
- master
- v23.12
- merge_requests
changes:
- device/*/linux-*/config-*
@@ -140,11 +140,6 @@ build-x86_64:
script:
- .ci/build-x86_64.sh
build-x86:
extends: .build
script:
- .ci/build-x86.sh
build-aarch64:
extends: .build
script:
@@ -154,13 +149,3 @@ build-armv7:
extends: .build
script:
- .ci/build-armv7.sh
build-armhf:
extends: .build
script:
- .ci/build-armhf.sh
build-riscv64:
extends: .build
script:
- .ci/build-riscv64.sh
-51
View File
@@ -1,51 +0,0 @@
# Reference: https://postmarketos.org/channels.cfg
[channels.cfg]
recommended=edge
[edge]
description=Rolling release / Most devices / Occasional breakage: https://postmarketos.org/edge
branch_pmaports=master
branch_aports=master
mirrordir_alpine=edge
[v23.06]
description=Latest release / Recommended for best stability
branch_pmaports=v23.06
branch_aports=3.18-stable
mirrordir_alpine=v3.18
[v22.12]
description=Old release (unsupported)
branch_pmaports=v22.12
branch_aports=3.17-stable
mirrordir_alpine=v3.17
[v22.06]
description=Old release (unsupported)
branch_pmaports=v22.06
branch_aports=3.16-stable
mirrordir_alpine=v3.16
[v21.12]
description=Old release (unsupported)
branch_pmaports=v21.12
branch_aports=3.15-stable
mirrordir_alpine=v3.15
[v21.06]
description=Old release (unsupported)
branch_pmaports=v21.06
branch_aports=3.14-stable
mirrordir_alpine=v3.14
[v21.03]
description=Old release (unsupported)
branch_pmaports=v21.03
branch_aports=3.13-stable
mirrordir_alpine=v3.13
[v20.05]
description=Old release (unsupported)
branch_pmaports=v20.05
branch_aports=3.12-stable
mirrordir_alpine=v3.12
+4 -4
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-aarch64
pkgver=1.36.1
pkgrel=4
pkgrel=19
_arch="aarch64"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -21,16 +21,16 @@ pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
busybox-static-$pkgver-r$pkgrel-$_arch-v3.19.apk::$_mirror/v3.19/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-v3.19.apk
rm .PKGINFO .SIGN.*
}
sha512sums="
c0ea71bcec70e35de3dcb919c22c02afe7e35b3168845209e93bcd15ff380d62dc807848e36e1e5fef22c16adbbdfc1dc3a3559015d0c4a3b2978e0e303d4413 busybox-static-1.36.1-r4-aarch64-edge.apk
aa58bb098d78beddc923a58599688b68768b311759d4acf05d75ba26c5969a31b9faed1b65b600688a5670d2d0c97562f2ebad529864a16eb987b9f4b3ec2924 busybox-static-1.36.1-r19-aarch64-v3.19.apk
"
-36
View File
@@ -1,36 +0,0 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen busybox-static-armhf
# Stub for apkbuild-lint
if [ -z "$(type -t arch_to_hostspec)" ]; then
arch_to_hostspec() { :; }
fi
pkgname=busybox-static-armhf
pkgver=1.36.1
pkgrel=4
_arch="armhf"
_mirror="http://dl-4.alpinelinux.org/alpine/"
url="http://busybox.net"
license="GPL2"
arch="x86_64"
options="!check !strip"
pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
rm .PKGINFO .SIGN.*
}
sha512sums="
701ee52541aee37a075563c430b891860afd205e4446379a4686b3eac57ce8443c1203b06fb90f146c88064e00d99101c86d0d8b3a91377e465d46958c942366 busybox-static-1.36.1-r4-armhf-edge.apk
"
+4 -4
View File
@@ -8,7 +8,7 @@ fi
pkgname=busybox-static-armv7
pkgver=1.36.1
pkgrel=4
pkgrel=19
_arch="armv7"
_mirror="http://dl-4.alpinelinux.org/alpine/"
@@ -21,16 +21,16 @@ pkgdesc="Statically linked Busybox for $_arch"
_target="$(arch_to_hostspec $_arch)"
source="
busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk::$_mirror/edge/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
busybox-static-$pkgver-r$pkgrel-$_arch-v3.19.apk::$_mirror/v3.19/main/$_arch/busybox-static-$pkgver-r$pkgrel.apk
"
package() {
mkdir -p "$pkgdir/usr/$_target"
cd "$pkgdir/usr/$_target"
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-edge.apk
tar -xf $srcdir/busybox-static-$pkgver-r$pkgrel-$_arch-v3.19.apk
rm .PKGINFO .SIGN.*
}
sha512sums="
e01fdc7edfe06b9b8c30acb0df90f026c49982d378724c8afd4e545f5ab7e9d317a9fd8e1e7ae06d3f89e3ddf5e572ad3f7d2d033225f195d5bc7530e6e4bcd2 busybox-static-1.36.1-r4-armv7-edge.apk
570dd6f150d74bafec0b4485ced760e815a1550372251cba8b51e1e4193ead71b81c2262a04a6f279fad1ebacc7c792eb825614d2f67f57c4f3b0b33d11033ab busybox-static-1.36.1-r19-armv7-v3.19.apk
"
+6 -2
View File
@@ -1,3 +1,6 @@
# Maintainer: Oliver Smith <ollieparanoid@postmarketos.org>
# https://wiki.postmarketos.org/wiki/Pmbootstrap:_Cross_Compiling
#
# Wrapper for the "crossdirect" compilation method.
# pmbootstrap mounts the native chroot in the foreign arch (e.g. armhf) chroot
# as /native. This package gets installed into the native chroot, and creates
@@ -16,7 +19,7 @@
# version is implemented as simple shell wrappers.
pkgname=crossdirect
pkgver=5
pkgver=5.1.0
pkgrel=0
pkgdesc="Wrappers to launch native cross compilers in foreign chroots"
url="https://postmarketOS.org"
@@ -76,9 +79,10 @@ package() {
ln -s ../rustc.sh rustc
done
}
sha512sums="
0f4b48f250425dc57f63955fc8b38477d23db793bee367c3fbe03c3d2a559ba576434d07518310db4cae9d90d501af4051b80038b10fae94b980e537fc9374ad cargo.sh
500107e5aff8b34e74b54982ebcd447fc41bc8283956d506561b031a055cb30ec12698047c2604918b4b6d8560fe03db427a63dff2b83c907e8494b7f5233f29 crossdirect.c
2c41410a9ef2dab31403545e55e2464f2ee4e7056ffbcd3bc5810d582311801496b88d55307f17ce6acf766e9c867d30d05f2b0d8d46bf77a5e8f0495d6bc24e rustc.sh
de2aa6929bbff5db9132673e667f4525b333d062cb1f7a0597dd924de9e5c7215a9f8e2e6263b6fb5ace06f2c4b64f4ebfd0ede9b78add07c2cd08ec8613e98f rustc.sh
ea9bf8db3810d03d0a7395057f3d6e57f7127d87c55deaedc171c255288f5f3cc6fbcc680a5a1b92786cf573875d5dc22521173799fe2639acc97d0715ff905b rust-qemu-linker.sh
"
+16 -4
View File
@@ -5,8 +5,15 @@ if [ -n "$CROSSDIRECT_DEBUG" ]; then
fi
# return the correct host architecture when cargo requests it
if [ "$*" = "-vV" ]; then
exec /usr/bin/rustc -vV
if [ "$*" = "-vV" ] || [ "$*" = "-V" ]; then
exec /usr/bin/rustc "$*"
fi
# pmbootstrap installs sccache when building a rust program, unless --no-ccache
# is set. In that case it also sets CCACHE_DISABLE.
SCCACHE=/native/usr/bin/sccache
if ! [ -e "$SCCACHE" ] || [ -n "$CCACHE_DISABLE" ]; then
SCCACHE=""
fi
# We expect the right target to be set in the arguments if compiling for the
@@ -14,12 +21,17 @@ fi
# automatically. If no target is provided, this is probably a macro or a
# build script, so it should be compiled for the native architecture.
if echo "$*" | grep -qFe "--target"; then
LD_LIBRARY_PATH=/native/lib:/native/usr/lib /native/usr/bin/rustc \
# Not using sccache when building for foreign architecture, as it
# doesn't cache the output with "Non-cacheable reasons: --sysroot"
LD_LIBRARY_PATH=/native/lib:/native/usr/lib \
/native/usr/bin/rustc \
-Clinker=/native/usr/lib/crossdirect/rust-qemu-linker \
--sysroot=/usr \
"$@"
else
PATH=/native/usr/bin:/native/bin LD_LIBRARY_PATH=/native/lib:/native/usr/lib \
PATH=/native/usr/bin:/native/bin \
LD_LIBRARY_PATH=/native/lib:/native/usr/lib \
$SCCACHE \
/native/usr/bin/rustc \
-Clink-arg=-Wl,-rpath,/native/lib:/native/usr/lib \
"$@"
@@ -1,61 +0,0 @@
From ef740fff300fd9eb8285fb5611f6205705ee54ec Mon Sep 17 00:00:00 2001
From: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
Date: Fri, 23 Jun 2023 15:27:17 +0530
Subject: [PATCH 35/35] Fix ICE observed in PR110280.
gcc/ChangeLog:
PR tree-optimization/110280
* match.pd (vec_perm_expr(v, v, mask) -> v): Explicitly build vector
using build_vector_from_val with the element of input operand, and
mask's type if operand and mask's types don't match.
gcc/testsuite/ChangeLog:
PR tree-optimization/110280
* gcc.target/aarch64/sve/pr110280.c: New test.
---
gcc/match.pd | 9 ++++++++-
gcc/testsuite/gcc.target/aarch64/sve/pr110280.c | 12 ++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
diff --git a/gcc/match.pd b/gcc/match.pd
index 91182448250..c3bb4fbc0a7 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -8292,7 +8292,14 @@ and,
(simplify
(vec_perm vec_same_elem_p@0 @0 @1)
- @0)
+ (if (types_match (type, TREE_TYPE (@0)))
+ @0
+ (with
+ {
+ tree elem = uniform_vector_p (@0);
+ }
+ (if (elem)
+ { build_vector_from_val (type, elem); }))))
/* Push VEC_PERM earlier if that may help FMA perception (PR101895). */
(simplify
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
new file mode 100644
index 00000000000..d3279f38362
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -fdump-tree-optimized" } */
+
+#include "arm_sve.h"
+
+svuint32_t l()
+{
+ _Alignas(16) const unsigned int lanes[4] = {0, 0, 0, 0};
+ return svld1rq_u32(svptrue_b8(), lanes);
+}
+
+/* { dg-final { scan-tree-dump-not "VEC_PERM_EXPR" "optimized" } } */
--
2.41.0
@@ -0,0 +1,186 @@
https://gcc.gnu.org/PR110792
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=790c1f60a5662b16eb19eb4b81922995863c7571
https://github.com/randombit/botan/issues/3637
From 85628c5653ff40963158a24c60eeec6a3b5a8e56 Mon Sep 17 00:00:00 2001
From: Roger Sayle <roger@nextmovesoftware.com>
Date: Thu, 3 Aug 2023 07:12:04 +0100
Subject: [PATCH] PR target/110792: Early clobber issues with
rot32di2_doubleword on i386.
This patch is a conservative fix for PR target/110792, a wrong-code
regression affecting doubleword rotations by BITS_PER_WORD, which
effectively swaps the highpart and lowpart words, when the source to be
rotated resides in memory. The issue is that if the register used to
hold the lowpart of the destination is mentioned in the address of
the memory operand, the current define_insn_and_split unintentionally
clobbers it before reading the highpart.
Hence, for the testcase, the incorrectly generated code looks like:
salq $4, %rdi // calculate address
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
Traditionally, the textbook way to fix this would be to add an
explicit early clobber to the instruction's constraints.
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
(const_int 32)))]
but unfortunately this currently generates significantly worse code,
due to a strange choice of reloads (effectively memcpy), which ends up
looking like:
salq $4, %rdi // calculate address
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
movq -8(%rsp), %rdi // load highpart
movq -16(%rsp), %rbp // load lowpart
Note that reload's "&" doesn't distinguish between the memory being
early clobbered, vs the registers used in an addressing mode being
early clobbered.
The fix proposed in this patch is to remove the third alternative, that
allowed offsetable memory as an operand, forcing reload to place the
operand into a register before the rotation. This results in:
salq $4, %rdi
movq WHIRL_S(%rdi), %rax
movq WHIRL_S+8(%rdi), %rdi
movq %rax, %rbp
I believe there's a more advanced solution, by swapping the order of
the loads (if first destination register is mentioned in the address),
or inserting a lea insn (if both destination registers are mentioned
in the address), but this fix is a minimal "safe" solution, that
should hopefully be suitable for backporting.
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
PR target/110792
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
place operand in a register before gen_<insn>64ti2_doubleword.
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
operand in a register before gen_<insn>32di2_doubleword.
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
(<any_rotate>64ti2_doubleword): Likewise.
gcc/testsuite/ChangeLog
PR target/110792
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
* gcc.target/i386/pr110792.c: New 64-bit C test case.
(cherry picked from commit 790c1f60a5662b16eb19eb4b81922995863c7571)
---
gcc/config/i386/i386.md | 18 ++++++++++++------
gcc/testsuite/g++.target/i386/pr110792.C | 16 ++++++++++++++++
gcc/testsuite/gcc.target/i386/pr110792.c | 18 ++++++++++++++++++
3 files changed, 46 insertions(+), 6 deletions(-)
create mode 100644 gcc/testsuite/g++.target/i386/pr110792.C
create mode 100644 gcc/testsuite/gcc.target/i386/pr110792.c
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f3a3305..a71e837 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -14359,7 +14359,10 @@
emit_insn (gen_ix86_<insn>ti3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (TImode, operands[1]);
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ }
else
{
rtx amount = force_reg (QImode, operands[2]);
@@ -14394,7 +14397,10 @@
emit_insn (gen_ix86_<insn>di3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (DImode, operands[1]);
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ }
else
FAIL;
@@ -14562,8 +14568,8 @@
})
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
(const_int 32)))]
"!TARGET_64BIT"
"#"
@@ -14580,8 +14586,8 @@
})
(define_insn_and_split "<insn>64ti2_doubleword"
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
(const_int 64)))]
"TARGET_64BIT"
"#"
diff --git a/gcc/testsuite/g++.target/i386/pr110792.C b/gcc/testsuite/g++.target/i386/pr110792.C
new file mode 100644
index 0000000..ce21a7a
--- /dev/null
+++ b/gcc/testsuite/g++.target/i386/pr110792.C
@@ -0,0 +1,16 @@
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2" } */
+
+template <int ROT, typename T>
+inline T rotr(T input)
+{
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
+}
+
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
+unsigned long long whirl(unsigned char x0)
+{
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
+ return rotr<32>(s4);
+}
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr110792.c b/gcc/testsuite/gcc.target/i386/pr110792.c
new file mode 100644
index 0000000..b65125c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr110792.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O2" } */
+
+static inline unsigned __int128 rotr(unsigned __int128 input)
+{
+ return ((input >> 64) | (input << (64)));
+}
+
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
+unsigned __int128 whirl(unsigned char x0)
+{
+ register int t __asm("rdi") = x0&0xFF;
+ const unsigned __int128 s4 = WHIRL_S[t];
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
+ asm("":::"memory");
+ return tt;
+}
+/* { dg-final { scan-assembler-not "movq\tWHIRL_S\\+8\\(%rdi\\), %rdi" } } */
--
2.41.0
+11 -6
View File
@@ -24,8 +24,8 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-aarch64
pkgver=13.1.1_git20230722
# i.e. 13.1.1, must match gcc/BASE-VER
pkgver=13.2.1_git20231014
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
_pkgsnap="${pkgver##*_git}"
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-aarch64
pkgrel=1
pkgrel=0
pkgdesc="Stage2 cross-compiler for aarch64"
url="https://gcc.gnu.org"
arch="x86_64"
@@ -268,9 +268,13 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0035-Fix-ICE-observed-in-PR110280.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
# secfixes:
# 13.2.1_git20231014-r0:
# - CVE-2023-4039
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase%%.*}-$_pkgsnap
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
@@ -428,6 +432,7 @@ package() {
make -j1 DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/cc
ln -s ${CTARGET}-gcc "$pkgdir"/usr/bin/${CTARGET}-cc
if $LANG_JIT; then
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
@@ -782,7 +787,7 @@ gdb() {
}
sha512sums="
284719308cad4546ebd85934fb9f12112e8f1a4c3e5beea0760da1f73509907c194e7c133e6e755b6148bd1c51a72c071ac0d16b05641d901af7105461686655 gcc-13-20230722.tar.xz
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -817,5 +822,5 @@ d47b559075f40d526235f47b91da1d0cf6bfe6c5b7311bbfe08af9dd6e8f27e6c7cd82e3b2d529aa
b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95e21c9ffbf2412193f8b9fc89a4c36fa5a6a041661ac7399d 0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
048d767f4477c92ee6835850d13063ede21c0be751d0945c94445d04054e134cdc617eeb0b1ac8c892a604d8644580fcfebeccaf537d6b7380558ac6378e445a 0035-Fix-ICE-observed-in-PR110280.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
@@ -1,61 +0,0 @@
From ef740fff300fd9eb8285fb5611f6205705ee54ec Mon Sep 17 00:00:00 2001
From: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
Date: Fri, 23 Jun 2023 15:27:17 +0530
Subject: [PATCH 35/35] Fix ICE observed in PR110280.
gcc/ChangeLog:
PR tree-optimization/110280
* match.pd (vec_perm_expr(v, v, mask) -> v): Explicitly build vector
using build_vector_from_val with the element of input operand, and
mask's type if operand and mask's types don't match.
gcc/testsuite/ChangeLog:
PR tree-optimization/110280
* gcc.target/aarch64/sve/pr110280.c: New test.
---
gcc/match.pd | 9 ++++++++-
gcc/testsuite/gcc.target/aarch64/sve/pr110280.c | 12 ++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
diff --git a/gcc/match.pd b/gcc/match.pd
index 91182448250..c3bb4fbc0a7 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -8292,7 +8292,14 @@ and,
(simplify
(vec_perm vec_same_elem_p@0 @0 @1)
- @0)
+ (if (types_match (type, TREE_TYPE (@0)))
+ @0
+ (with
+ {
+ tree elem = uniform_vector_p (@0);
+ }
+ (if (elem)
+ { build_vector_from_val (type, elem); }))))
/* Push VEC_PERM earlier if that may help FMA perception (PR101895). */
(simplify
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
new file mode 100644
index 00000000000..d3279f38362
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -fdump-tree-optimized" } */
+
+#include "arm_sve.h"
+
+svuint32_t l()
+{
+ _Alignas(16) const unsigned int lanes[4] = {0, 0, 0, 0};
+ return svld1rq_u32(svptrue_b8(), lanes);
+}
+
+/* { dg-final { scan-tree-dump-not "VEC_PERM_EXPR" "optimized" } } */
--
2.41.0
@@ -1,61 +0,0 @@
From ef740fff300fd9eb8285fb5611f6205705ee54ec Mon Sep 17 00:00:00 2001
From: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
Date: Fri, 23 Jun 2023 15:27:17 +0530
Subject: [PATCH 35/35] Fix ICE observed in PR110280.
gcc/ChangeLog:
PR tree-optimization/110280
* match.pd (vec_perm_expr(v, v, mask) -> v): Explicitly build vector
using build_vector_from_val with the element of input operand, and
mask's type if operand and mask's types don't match.
gcc/testsuite/ChangeLog:
PR tree-optimization/110280
* gcc.target/aarch64/sve/pr110280.c: New test.
---
gcc/match.pd | 9 ++++++++-
gcc/testsuite/gcc.target/aarch64/sve/pr110280.c | 12 ++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
diff --git a/gcc/match.pd b/gcc/match.pd
index 91182448250..c3bb4fbc0a7 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -8292,7 +8292,14 @@ and,
(simplify
(vec_perm vec_same_elem_p@0 @0 @1)
- @0)
+ (if (types_match (type, TREE_TYPE (@0)))
+ @0
+ (with
+ {
+ tree elem = uniform_vector_p (@0);
+ }
+ (if (elem)
+ { build_vector_from_val (type, elem); }))))
/* Push VEC_PERM earlier if that may help FMA perception (PR101895). */
(simplify
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
new file mode 100644
index 00000000000..d3279f38362
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -fdump-tree-optimized" } */
+
+#include "arm_sve.h"
+
+svuint32_t l()
+{
+ _Alignas(16) const unsigned int lanes[4] = {0, 0, 0, 0};
+ return svld1rq_u32(svptrue_b8(), lanes);
+}
+
+/* { dg-final { scan-tree-dump-not "VEC_PERM_EXPR" "optimized" } } */
--
2.41.0
@@ -0,0 +1,186 @@
https://gcc.gnu.org/PR110792
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=790c1f60a5662b16eb19eb4b81922995863c7571
https://github.com/randombit/botan/issues/3637
From 85628c5653ff40963158a24c60eeec6a3b5a8e56 Mon Sep 17 00:00:00 2001
From: Roger Sayle <roger@nextmovesoftware.com>
Date: Thu, 3 Aug 2023 07:12:04 +0100
Subject: [PATCH] PR target/110792: Early clobber issues with
rot32di2_doubleword on i386.
This patch is a conservative fix for PR target/110792, a wrong-code
regression affecting doubleword rotations by BITS_PER_WORD, which
effectively swaps the highpart and lowpart words, when the source to be
rotated resides in memory. The issue is that if the register used to
hold the lowpart of the destination is mentioned in the address of
the memory operand, the current define_insn_and_split unintentionally
clobbers it before reading the highpart.
Hence, for the testcase, the incorrectly generated code looks like:
salq $4, %rdi // calculate address
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
Traditionally, the textbook way to fix this would be to add an
explicit early clobber to the instruction's constraints.
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
(const_int 32)))]
but unfortunately this currently generates significantly worse code,
due to a strange choice of reloads (effectively memcpy), which ends up
looking like:
salq $4, %rdi // calculate address
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
movq -8(%rsp), %rdi // load highpart
movq -16(%rsp), %rbp // load lowpart
Note that reload's "&" doesn't distinguish between the memory being
early clobbered, vs the registers used in an addressing mode being
early clobbered.
The fix proposed in this patch is to remove the third alternative, that
allowed offsetable memory as an operand, forcing reload to place the
operand into a register before the rotation. This results in:
salq $4, %rdi
movq WHIRL_S(%rdi), %rax
movq WHIRL_S+8(%rdi), %rdi
movq %rax, %rbp
I believe there's a more advanced solution, by swapping the order of
the loads (if first destination register is mentioned in the address),
or inserting a lea insn (if both destination registers are mentioned
in the address), but this fix is a minimal "safe" solution, that
should hopefully be suitable for backporting.
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
PR target/110792
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
place operand in a register before gen_<insn>64ti2_doubleword.
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
operand in a register before gen_<insn>32di2_doubleword.
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
(<any_rotate>64ti2_doubleword): Likewise.
gcc/testsuite/ChangeLog
PR target/110792
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
* gcc.target/i386/pr110792.c: New 64-bit C test case.
(cherry picked from commit 790c1f60a5662b16eb19eb4b81922995863c7571)
---
gcc/config/i386/i386.md | 18 ++++++++++++------
gcc/testsuite/g++.target/i386/pr110792.C | 16 ++++++++++++++++
gcc/testsuite/gcc.target/i386/pr110792.c | 18 ++++++++++++++++++
3 files changed, 46 insertions(+), 6 deletions(-)
create mode 100644 gcc/testsuite/g++.target/i386/pr110792.C
create mode 100644 gcc/testsuite/gcc.target/i386/pr110792.c
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f3a3305..a71e837 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -14359,7 +14359,10 @@
emit_insn (gen_ix86_<insn>ti3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (TImode, operands[1]);
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ }
else
{
rtx amount = force_reg (QImode, operands[2]);
@@ -14394,7 +14397,10 @@
emit_insn (gen_ix86_<insn>di3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (DImode, operands[1]);
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ }
else
FAIL;
@@ -14562,8 +14568,8 @@
})
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
(const_int 32)))]
"!TARGET_64BIT"
"#"
@@ -14580,8 +14586,8 @@
})
(define_insn_and_split "<insn>64ti2_doubleword"
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
(const_int 64)))]
"TARGET_64BIT"
"#"
diff --git a/gcc/testsuite/g++.target/i386/pr110792.C b/gcc/testsuite/g++.target/i386/pr110792.C
new file mode 100644
index 0000000..ce21a7a
--- /dev/null
+++ b/gcc/testsuite/g++.target/i386/pr110792.C
@@ -0,0 +1,16 @@
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2" } */
+
+template <int ROT, typename T>
+inline T rotr(T input)
+{
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
+}
+
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
+unsigned long long whirl(unsigned char x0)
+{
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
+ return rotr<32>(s4);
+}
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr110792.c b/gcc/testsuite/gcc.target/i386/pr110792.c
new file mode 100644
index 0000000..b65125c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr110792.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O2" } */
+
+static inline unsigned __int128 rotr(unsigned __int128 input)
+{
+ return ((input >> 64) | (input << (64)));
+}
+
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
+unsigned __int128 whirl(unsigned char x0)
+{
+ register int t __asm("rdi") = x0&0xFF;
+ const unsigned __int128 s4 = WHIRL_S[t];
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
+ asm("":::"memory");
+ return tt;
+}
+/* { dg-final { scan-assembler-not "movq\tWHIRL_S\\+8\\(%rdi\\), %rdi" } } */
--
2.41.0
+11 -6
View File
@@ -24,8 +24,8 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-armv7
pkgver=13.1.1_git20230722
# i.e. 13.1.1, must match gcc/BASE-VER
pkgver=13.2.1_git20231014
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
_pkgsnap="${pkgver##*_git}"
@@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}"
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-armv7
pkgrel=1
pkgrel=0
pkgdesc="Stage2 cross-compiler for armv7"
url="https://gcc.gnu.org"
arch="x86_64"
@@ -268,9 +268,13 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0035-Fix-ICE-observed-in-PR110280.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
# secfixes:
# 13.2.1_git20231014-r0:
# - CVE-2023-4039
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase%%.*}-$_pkgsnap
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
@@ -428,6 +432,7 @@ package() {
make -j1 DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/cc
ln -s ${CTARGET}-gcc "$pkgdir"/usr/bin/${CTARGET}-cc
if $LANG_JIT; then
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
@@ -782,7 +787,7 @@ gdb() {
}
sha512sums="
284719308cad4546ebd85934fb9f12112e8f1a4c3e5beea0760da1f73509907c194e7c133e6e755b6148bd1c51a72c071ac0d16b05641d901af7105461686655 gcc-13-20230722.tar.xz
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -817,5 +822,5 @@ d47b559075f40d526235f47b91da1d0cf6bfe6c5b7311bbfe08af9dd6e8f27e6c7cd82e3b2d529aa
b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95e21c9ffbf2412193f8b9fc89a4c36fa5a6a041661ac7399d 0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
048d767f4477c92ee6835850d13063ede21c0be751d0945c94445d04054e134cdc617eeb0b1ac8c892a604d8644580fcfebeccaf537d6b7380558ac6378e445a 0035-Fix-ICE-observed-in-PR110280.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
@@ -1,61 +0,0 @@
From ef740fff300fd9eb8285fb5611f6205705ee54ec Mon Sep 17 00:00:00 2001
From: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
Date: Fri, 23 Jun 2023 15:27:17 +0530
Subject: [PATCH 35/35] Fix ICE observed in PR110280.
gcc/ChangeLog:
PR tree-optimization/110280
* match.pd (vec_perm_expr(v, v, mask) -> v): Explicitly build vector
using build_vector_from_val with the element of input operand, and
mask's type if operand and mask's types don't match.
gcc/testsuite/ChangeLog:
PR tree-optimization/110280
* gcc.target/aarch64/sve/pr110280.c: New test.
---
gcc/match.pd | 9 ++++++++-
gcc/testsuite/gcc.target/aarch64/sve/pr110280.c | 12 ++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
diff --git a/gcc/match.pd b/gcc/match.pd
index 91182448250..c3bb4fbc0a7 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -8292,7 +8292,14 @@ and,
(simplify
(vec_perm vec_same_elem_p@0 @0 @1)
- @0)
+ (if (types_match (type, TREE_TYPE (@0)))
+ @0
+ (with
+ {
+ tree elem = uniform_vector_p (@0);
+ }
+ (if (elem)
+ { build_vector_from_val (type, elem); }))))
/* Push VEC_PERM earlier if that may help FMA perception (PR101895). */
(simplify
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
new file mode 100644
index 00000000000..d3279f38362
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pr110280.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -fdump-tree-optimized" } */
+
+#include "arm_sve.h"
+
+svuint32_t l()
+{
+ _Alignas(16) const unsigned int lanes[4] = {0, 0, 0, 0};
+ return svld1rq_u32(svptrue_b8(), lanes);
+}
+
+/* { dg-final { scan-tree-dump-not "VEC_PERM_EXPR" "optimized" } } */
--
2.41.0
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,186 @@
https://gcc.gnu.org/PR110792
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=790c1f60a5662b16eb19eb4b81922995863c7571
https://github.com/randombit/botan/issues/3637
From 85628c5653ff40963158a24c60eeec6a3b5a8e56 Mon Sep 17 00:00:00 2001
From: Roger Sayle <roger@nextmovesoftware.com>
Date: Thu, 3 Aug 2023 07:12:04 +0100
Subject: [PATCH] PR target/110792: Early clobber issues with
rot32di2_doubleword on i386.
This patch is a conservative fix for PR target/110792, a wrong-code
regression affecting doubleword rotations by BITS_PER_WORD, which
effectively swaps the highpart and lowpart words, when the source to be
rotated resides in memory. The issue is that if the register used to
hold the lowpart of the destination is mentioned in the address of
the memory operand, the current define_insn_and_split unintentionally
clobbers it before reading the highpart.
Hence, for the testcase, the incorrectly generated code looks like:
salq $4, %rdi // calculate address
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
Traditionally, the textbook way to fix this would be to add an
explicit early clobber to the instruction's constraints.
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
(const_int 32)))]
but unfortunately this currently generates significantly worse code,
due to a strange choice of reloads (effectively memcpy), which ends up
looking like:
salq $4, %rdi // calculate address
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
movq -8(%rsp), %rdi // load highpart
movq -16(%rsp), %rbp // load lowpart
Note that reload's "&" doesn't distinguish between the memory being
early clobbered, vs the registers used in an addressing mode being
early clobbered.
The fix proposed in this patch is to remove the third alternative, that
allowed offsetable memory as an operand, forcing reload to place the
operand into a register before the rotation. This results in:
salq $4, %rdi
movq WHIRL_S(%rdi), %rax
movq WHIRL_S+8(%rdi), %rdi
movq %rax, %rbp
I believe there's a more advanced solution, by swapping the order of
the loads (if first destination register is mentioned in the address),
or inserting a lea insn (if both destination registers are mentioned
in the address), but this fix is a minimal "safe" solution, that
should hopefully be suitable for backporting.
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
PR target/110792
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
place operand in a register before gen_<insn>64ti2_doubleword.
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
operand in a register before gen_<insn>32di2_doubleword.
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
(<any_rotate>64ti2_doubleword): Likewise.
gcc/testsuite/ChangeLog
PR target/110792
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
* gcc.target/i386/pr110792.c: New 64-bit C test case.
(cherry picked from commit 790c1f60a5662b16eb19eb4b81922995863c7571)
---
gcc/config/i386/i386.md | 18 ++++++++++++------
gcc/testsuite/g++.target/i386/pr110792.C | 16 ++++++++++++++++
gcc/testsuite/gcc.target/i386/pr110792.c | 18 ++++++++++++++++++
3 files changed, 46 insertions(+), 6 deletions(-)
create mode 100644 gcc/testsuite/g++.target/i386/pr110792.C
create mode 100644 gcc/testsuite/gcc.target/i386/pr110792.c
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f3a3305..a71e837 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -14359,7 +14359,10 @@
emit_insn (gen_ix86_<insn>ti3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (TImode, operands[1]);
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ }
else
{
rtx amount = force_reg (QImode, operands[2]);
@@ -14394,7 +14397,10 @@
emit_insn (gen_ix86_<insn>di3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (DImode, operands[1]);
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ }
else
FAIL;
@@ -14562,8 +14568,8 @@
})
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
(const_int 32)))]
"!TARGET_64BIT"
"#"
@@ -14580,8 +14586,8 @@
})
(define_insn_and_split "<insn>64ti2_doubleword"
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
(const_int 64)))]
"TARGET_64BIT"
"#"
diff --git a/gcc/testsuite/g++.target/i386/pr110792.C b/gcc/testsuite/g++.target/i386/pr110792.C
new file mode 100644
index 0000000..ce21a7a
--- /dev/null
+++ b/gcc/testsuite/g++.target/i386/pr110792.C
@@ -0,0 +1,16 @@
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2" } */
+
+template <int ROT, typename T>
+inline T rotr(T input)
+{
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
+}
+
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
+unsigned long long whirl(unsigned char x0)
+{
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
+ return rotr<32>(s4);
+}
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr110792.c b/gcc/testsuite/gcc.target/i386/pr110792.c
new file mode 100644
index 0000000..b65125c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr110792.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O2" } */
+
+static inline unsigned __int128 rotr(unsigned __int128 input)
+{
+ return ((input >> 64) | (input << (64)));
+}
+
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
+unsigned __int128 whirl(unsigned char x0)
+{
+ register int t __asm("rdi") = x0&0xFF;
+ const unsigned __int128 s4 = WHIRL_S[t];
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
+ asm("":::"memory");
+ return tt;
+}
+/* { dg-final { scan-assembler-not "movq\tWHIRL_S\\+8\\(%rdi\\), %rdi" } } */
--
2.41.0
@@ -1,8 +1,8 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen gcc-armhf
# Generator: pmbootstrap aportgen gcc-x86
# Based on: main/gcc (from Alpine)
CTARGET_ARCH=armhf
CTARGET_ARCH=x86
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
LANG_D=false
LANG_OBJC=false
@@ -23,9 +23,9 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-armhf
pkgver=13.1.1_git20230722
# i.e. 13.1.1, must match gcc/BASE-VER
pkgname=gcc-x86
pkgver=13.2.1_git20231014
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
_pkgsnap="${pkgver##*_git}"
@@ -33,17 +33,17 @@ _pkgsnap="${pkgver##*_git}"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-armhf
pkgrel=1
pkgdesc="Stage2 cross-compiler for armhf"
pkgname=gcc-x86
pkgrel=0
pkgdesc="Stage2 cross-compiler for x86"
url="https://gcc.gnu.org"
arch="x86_64"
license="GPL-2.0-or-later AND LGPL-2.1-or-later"
_gccrel=$pkgver-r$pkgrel
depends="binutils-armhf mpc1"
depends="binutils-x86 mpc1"
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-armhf binutils-armhf"
subpackages="g++-armhf:gpp libstdc++-dev-armhf:libcxx_dev"
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-x86 binutils-x86"
subpackages="g++-x86:gpp libstdc++-dev-x86:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
@@ -268,9 +268,13 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0035-Fix-ICE-observed-in-PR110280.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
# secfixes:
# 13.2.1_git20231014-r0:
# - CVE-2023-4039
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase%%.*}-$_pkgsnap
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
@@ -428,6 +432,7 @@ package() {
make -j1 DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/cc
ln -s ${CTARGET}-gcc "$pkgdir"/usr/bin/${CTARGET}-cc
if $LANG_JIT; then
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
@@ -782,7 +787,7 @@ gdb() {
}
sha512sums="
284719308cad4546ebd85934fb9f12112e8f1a4c3e5beea0760da1f73509907c194e7c133e6e755b6148bd1c51a72c071ac0d16b05641d901af7105461686655 gcc-13-20230722.tar.xz
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -817,5 +822,5 @@ d47b559075f40d526235f47b91da1d0cf6bfe6c5b7311bbfe08af9dd6e8f27e6c7cd82e3b2d529aa
b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95e21c9ffbf2412193f8b9fc89a4c36fa5a6a041661ac7399d 0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
048d767f4477c92ee6835850d13063ede21c0be751d0945c94445d04054e134cdc617eeb0b1ac8c892a604d8644580fcfebeccaf537d6b7380558ac6378e445a 0035-Fix-ICE-observed-in-PR110280.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,186 @@
https://gcc.gnu.org/PR110792
https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=790c1f60a5662b16eb19eb4b81922995863c7571
https://github.com/randombit/botan/issues/3637
From 85628c5653ff40963158a24c60eeec6a3b5a8e56 Mon Sep 17 00:00:00 2001
From: Roger Sayle <roger@nextmovesoftware.com>
Date: Thu, 3 Aug 2023 07:12:04 +0100
Subject: [PATCH] PR target/110792: Early clobber issues with
rot32di2_doubleword on i386.
This patch is a conservative fix for PR target/110792, a wrong-code
regression affecting doubleword rotations by BITS_PER_WORD, which
effectively swaps the highpart and lowpart words, when the source to be
rotated resides in memory. The issue is that if the register used to
hold the lowpart of the destination is mentioned in the address of
the memory operand, the current define_insn_and_split unintentionally
clobbers it before reading the highpart.
Hence, for the testcase, the incorrectly generated code looks like:
salq $4, %rdi // calculate address
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
Traditionally, the textbook way to fix this would be to add an
explicit early clobber to the instruction's constraints.
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
(const_int 32)))]
but unfortunately this currently generates significantly worse code,
due to a strange choice of reloads (effectively memcpy), which ends up
looking like:
salq $4, %rdi // calculate address
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
movq -8(%rsp), %rdi // load highpart
movq -16(%rsp), %rbp // load lowpart
Note that reload's "&" doesn't distinguish between the memory being
early clobbered, vs the registers used in an addressing mode being
early clobbered.
The fix proposed in this patch is to remove the third alternative, that
allowed offsetable memory as an operand, forcing reload to place the
operand into a register before the rotation. This results in:
salq $4, %rdi
movq WHIRL_S(%rdi), %rax
movq WHIRL_S+8(%rdi), %rdi
movq %rax, %rbp
I believe there's a more advanced solution, by swapping the order of
the loads (if first destination register is mentioned in the address),
or inserting a lea insn (if both destination registers are mentioned
in the address), but this fix is a minimal "safe" solution, that
should hopefully be suitable for backporting.
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog
PR target/110792
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
place operand in a register before gen_<insn>64ti2_doubleword.
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
operand in a register before gen_<insn>32di2_doubleword.
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
(<any_rotate>64ti2_doubleword): Likewise.
gcc/testsuite/ChangeLog
PR target/110792
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
* gcc.target/i386/pr110792.c: New 64-bit C test case.
(cherry picked from commit 790c1f60a5662b16eb19eb4b81922995863c7571)
---
gcc/config/i386/i386.md | 18 ++++++++++++------
gcc/testsuite/g++.target/i386/pr110792.C | 16 ++++++++++++++++
gcc/testsuite/gcc.target/i386/pr110792.c | 18 ++++++++++++++++++
3 files changed, 46 insertions(+), 6 deletions(-)
create mode 100644 gcc/testsuite/g++.target/i386/pr110792.C
create mode 100644 gcc/testsuite/gcc.target/i386/pr110792.c
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index f3a3305..a71e837 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -14359,7 +14359,10 @@
emit_insn (gen_ix86_<insn>ti3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (TImode, operands[1]);
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
+ }
else
{
rtx amount = force_reg (QImode, operands[2]);
@@ -14394,7 +14397,10 @@
emit_insn (gen_ix86_<insn>di3_doubleword
(operands[0], operands[1], operands[2]));
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ {
+ operands[1] = force_reg (DImode, operands[1]);
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
+ }
else
FAIL;
@@ -14562,8 +14568,8 @@
})
(define_insn_and_split "<insn>32di2_doubleword"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
(const_int 32)))]
"!TARGET_64BIT"
"#"
@@ -14580,8 +14586,8 @@
})
(define_insn_and_split "<insn>64ti2_doubleword"
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
(const_int 64)))]
"TARGET_64BIT"
"#"
diff --git a/gcc/testsuite/g++.target/i386/pr110792.C b/gcc/testsuite/g++.target/i386/pr110792.C
new file mode 100644
index 0000000..ce21a7a
--- /dev/null
+++ b/gcc/testsuite/g++.target/i386/pr110792.C
@@ -0,0 +1,16 @@
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O2" } */
+
+template <int ROT, typename T>
+inline T rotr(T input)
+{
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
+}
+
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
+unsigned long long whirl(unsigned char x0)
+{
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
+ return rotr<32>(s4);
+}
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr110792.c b/gcc/testsuite/gcc.target/i386/pr110792.c
new file mode 100644
index 0000000..b65125c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr110792.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O2" } */
+
+static inline unsigned __int128 rotr(unsigned __int128 input)
+{
+ return ((input >> 64) | (input << (64)));
+}
+
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
+unsigned __int128 whirl(unsigned char x0)
+{
+ register int t __asm("rdi") = x0&0xFF;
+ const unsigned __int128 s4 = WHIRL_S[t];
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
+ asm("":::"memory");
+ return tt;
+}
+/* { dg-final { scan-assembler-not "movq\tWHIRL_S\\+8\\(%rdi\\), %rdi" } } */
--
2.41.0
@@ -1,8 +1,8 @@
# Automatically generated aport, do not edit!
# Generator: pmbootstrap aportgen gcc-riscv64
# Generator: pmbootstrap aportgen gcc-x86_64
# Based on: main/gcc (from Alpine)
CTARGET_ARCH=riscv64
CTARGET_ARCH=x86_64
CTARGET="$(arch_to_hostspec ${CTARGET_ARCH})"
LANG_D=false
LANG_OBJC=false
@@ -23,9 +23,9 @@ CBUILDROOT="/"
_cross_configure="--disable-bootstrap --with-sysroot=/usr/$CTARGET"
pkgname=gcc-riscv64
pkgver=13.1.1_git20230722
# i.e. 13.1.1, must match gcc/BASE-VER
pkgname=gcc-x86_64
pkgver=13.2.1_git20231014
# i.e. 13.2.1, must match gcc/BASE-VER
_pkgbase="${pkgver%%_git*}"
# date component from snapshots
_pkgsnap="${pkgver##*_git}"
@@ -33,17 +33,17 @@ _pkgsnap="${pkgver##*_git}"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname=gcc-riscv64
pkgrel=1
pkgdesc="Stage2 cross-compiler for riscv64"
pkgname=gcc-x86_64
pkgrel=0
pkgdesc="Stage2 cross-compiler for x86_64"
url="https://gcc.gnu.org"
arch="x86_64"
arch="aarch64"
license="GPL-2.0-or-later AND LGPL-2.1-or-later"
_gccrel=$pkgver-r$pkgrel
depends="binutils-riscv64 mpc1"
depends="binutils-x86_64 mpc1"
makedepends_build="gcc g++ bison flex texinfo gawk zip gmp-dev mpfr-dev mpc1-dev zlib-dev"
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-riscv64 binutils-riscv64"
subpackages="g++-riscv64:gpp libstdc++-dev-riscv64:libcxx_dev"
makedepends_host="linux-headers gmp-dev mpfr-dev mpc1-dev isl-dev zlib-dev musl-dev-x86_64 binutils-x86_64"
subpackages="g++-x86_64:gpp libstdc++-dev-x86_64:libcxx_dev"
[ "$CHOST" = "$CTARGET" ] && subpackages="gcc-gdb gcc-doc$_target"
replaces="libstdc++ binutils"
@@ -268,9 +268,13 @@ source="https://dev.alpinelinux.org/archive/gcc/${_pkgbase%%.*}-$_pkgsnap/gcc-${
0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
0033-libphobos-do-not-use-LFS64-symbols.patch
0034-libgo-fix-lfs64-use.patch
0035-Fix-ICE-observed-in-PR110280.patch
0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
# secfixes:
# 13.2.1_git20231014-r0:
# - CVE-2023-4039
# we build out-of-tree
_gccdir="$srcdir"/gcc-${_pkgbase%%.*}-$_pkgsnap
_gcclibdir="/usr/lib/gcc/$CTARGET/${_pkgbase:-$pkgver}"
@@ -428,6 +432,7 @@ package() {
make -j1 DESTDIR="$pkgdir" install
ln -s gcc "$pkgdir"/usr/bin/cc
ln -s ${CTARGET}-gcc "$pkgdir"/usr/bin/${CTARGET}-cc
if $LANG_JIT; then
make -C "$_builddir"/libgccjit-build/gcc DESTDIR="$pkgdir" jit.install-common
@@ -782,7 +787,7 @@ gdb() {
}
sha512sums="
284719308cad4546ebd85934fb9f12112e8f1a4c3e5beea0760da1f73509907c194e7c133e6e755b6148bd1c51a72c071ac0d16b05641d901af7105461686655 gcc-13-20230722.tar.xz
406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 gcc-13-20231014.tar.xz
1ecffba1b07d60e1b4422302b032bbea918b674c8e12b30aa6965b544d700ce86b61e9f7b8d402c6caf59257f491a394dd0912f0948565d6eae9335ee54f3b35 0001-posix_memalign.patch
163f282455b6a4df33f011bcd8b0440566ba0ffaeeab30d8ac52d39948980a56881ca0eff60687129d59556389a58b9d64e7768750bd70b1fe0fedbc9fc30dc2 0002-gcc-poison-system-directories.patch
3f24bb6a50d3c45b71ea05590e32fe3e69b91377ab185352891d5035c76ed193117c6d0b314a4c364bcf136b9a9dd5c926d6c7c30ab436976c121ebfea8d3ddd 0003-specs-turn-on-Wl-z-now-by-default.patch
@@ -817,5 +822,5 @@ d47b559075f40d526235f47b91da1d0cf6bfe6c5b7311bbfe08af9dd6e8f27e6c7cd82e3b2d529aa
b325035cb7122d79c6b42ca6d3fc9e02319ed2f7cddb0639dff25d2798d2ce63812cd623462cdf95e21c9ffbf2412193f8b9fc89a4c36fa5a6a041661ac7399d 0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
c474f34e6f9a4239d486a65141a133dbe8ce91427d502a57a9fd6eb403478a2b5715ba74f24c1cc0761e16eec77ba2c1ca921fb7d7bc1e040fc3703fc9559e75 0033-libphobos-do-not-use-LFS64-symbols.patch
c4482ffc36e7894b2140800159f4cbc9a3e9011e43a69b69f4fa92d5a11e2ee645c7e21df4423dd1e0636e8890849a5719647bfbdf84f951d638f8f488cb718c 0034-libgo-fix-lfs64-use.patch
048d767f4477c92ee6835850d13063ede21c0be751d0945c94445d04054e134cdc617eeb0b1ac8c892a604d8644580fcfebeccaf537d6b7380558ac6378e445a 0035-Fix-ICE-observed-in-PR110280.patch
cc1e10ac6e72db816f09325e301103109cc212a6f3de3ce0b9b038d149233c467319d203941695dbf3d7b9e2dcbbcd17609cdb056e831fcc323cd592423882d8 0036-PR110792-Early-clobber-issues-with-rot32di2-on-i386.patch
"
File renamed without changes.
@@ -1,156 +0,0 @@
2013-12-30 Magnus Granberg <zorry@gentoo.org>
* gcc/configure.ac Add --enable-esp and define ENABLE_ESP.
Check if we support crtbeginP and define ENABLE_CRTBEGINP.
* gcc/configure Regenerated
--- a/gcc/configure.ac 2011-11-18 11:52:32.000000000 +0100
+++ b/gcc/configure.ac 2012-10-02 17:39:15.649526241 +0200
@@ -5130,6 +5237,55 @@ if test x"${LINKER_HASH_STYLE}" != x; th
[The linker hash style])
fi
+# --------------
+# Esp checks
+# --------------
+
+# Check whether --enable-esp was given and target have the support.
+AC_ARG_ENABLE([esp],
+[AS_HELP_STRING([--enable-esp],
+ [Enable Stack protector and Position independent executable as
+ default if we have suppot for it when compiling
+ and link with -z now as default.
+ Linux targets supported i*86, x86_64, x32,
+ powerpc, powerpc64, ia64, arm and mips.])],
+ enable_esp=$enableval,
+ enable_esp=no)
+if test $enable_esp = yes ; then
+ AC_MSG_CHECKING(if $target support esp)
+ case "$target" in
+ i?86*-*-linux* | x86_64-*-linux* | powerpc*-*-linux* | mips-*-linux* | arm*-*-linux* | ia64-*-linux*)
+ enable_esp=yes
+ AC_DEFINE(ENABLE_ESP, 1,
+ [Define if your target support esp and you have enable it.])
+ ;;
+ *)
+ enable_esp=no
+ ;;
+ esac
+AC_MSG_RESULT($enable_esp)
+fi
+AC_SUBST([enable_esp])
+if test $enable_esp = yes ; then
+ AC_MSG_CHECKING(checking for crtbeginP.o support)
+ if test x$enable_esp = xyes ; then
+ case "$target" in
+ ia64*-*-linux*)
+ enable_crtbeginP=no ;;
+ *-*-linux*)
+ if test x$gcc_cv_ld_pie = xyes && test x$lt_cv_prog_compiler_static_works = xyes; then
+ enable_crtbeginP=yes
+ AC_DEFINE(ENABLE_CRTBEGINP, 1,
+ [Define if your compiler will support crtbeginP.])
+ fi
+ ;;
+ *) enable_crtbeginP=no ;;
+ esac
+ fi
+ AC_MSG_RESULT($enable_crtbeginP)
+fi
+AC_SUBST([enable_crtbeginP])
+
# Configure the subdirectories
# AC_CONFIG_SUBDIRS($subdirs)
--- a/gcc/configure 2013-02-01 21:26:24.000000000 +0100
+++ b/gcc/configure 2013-02-12 01:59:20.000000000 +0100
@@ -600,6 +600,8 @@
ac_subst_vars='LTLIBOBJS
LIBOBJS
PICFLAG
+enable_crtbeginP
+enable_esp
enable_host_shared
enable_plugin
pluginlibs
@@ -920,6 +922,7 @@
enable_plugin
enable_libquadmath_support
with_linker_hash_style
+enable_esp
'
ac_precious_vars='build_alias
host_alias
@@ -1633,6 +1636,11 @@
--enable-plugin enable plugin support
--disable-libquadmath-support
disable libquadmath support for Fortran
+ --enable-esp Enable Stack protector and Position independent
+ executable as default if we have suppot for it when
+ compiling and link with -z now as default.
+ Linux targets supported i*86, x86_64, x32,
+ powerpc, powerpc64, ia64, arm and mips.
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -27419,6 +27427,59 @@
fi
+# --------------
+# Esp checks
+# --------------
+
+# Check whether --enable-esp was given and target have the support.
+# Check whether --enable-esp was given.
+if test "${enable_esp+set}" = set; then :
+ enableval=$enable_esp; enable_esp=$enableval
+else
+ enable_esp=no
+fi
+
+if test $enable_esp = yes ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $target support esp" >&5
+$as_echo_n "checking if $target support esp... " >&6; }
+ case "$target" in
+ i?86*-*-linux* | x86_64-*-linux* | powerpc*-*-linux* | mips*-*-linux* | arm*-*-linux* | ia64-*-linux*)
+ enable_esp=yes
+
+$as_echo "#define ENABLE_ESP 1" >>confdefs.h
+
+ ;;
+ *)
+ enable_esp=no
+ ;;
+ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_esp" >&5
+$as_echo "$enable_esp" >&6; }
+fi
+
+if test $enable_esp = yes ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking checking for crtbeginP.o support" >&5
+$as_echo_n "checking checking for crtbeginP.o support... " >&6; }
+ if test x$enable_esp = xyes ; then
+ case "$target" in
+ ia64*-*-linux*)
+ enable_crtbeginP=no ;;
+ *-*-linux*)
+ if test x$gcc_cv_ld_pie = xyes && test x$lt_cv_prog_compiler_static_works = xyes; then
+ enable_crtbeginP=yes
+
+$as_echo "#define ENABLE_CRTBEGINP 1" >>confdefs.h
+
+ fi
+ ;;
+ *) enable_crtbeginP=no ;;
+ esac
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_crtbeginP" >&5
+$as_echo "$enable_crtbeginP" >&6; }
+fi
+
+
# Configure the subdirectories
# AC_CONFIG_SUBDIRS($subdirs)
@@ -1,32 +0,0 @@
2013-02-13 Magnus Granberg <zorry@gentoo.org>
* gcc/config.in Add ENABLE_CRTBEGINP, ENABLE_ESP
--- ./gcc/config.in 2009-04-21 11:08:08.000000000 +0200
+++ ./gcc/config.in 2009-05-12 00:10:08.000000000 +0200
@@ -46,6 +46,12 @@
#endif
+/* Define to 1 to enable crtbeginP.o. */
+#ifndef USED_FOR_TARGET
+#undef ENABLE_CRTBEGINP
+#endif
+
+
/* Define to 1 to specify that we are using the BID decimal floating point
format instead of DPD */
#ifndef USED_FOR_TARGET
@@ -65,6 +65,12 @@
#endif
+/* Define to 1 to enable esp. */
+#ifndef USED_FOR_TARGET
+#undef ENABLE_ESP
+#endif
+
+
/* Define to 1 to enable fixed-point arithmetic extension to C. */
#ifndef USED_FOR_TARGET
#undef ENABLE_FIXED_POINT
@@ -1,96 +0,0 @@
2012-01-17 Magnus Granberg <zorry@gentoo.org>
* gcc/Makefile.in Add -fno-PIE. to ALL_CFLAGS and
ALL_CXXFLAGS if enable_esp yes.
Echo enable_esp and enable_crtbeginP to tmp-libgcc.mvars.
* libgcc/Makefile.in Add crtbeginP.o to EXTRA_PARTS if enable_crtbeginP yes
We add new file crtbeginP.o if enable_crtbeginP yes
Add -fno-PIE. to CRTSTUFF_CFLAGS.
--- a/gcc/Makefile.in 2011-11-09 02:20:14.000000000 +0100
+++ b/gcc/Makefile.in 2011-12-24 22:28:08.864804375 +0100
@@ -247,6 +247,14 @@ LINKER_FLAGS = $(CFLAGS)
endif
endif
+# We don't want to compile the compiler with -fPIE, it make PCH fail.
+enable_esp = @enable_esp@
+ifeq ($(enable_esp),yes)
+ESP_NOPIE_CFLAGS = -fno-PIE
+else
+ESP_NOPIE_CFLAGS=
+endif
+
# -------------------------------------------
# Programs which operate on the build machine
# -------------------------------------------
@@ -974,12 +982,13 @@ INTERNAL_CFLAGS = -DIN_GCC @CROSS@
# This is the variable actually used when we compile. If you change this,
# you probably want to update BUILD_CFLAGS in configure.ac
-ALL_CFLAGS = $(T_CFLAGS) $(CFLAGS-$@) \
+ALL_CFLAGS = $(ESP_NOPIE_CFLAGS) $(T_CFLAGS) $(CFLAGS-$@) \
$(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@
# The C++ version.
-ALL_CXXFLAGS = $(T_CFLAGS) $(CFLAGS-$@) $(CXXFLAGS) $(INTERNAL_CFLAGS) \
- $(COVERAGE_FLAGS) $(NOEXCEPTION_FLAGS) $(WARN_CXXFLAGS) @DEFS@
+ALL_CXXFLAGS = $(ESP_NOPIE_CFLAGS) $(T_CFLAGS) $(CFLAGS-$@) $(CXXFLAGS) \
+ $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(NOEXCEPTION_FLAGS) \
+ $(WARN_CXXFLAGS) @DEFS@
# Likewise. Put INCLUDES at the beginning: this way, if some autoconf macro
# puts -I options in CPPFLAGS, our include files in the srcdir will always
@@ -1814,6 +1823,8 @@ libgcc.mvars: config.status Makefile spe
echo GCC_CFLAGS = '$(GCC_CFLAGS)' >> tmp-libgcc.mvars
echo INHIBIT_LIBC_CFLAGS = '$(INHIBIT_LIBC_CFLAGS)' >> tmp-libgcc.mvars
echo TARGET_SYSTEM_ROOT = '$(TARGET_SYSTEM_ROOT)' >> tmp-libgcc.mvars
+ echo enable_esp = '$(enable_esp)' >> tmp-libgcc.mvars
+ echo enable_crtbeginP = '@enable_crtbeginP@' >> tmp-libgcc.mvars
mv tmp-libgcc.mvars libgcc.mvars
--- a/libgcc/Makefile.in 2011-11-22 04:01:02.000000000 +0100
+++ b/libgcc/Makefile.in 2011-12-25 15:18:22.449610631 +0100
@@ -219,6 +219,17 @@ else
DECNUMINC =
endif
+ifeq ($(enable_esp),yes)
+ESP_NOPIE_CFLAGS = -fno-PIE
+else
+ESP_NOPIE_CFLAGS=
+endif
+
+# We add crtbeginP.o to the EXTRA_PARTS list if enable_crtbeginP = yes
+ifeq ($(enable_crtbeginP),yes)
+EXTRA_PARTS += crtbeginP.o
+endif
+
# Options to use when compiling libgcc2.a.
#
LIBGCC2_DEBUG_CFLAGS = -g
@@ -279,7 +290,7 @@ INTERNAL_CFLAGS = $(CFLAGS) $(LIBGCC2_CF
CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
-finhibit-size-directive -fno-inline -fno-exceptions \
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
- -fno-stack-protector \
+ -fno-stack-protector $(ESP_NOPIE_CFLAGS) \
$(INHIBIT_LIBC_CFLAGS)
# Extra flags to use when compiling crt{begin,end}.o.
@@ -966,6 +977,13 @@ crtendS$(objext): $(srcdir)/crtstuff.c
# This is a version of crtbegin for -static links.
crtbeginT$(objext): $(srcdir)/crtstuff.c
$(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $< -DCRT_BEGIN -DCRTSTUFFT_O
+
+# This is a version of crtbegin for -static -fPIE links.
+ifeq ($(enable_crtbeginP),yes)
+crtbeginP$(objext): $(srcdir)/crtstuff.c
+ $(crt_compile) $(CRTSTUFF_T_CFLAGS_S) \
+ -c $< -DCRT_BEGIN -DCRTSTUFFT_O -DCRTSTUFFS_O
+endif
ifeq ($(enable_vtable_verify),yes)
# These are used in vtable verification; see comments in source files for
Loaded 100 of 4953 files, more files were not shown because too many files have changed in this diff. Show more