pmaports/device/community/soc-qcom-msm8916/APKBUILD
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

92 lines
3.3 KiB
Text

# Maintainer: Minecrell <minecrell@minecrell.net>
# Co-Maintainer: Nikita Travkin <nikita@trvn.ru>
pkgname=soc-qcom-msm8916
pkgdesc="Common package for Qualcomm MSM8916 devices"
pkgver=19
pkgrel=0
url="https://postmarketos.org"
license="BSD-3-Clause"
arch="aarch64 armv7"
options="!check !archcheck !tracedeps pmb:cross-native"
depends="$pkgname-ucm swclock-offset"
subpackages="
$pkgname-ucm
$pkgname-rproc-none:rproc_none
$pkgname-rproc-no-modem:rproc_no_modem
$pkgname-rproc-all:rproc_all
soc-samsung-msm8916-modem-workaround:samsung_modem_workaround
"
_ucm_commit="2484f33833c6947476217e3126b37a5c76bfda08"
source="$pkgname-$_ucm_commit.tar.gz::https://github.com/msm8916-mainline/alsa-ucm-conf/archive/$_ucm_commit.tar.gz
q6voiced.conf
77-modem-samsung-msm8916.rules
90-feedbackd-pm8916.rules
"
package() {
mkdir -p "$pkgdir"
install -Dm644 "$srcdir"/90-feedbackd-pm8916.rules \
"$pkgdir"/usr/lib/udev/rules.d/90-feedbackd-pm8916.rules
}
# Upstream keeps making breaking changes to UCM in patch releases.
# My last upstreaming efforts failed without ever getting a reply,
# since then UCM was entirely reworked like 3 times already...
# I don't want to fix this up every few months, so let's package a stable
# version for now. Once all the UCM refactoring upstream has settled down a bit
# we can investigate how to integrate it properly for upstreaming.
ucm() {
provides="alsa-ucm-conf"
provider_priority=1
cd "$srcdir/alsa-ucm-conf-$_ucm_commit"
mkdir -p "$subpkgdir"/usr/share/alsa
cp -r ucm2 "$subpkgdir"/usr/share/alsa
}
rproc_none() {
pkgdesc="Disable all remote processors (no WiFi/BT/modem, ~90 MiB more RAM)"
provides="soc-qcom-msm8916-rproc=$pkgver-r$pkgrel"
mkdir -p "$subpkgdir"/boot
echo none > "$subpkgdir"/boot/lk2nd_rproc_mode
}
rproc_no_modem() {
pkgdesc="Disable only modem (audio bypasses modem, ~80 MiB more RAM)"
provides="soc-qcom-msm8916-rproc=$pkgver-r$pkgrel"
provider_priority=50
mkdir -p "$subpkgdir"/boot
echo no-modem > "$subpkgdir"/boot/lk2nd_rproc_mode
}
rproc_all() {
pkgdesc="Enable all remote processors (audio goes through modem)"
provides="soc-qcom-msm8916-rproc=$pkgver-r$pkgrel"
provider_priority=100
depends="msm-modem msm-modem-uim-selection q6voiced"
install="$subpkgname.post-install"
replaces="soc-qcom-msm8916-modem"
mkdir -p "$subpkgdir"/boot
echo all > "$subpkgdir"/boot/lk2nd_rproc_mode
install -Dm644 q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
}
samsung_modem_workaround() {
pkgdesc="Workaround for modem facility lock issue on some Samsung devices"
depends=""
install -Dm644 "$srcdir"/77-modem-samsung-msm8916.rules \
"$subpkgdir"/lib/udev/rules.d/77-modem-samsung-msm8916.rules
}
sha512sums="
e521c4d70a1fe728af7286edc4a2138c92d2a03131a5c98226619f16c7e0e48e997914092cea71286e19ffde82c27dbac704be8887b75c9e732bda36e0ee9e36 soc-qcom-msm8916-2484f33833c6947476217e3126b37a5c76bfda08.tar.gz
3a4a9322839d4b3ef9d79668a37840a9f444954759ae3c512e694051d2f9a2573db42ad6c4c1a5c75eeb861232a27ba1a8cef9b503decd54ead25a96e3dd6f98 q6voiced.conf
bcebc36ec62140f4620d462be2b95858adae380e5d74f6b9c9b956fb76a6541f39749f4dcec6ac3c39b868dbfed6fac7a34ba357510532a3df2d39f7ea818d55 77-modem-samsung-msm8916.rules
90fca4a3291a2c84c0b20e41308c4698374ba896e9365ca80dbfd0c0c4f7dc08317f3dd865a3c7f6707c81b02f5bb24136d1172253d2e4fdd50039bbbf02a178 90-feedbackd-pm8916.rules
"