diff --git a/device/testing/soc-qcom-msm8996/90-feedbackd-pmi8998.rules b/device/testing/soc-qcom-msm8996/90-feedbackd-pmi8998.rules
new file mode 100644
index 0000000000000000000000000000000000000000..845c4445db04fbbde156d519146d74b59a88e472
--- /dev/null
+++ b/device/testing/soc-qcom-msm8996/90-feedbackd-pmi8998.rules
@@ -0,0 +1 @@
+SUBSYSTEM=="input", KERNEL=="event*", ENV{ID_INPUT}=="1", SUBSYSTEMS=="input", ATTRS{name}=="pmi8998_haptics", TAG+="uaccess", ENV{FEEDBACKD_TYPE}="vibra"
diff --git a/device/testing/soc-qcom-msm8996/APKBUILD b/device/testing/soc-qcom-msm8996/APKBUILD
new file mode 100644
index 0000000000000000000000000000000000000000..c8d0eb5fb85dab32876611a580dae7340c4c8ef5
--- /dev/null
+++ b/device/testing/soc-qcom-msm8996/APKBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Yassine Oudjana (Tooniis) <y.oudjana@protonmail.com>
+pkgname=soc-qcom-msm8996
+pkgdesc="Common package for Qualcomm MSM8996 devices"
+pkgver=0.1
+pkgrel=0
+url="https://postmarketos.org"
+license="BSD-3-Clause"
+arch="aarch64"
+options="!check !archcheck !tracedeps"
+depends="mesa-dri-gallium"
+subpackages="
+	$pkgname-nonfree-firmware:nonfree_firmware
+	$pkgname-ucm
+	"
+
+_ucm_commit="46b5441d7fdedc9c5ef78b0965a66b62ca054020"
+source="
+	alsa-ucm-conf-$_ucm_commit.tar.gz::https://gitlab.com/msm8996-mainline/alsa-ucm-conf/-/archive/$_ucm_commit/alsa-ucm-conf-$_ucm_commit.tar.gz
+	90-feedbackd-pmi8998.rules
+	"
+
+package() {
+	mkdir -p "$pkgdir"
+	install -Dm644 "$srcdir"/90-feedbackd-pmi8998.rules \
+		"$pkgdir"/usr/lib/udev/rules.d/90-feedbackd-pmi8998.rules
+}
+
+nonfree_firmware() {
+	pkgdesc="GPU/Modem/Venus/ADSP Firmware"
+	depends="msm-modem"
+	mkdir "$subpkgdir"
+}
+
+ucm() {
+	provides="alsa-ucm-conf"
+
+	# install audio config files
+	mkdir -p "$subpkgdir"/usr/share/alsa/ucm2
+	cp -r "$srcdir/alsa-ucm-conf-$_ucm_commit"/ucm2 "$subpkgdir"/usr/share/alsa/
+}
+sha512sums="81f8eb822b0b7778bd1f572648cbf9c29021c3d7deb21b6ed224432a77f6a86b6cf60776cccf3bc1bad75431d2b843092fcb98639e64ca5396b2399e876de9cf  alsa-ucm-conf-46b5441d7fdedc9c5ef78b0965a66b62ca054020.tar.gz
+ea3c7f9664eb9be2ffb6879db044b44cd826747b73c6527d54d79102e58a44e1b32d08d0b1b261329eae43d6a30bc8ef80d89b1d63af1c74ba5dc66ac57911d7  90-feedbackd-pmi8998.rules"