From 74cec4794b03bc6960d34dfe88668e1ce72f4f05 Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Fri, 22 Mar 2024 17:41:55 +0500 Subject: [PATCH] community/soc-qcom-msm8916: Add a workarund for GTK4 (MR 4958) GTK4 has switched to a new renderer. Unfortunately adreno a306 is effectively abandoned in mesa and has many bugs which the new GTK renderer now hits. To allow us to still use GTK4 apps on the msm8916 based devices, force the old renderer on them for now. Fixes: #2681 [ci:skip-build]: already built successfully in CI --- device/community/soc-qcom-msm8916/APKBUILD | 13 ++++++++++++- .../soc-qcom-msm8916/adreno-a306-quirks.sh | 4 ++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 device/community/soc-qcom-msm8916/adreno-a306-quirks.sh diff --git a/device/community/soc-qcom-msm8916/APKBUILD b/device/community/soc-qcom-msm8916/APKBUILD index b80fd0d67..41de93657 100644 --- a/device/community/soc-qcom-msm8916/APKBUILD +++ b/device/community/soc-qcom-msm8916/APKBUILD @@ -2,7 +2,7 @@ # Co-Maintainer: Nikita Travkin pkgname=soc-qcom-msm8916 pkgdesc="Common package for Qualcomm MSM8916 devices" -pkgver=20 +pkgver=21 pkgrel=0 url="https://postmarketos.org" license="BSD-3-Clause" @@ -10,6 +10,7 @@ arch="aarch64 armv7" options="!check !archcheck !tracedeps pmb:cross-native" depends="$pkgname-ucm swclock-offset" subpackages=" + $pkgname-gpu $pkgname-ucm $pkgname-rproc-none:rproc_none $pkgname-rproc-no-modem:rproc_no_modem @@ -22,6 +23,7 @@ source="$pkgname-$_ucm_commit.tar.gz::https://github.com/msm8916-mainline/alsa-u q6voiced.conf 77-modem-samsung-msm8916.rules 90-feedbackd-pm8916.rules + adreno-a306-quirks.sh " package() { @@ -84,9 +86,18 @@ samsung_modem_workaround() { "$subpkgdir"/lib/udev/rules.d/77-modem-samsung-msm8916.rules } +gpu() { + pkgdesc="Various GPU workaround for Adreno a306" + install_if="$pkgname=$pkgver-r$pkgrel mesa-dri-gallium" + + install -Dm755 "$srcdir"/adreno-a306-quirks.sh \ + "$subpkgdir"/etc/profile.d/adreno-a306-quirks.sh +} + sha512sums=" eee73ae7895fb6772b35a190956d17642d08af47a0fa5dfd022052c5b30c99cf9649215aef161ddcc21fac236f2a1435ab906462c7458b4e99e405b6cb6ef5f8 soc-qcom-msm8916-3deea2860ab680c3e790442dbdf578fef152e639.tar.gz 3a4a9322839d4b3ef9d79668a37840a9f444954759ae3c512e694051d2f9a2573db42ad6c4c1a5c75eeb861232a27ba1a8cef9b503decd54ead25a96e3dd6f98 q6voiced.conf bcebc36ec62140f4620d462be2b95858adae380e5d74f6b9c9b956fb76a6541f39749f4dcec6ac3c39b868dbfed6fac7a34ba357510532a3df2d39f7ea818d55 77-modem-samsung-msm8916.rules 90fca4a3291a2c84c0b20e41308c4698374ba896e9365ca80dbfd0c0c4f7dc08317f3dd865a3c7f6707c81b02f5bb24136d1172253d2e4fdd50039bbbf02a178 90-feedbackd-pm8916.rules +ff143f0f8654bba26087439e206b62c9f8e25f945fa299ba1b7504316f7398a0622404f2415e915ce1c96809ed9a5e93fc16ddcb2bafe410f35466510dc2d51d adreno-a306-quirks.sh " diff --git a/device/community/soc-qcom-msm8916/adreno-a306-quirks.sh b/device/community/soc-qcom-msm8916/adreno-a306-quirks.sh new file mode 100644 index 000000000..776bd3adf --- /dev/null +++ b/device/community/soc-qcom-msm8916/adreno-a306-quirks.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +# New GTK renderer crashes a306. +export GSK_RENDERER=gl