The in-kernel pd-mapper is the preferred choice nowadays and used for some kernel packages of devices that already/want to depend on soc-qcom. Signed-off-by: Jens Reidel <adrian@travitia.xyz> Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6905
187 lines
5.4 KiB
Bash
187 lines
5.4 KiB
Bash
# Maintainer: Casey Connolly <kcxt@postmarketos.org>
|
|
pkgname=soc-qcom
|
|
pkgdesc="Common package for Qualcomm devices"
|
|
pkgver=4
|
|
pkgrel=0
|
|
url="https://postmarketos.org"
|
|
license="BSD-3-Clause"
|
|
arch="aarch64"
|
|
options="!check !archcheck !tracedeps"
|
|
depends="
|
|
bootmac
|
|
msm-modem
|
|
swclock-offset
|
|
tqftpserv
|
|
"
|
|
replaces="
|
|
soc-qcom-sdm845
|
|
soc-qcom-sdm845-nonfree-firmware
|
|
upower
|
|
"
|
|
subpackages="
|
|
$pkgname-gstreamer-openrc:gstreamer_openrc
|
|
$pkgname-gstreamer-systemd:gstreamer_systemd
|
|
$pkgname-modem
|
|
$pkgname-modem-openrc:modem_openrc
|
|
$pkgname-openrc
|
|
$pkgname-pd-mapper:pd_mapper
|
|
$pkgname-pd-mapper-openrc:pd_mapper_openrc
|
|
$pkgname-pulseaudio
|
|
$pkgname-pulseaudio-openrc:pulseaudio_openrc
|
|
$pkgname-pulseaudio-systemd:pulseaudio_systemd
|
|
$pkgname-qbootctl
|
|
$pkgname-qbootctl-openrc:qbootctl_openrc
|
|
$pkgname-vulkan
|
|
"
|
|
|
|
source="
|
|
51-qcom.conf
|
|
UPower.conf
|
|
call_audio_idle_suspend_workaround.confd
|
|
call_audio_idle_suspend_workaround.initd
|
|
call-audio-idle-suspend-workaround.service
|
|
call_audio_idle_suspend_workaround.sh
|
|
gstreamer.conf
|
|
gstreamer.sh
|
|
modemmanager.conf
|
|
"
|
|
|
|
package() {
|
|
mkdir -p "$pkgdir"
|
|
|
|
# Shutdown when battery is critical instead of sleep
|
|
install -Dm644 "$srcdir"/UPower.conf \
|
|
"$pkgdir"/etc/UPower/UPower.conf
|
|
|
|
install -Dm644 "$srcdir"/51-qcom.conf \
|
|
-t "$pkgdir"/usr/share/wireplumber/wireplumber.conf.d
|
|
}
|
|
|
|
gstreamer_openrc() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
|
replaces="soc-qcom-sdm845-gstreamer-openrc"
|
|
|
|
install -Dm755 "$srcdir"/gstreamer.sh \
|
|
"$subpkgdir"/etc/profile.d/50-soc-qcom-gstreamer.sh
|
|
}
|
|
|
|
gstreamer_systemd() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel systemd"
|
|
replaces="soc-qcom-sdm845-gstreamer-systemd"
|
|
|
|
install -Dm644 "$srcdir"/gstreamer.conf \
|
|
"$subpkgdir"/etc/environment.d/50-soc-qcom-gstreamer.conf
|
|
}
|
|
|
|
modem() {
|
|
pkgdesc="Modem services and configuration"
|
|
depends="
|
|
q6voiced
|
|
msm-modem-uim-selection
|
|
81voltd
|
|
"
|
|
|
|
mkdir -p "$subpkgdir"
|
|
}
|
|
|
|
modem_openrc() {
|
|
install_if="$pkgname-modem=$pkgver-r$pkgrel openrc"
|
|
depends="q6voiced-openrc openrc"
|
|
replaces="soc-qcom-sdm845-modem-openrc"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
|
|
install -Dm644 "$srcdir"/modemmanager.conf \
|
|
"$subpkgdir"/etc/conf.d/modemmanager
|
|
}
|
|
|
|
openrc() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel openrc"
|
|
depends="
|
|
openrc
|
|
tqftpserv-openrc
|
|
"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
pd_mapper() {
|
|
pkgdesc="Enable Qualcomm PD mapper service"
|
|
depends="pd-mapper"
|
|
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
pd_mapper_openrc() {
|
|
install_if="$pkgname-pd-mapper=$pkgver-r$pkgrel openrc"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
depends="openrc"
|
|
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
qbootctl() {
|
|
pkgdesc="Enable qbootctl mark-boot-successful service"
|
|
depends="qbootctl"
|
|
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
qbootctl_openrc() {
|
|
install_if="$pkgname-qbootctl=$pkgver-r$pkgrel openrc"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
depends="openrc"
|
|
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
vulkan() {
|
|
pkgdesc="Vulkan support for freedreno"
|
|
install_if="$pkgname vulkan-loader"
|
|
depends="mesa-vulkan-freedreno"
|
|
mkdir "$subpkgdir"
|
|
}
|
|
|
|
pulseaudio() {
|
|
install_if="$pkgname=$pkgver-r$pkgrel pulseaudio"
|
|
replaces="soc-qcom-sdm845-pulseaudio"
|
|
|
|
# Call Audio idle suspend workaround code
|
|
install -Dm755 "$srcdir"/call_audio_idle_suspend_workaround.sh \
|
|
"$subpkgdir"/usr/sbin/call_audio_idle_suspend_workaround
|
|
}
|
|
|
|
pulseaudio_openrc() {
|
|
install_if="$pkgname-pulseaudio=$pkgver-r$pkgrel openrc"
|
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
|
replaces="soc-qcom-sdm845-pulseaudio-openrc"
|
|
depends="openrc"
|
|
|
|
# Call Audio idle suspend workaround init script
|
|
install -Dm755 "$srcdir"/call_audio_idle_suspend_workaround.initd \
|
|
"$subpkgdir"/etc/init.d/call_audio_idle_suspend_workaround
|
|
|
|
install -Dm644 "$srcdir"/call_audio_idle_suspend_workaround.confd \
|
|
"$subpkgdir"/etc/conf.d/call_audio_idle_suspend_workaround
|
|
}
|
|
|
|
pulseaudio_systemd() {
|
|
# Call Audio idle suspend workaround systemd unit
|
|
install -Dm644 "$srcdir"/call-audio-idle-suspend-workaround.service \
|
|
-t "$subpkgdir"/usr/lib/systemd/user
|
|
|
|
default_systemd
|
|
}
|
|
|
|
sha512sums="
|
|
28c14f47eaedec577d152001c51753537c98f267ac4a0acf78a304efebe5f6a1b4dc6d501497da9a0a925806a1d9c80b25e001cf9b1eb21efa22cd6a41ff753b 51-qcom.conf
|
|
9d455b56558d453d501a1ad869ffa79f9952ed43485a9847d506db6a78bfcd9f9c9d855660ee1d368eb74f4429385ec166addc30d802261c75562e785fe84c52 UPower.conf
|
|
6fb4c0bd8b7ed534d855a6732ccff783960e3cfa0e0cc7effcbb93afa00798dec15361a37a3200081bc114c8d266b7a0851cc4e819ad36eabdb47a50c72620d9 call_audio_idle_suspend_workaround.confd
|
|
5a58475b6e2ee1d655f3f23d8dc19e1cb2f32f1dfff3b9a9337d9c5baad1ec24bfaec0fb9cc03f00e5a291bee27c6b8bffbc65157e2bee5d65ef6d1adcb0910b call_audio_idle_suspend_workaround.initd
|
|
128364dab6d5e9c01773d5c3b823029ac1c8471eb5ab11e6528a39e9d726562e26aa77c817ca966772de3e3339119281c9ccdf35f92ec7c9a90331b8fc16254a call-audio-idle-suspend-workaround.service
|
|
6da0a9209f114354aa2aa1185ec3896a8e0bb1bfce0dc3fc4c0de339cf1389feaa2d724e733c251ff032a5e86d37d9549e94f8f7c7a5accfedbd8a4d6316bbfd call_audio_idle_suspend_workaround.sh
|
|
f86ebf68bb7e41b531e5cd8fc3e54d8fafad314fb80950277e41004303b3bf75b2ae96f0228bdf4ed67645aee8ceaf247140b4843c66365259d2908b8991b877 gstreamer.conf
|
|
471583b91bc35608cb75d0b3ceb88fa793a4e763ea228703c50ffb1b45c0e9054646c46f710164ec3ef65a882a204fd59546f3a0ebb94b8d6c6f08c4043bcfd3 gstreamer.sh
|
|
e33f41360ccc4900bb76a26cc7b46bde1fb90facdf45c4fbcebc80499386939948401cacd6df9f779eafab10f4ee77ee1fef3e7bd06f483f8c2a4a644c84f327 modemmanager.conf
|
|
"
|