# Maintainer: Barnabas Czeman <trabarni@gmail.com>
pkgname=soc-qcom-msm8953
pkgdesc="Common package for Qualcomm MSM8953 devices"
pkgver=11
pkgrel=0
url="https://postmarketos.org"
license="BSD-3-Clause"
arch="aarch64"
options="!check !archcheck !tracedeps pmb:cross-native"
depends="$pkgname-ucm swclock-offset"
subpackages="
	$pkgname-gpu
	$pkgname-modem
	$pkgname-modem-openrc:modem_openrc
	$pkgname-ucm
"

_ucm_commit="f6dfc9b072e74b0ab2afcf452bc106242049ef28"
source="
	$pkgname-$_ucm_commit.tar.gz::https://github.com/msm8953-mainline/alsa-ucm-conf/archive/$_ucm_commit.tar.gz
	90-feedbackd-pm8xxx-vib.rules
	q6voiced.conf
	adreno-a506-quirks.sh
"

package() {
	install -Dm644 "$srcdir"/90-feedbackd-pm8xxx-vib.rules \
		"$pkgdir"/usr/lib/udev/rules.d/90-feedbackd-pm8xxx-vib.rules
}

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
}

modem() {
	depends="
		msm-modem-uim-selection
		q6voiced
		qrtr
		rmtfs
	"

	mkdir -p "$subpkgdir"
}

modem_openrc() {
	install_if="$pkgname-modem=$pkgver-r$pkgrel openrc"
	install="$subpkgname.post-install $subpkgname.post-upgrade"
	depends="
		q6voiced-openrc
		rmtfs-openrc
	"

	install -Dm644 "$srcdir"/q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
}

gpu() {
	pkgdesc="Various GPU workarounds for Adreno a506"
	install_if="$pkgname=$pkgver-r$pkgrel mesa-dri-gallium"

	install -Dm644 "$srcdir"/adreno-a506-quirks.sh \
		"$subpkgdir"/etc/profile.d/adreno-a506-quirks.sh
}

sha512sums="
8aadc874c8a334e46c7bf630874c3035070aa7b9052deba1a28ae059ab9d63dd99dfb82c1a58d09da5063ad250de813e3974e040ce938a53347e390ce2e450eb  soc-qcom-msm8953-f6dfc9b072e74b0ab2afcf452bc106242049ef28.tar.gz
90fca4a3291a2c84c0b20e41308c4698374ba896e9365ca80dbfd0c0c4f7dc08317f3dd865a3c7f6707c81b02f5bb24136d1172253d2e4fdd50039bbbf02a178  90-feedbackd-pm8xxx-vib.rules
3a4a9322839d4b3ef9d79668a37840a9f444954759ae3c512e694051d2f9a2573db42ad6c4c1a5c75eeb861232a27ba1a8cef9b503decd54ead25a96e3dd6f98  q6voiced.conf
d546c99ca8d406b4e2e3901a417e4e461314a38f2f01c48525e44ca524ad57af7bfc280f416bda90573b0bfb1cca27d45cb0a0ed44e999ef8d406a380d1fdbb2  adreno-a506-quirks.sh
"
