diff --git a/device/testing/device-google-sargo/81-libssc-google-sargo.rules b/device/testing/device-google-sargo/81-libssc-google-sargo.rules new file mode 100644 index 000000000..0665826f8 --- /dev/null +++ b/device/testing/device-google-sargo/81-libssc-google-sargo.rules @@ -0,0 +1,5 @@ +# Invert the acceleration so it is directed downwards, at rest on a planet. +# This is for compatibility with iio-sensor-proxy. +# +# https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/issues/375 +SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp", ENV{ACCEL_MOUNT_MATRIX}="-1, 0, 0; 0, -1, 0; 0, 0, -1" diff --git a/device/testing/device-google-sargo/APKBUILD b/device/testing/device-google-sargo/APKBUILD index 524107641..da9cd6ba4 100644 --- a/device/testing/device-google-sargo/APKBUILD +++ b/device/testing/device-google-sargo/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Richard Acayan pkgname=device-google-sargo pkgdesc="Google Pixel 3a" -pkgver=2 +pkgver=3 pkgrel=0 url="https://postmarketos.org" license="MIT" @@ -20,8 +20,10 @@ depends=" makedepends="devicepkg-dev" source=" 10-unl0kr-msm.conf + 81-libssc-google-sargo.rules 90-feedbackd-drv2624.rules deviceinfo + hexagonrpcd-adsp-sensorspd.confd modules-initfs q6voiced.conf " @@ -42,24 +44,40 @@ package() { nonfree_firmware() { pkgdesc="Proprietary firmware blobs for the Google Pixel 3a" + replaces="hexagonrpcd-openrc" depends=" firmware-google-sargo + hexagonrpcd linux-firmware-ath10k linux-firmware-qca linux-firmware-qcom soc-qcom-sdm845-modem soc-qcom-sdm845-nonfree-firmware " + install=" + device-google-sargo-nonfree-firmware.post-install + device-google-sargo-nonfree-firmware.post-upgrade + " # The q6voiced configuration can only be used if the ADSP is brought up # via non-free firmware. install -Dm644 "$srcdir"/q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced + + # Sensors depend on ADSP firmware and the sensors registry served over FastRPC. + install -Dm644 "$srcdir"/hexagonrpcd-adsp-sensorspd.confd \ + "$subpkgdir"/etc/conf.d/hexagonrpcd-adsp-sensorspd + + # Sensors depend on ADSP firmware and the sensors registry served over FastRPC. + install -Dm644 "$srcdir"/81-libssc-google-sargo.rules \ + "$subpkgdir"/usr/lib/udev/rules.d/81-libssc-google-sargo.rules } sha512sums=" f700af3145b79d1ef9edfb22982899b25cabfb212f9620dcbd3a2e6f44b5ad591e0a66056c6fcd66c3fde89a2b5f551e8a8fe2e65cf0e2a48adec57c027d7825 10-unl0kr-msm.conf +7fae1bae706d4117aade2462dac9aaba0d70215f5280bac89c3810df1eb94883ffdce5f81ff9f0dc39d27d6e56ca5476456866cfbd5b6e3f3e6e9048b758c51f 81-libssc-google-sargo.rules 016d398155f2344417f5e5649a361719ba6e53e593c501b5df39114cdd284302b9bf8686a39817aee0c08fec95b3ab613c181d6cc9596299aaf7fd05dbe0c3dd 90-feedbackd-drv2624.rules 8af19da4e4a4a59c49263722065229fae849c3273af313300b7ea1b8fe008c6e55cfd060b91909306dd600134e2494f740adda245707dbcff84b1ab2f37dbde7 deviceinfo +b6208c254b6e44ac4f6d748a38cc6b05da0db2c90235ada2011b138b82ccc3372687df2f5ad97e885e9eea135216a3c52266a08a7f4eb323e62e799f6f82ec7b hexagonrpcd-adsp-sensorspd.confd 9e2bd634e8f0104827991c5ce7b2346187310a6362f47a67d16e2bd93a910e8ec49f6b98608908febb7cecde14687af094bd95b8b3c1f8122d3710333ecf417e modules-initfs 7f599f086dba97ac39ce98798969bc8e9c26dd3b062bb8f95852182df52814b70d49b701e27b43abeb3639b16ba053e416c14cf75e0bf4a9f2fe7c01fb0ac41c q6voiced.conf " diff --git a/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-install b/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-install new file mode 100644 index 000000000..0ab38f727 --- /dev/null +++ b/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-install @@ -0,0 +1,3 @@ +#!/bin/sh + +rc-update add hexagonrpcd-adsp-sensorspd diff --git a/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-upgrade b/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-upgrade new file mode 120000 index 000000000..d04b21bc3 --- /dev/null +++ b/device/testing/device-google-sargo/device-google-sargo-nonfree-firmware.post-upgrade @@ -0,0 +1 @@ +device-google-sargo-nonfree-firmware.post-install \ No newline at end of file diff --git a/device/testing/device-google-sargo/hexagonrpcd-adsp-sensorspd.confd b/device/testing/device-google-sargo/hexagonrpcd-adsp-sensorspd.confd new file mode 100644 index 000000000..c9d4bf763 --- /dev/null +++ b/device/testing/device-google-sargo/hexagonrpcd-adsp-sensorspd.confd @@ -0,0 +1,2 @@ +# HexagonFS root directory for served files. +hexagonrpcd_fw_dir="/usr/share/qcom/sdm670/Google/sargo"