Diffstat (limited to 'root')
3 files changed, 22 insertions, 2 deletions
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service index 2e3cf82..413e84c 100644 --- a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service +++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service @@ -2,7 +2,7 @@ Description=HexagonRPC Service [Service] -ExecStart=/usr/local/bin/hexagonrpcd -f /dev/fastrpc-adsp-secure -s +# The kernel-surface fastrpc driver creates /dev/fastrpc-adsp (no -secure Restart=on-failure [Install] diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules index e6ddb1f..064ff05 100644 --- a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules +++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules @@ -1 +1,2 @@ -ACTION=="add|change", SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp-secure", ENV{ACCEL_MOUNT_MATRIX}="-1, 0, 0; 0, -1, 0; 0, 0, 1" +ACTION=="add|change", SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp*", ENV{ACCEL_MOUNT_MATRIX}="-1, 0, 0; 0, -1, 0; 0, 0, 1" +SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp*", ENV{IIO_SENSOR_PROXY_TYPE}+="ssc-accel" diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/usr/local/share/selinux/iio-qipcrtr.te b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/usr/local/share/selinux/iio-qipcrtr.te new file mode 100644 index 0000000..d92dc21 --- /dev/null +++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/usr/local/share/selinux/iio-qipcrtr.te @@ -0,0 +1,19 @@ +module iio-qipcrtr 1.0; + +// Fedora's policy grants iiosensorproxy_t no qipcrtr_socket permissions at +// all: the class exists but nothing allows it, because upstream +// iio-sensor-proxy talks to sensors over IIO and never needed QRTR. The SSC +// backend libssc brings in here reaches the Qualcomm Sensor Core over the +// QRTR bus (libssc probes AF_QIPCRTR first; the fastrpc/hexagonrpcd path is +// what actually serves this board, but the probe alone gets the daemon +// killed by "QRTR bus unavailable" + "No sensors" without these perms). +// +// Hand-written rather than audit2allow'd per-incident: create/bind/... is +// the full client lifecycle, so a policy reload or libssc update cannot +// surface a new denied perm one at a time. +require { + type iiosensorproxy_t; + class qipcrtr_socket { create bind connect read write getattr setattr getopt setopt shutdown }; +} + +allow iiosensorproxy_t self:qipcrtr_socket { create bind connect read write getattr setattr getopt setopt shutdown }; |