diff --git a/device.mk b/device.mk index 8ff8ec6..551505b 100644 --- a/device.mk +++ b/device.mk @@ -349,7 +349,8 @@ PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \ init.qcom.early_boot.sh \ init.qcom.sh \ - init.qti.chg_policy.sh + init.qti.chg_policy.sh \ + init.sensors_fixup.sh PRODUCT_PACKAGES += \ init.device.rc \ diff --git a/rootdir/Android.bp b/rootdir/Android.bp index b4890a8..e6a20fb 100644 --- a/rootdir/Android.bp +++ b/rootdir/Android.bp @@ -23,6 +23,12 @@ sh_binary { vendor: true, } +sh_binary { + name: "init.sensors_fixup.sh", + src: "bin/init.sensors_fixup.sh", + vendor: true, +} + // fstab prebuilt_etc { name: "fstab.qcom", diff --git a/rootdir/bin/init.sensors_fixup.sh b/rootdir/bin/init.sensors_fixup.sh new file mode 100644 index 0000000..b72c072 --- /dev/null +++ b/rootdir/bin/init.sensors_fixup.sh @@ -0,0 +1,8 @@ +#!/vendor/bin/sh +# +# Copyright (C) 2023 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +sed -i '/sensor_temperature/d' /mnt/vendor/persist/sensors/sensors_list.txt diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc index 67b24b5..fd1b9cb 100644 --- a/rootdir/etc/init.target.rc +++ b/rootdir/etc/init.target.rc @@ -81,6 +81,8 @@ on fs mkdir /mnt/vendor/persist/subsys 0770 root system mkdir /mnt/vendor/persist/audio 0755 system system mkdir /mnt/vendor/persist/haptics 0755 system system + # Clean out sensor_temperature from the sensor list + start vendor.sensors_fixup on post-fs write /dev/ipa 1 @@ -156,6 +158,12 @@ service vendor.thermal-engine /vendor/bin/thermal-engine -c /vendor/etc/thermal- user root group root +service vendor.sensors_fixup /vendor/bin/init.sensors_fixup.sh + class main + user system + group system + oneshot + on property:init.svc.vendor.per_mgr=running start vendor.per_proxy diff --git a/sepolicy/vendor/file_contexts b/sepolicy/vendor/file_contexts index 9d13bb0..de0bc6e 100644 --- a/sepolicy/vendor/file_contexts +++ b/sepolicy/vendor/file_contexts @@ -53,6 +53,9 @@ /vendor/lib64/libxmi_high_dynamic_range\.so u:object_r:same_process_hal_file:s0 /vendor/lib64/libxml2_vendor\.so u:object_r:same_process_hal_file:s0 +# Sensors +/vendor/bin/init\.sensors_fixup\.sh u:object_r:vendor_init-qcom-sensors-sh_exec:s0 + # Thermal /vendor/bin/hw/android\.hardware\.thermal@2\.0-service\.pixel u:object_r:hal_thermal_default_exec:s0 /vendor/bin/thermal_symlinks u:object_r:init-thermal-symlinks-sh_exec:s0 diff --git a/sepolicy/vendor/init-qcom-sensors-sh.te b/sepolicy/vendor/init-qcom-sensors-sh.te new file mode 100644 index 0000000..02cd50b --- /dev/null +++ b/sepolicy/vendor/init-qcom-sensors-sh.te @@ -0,0 +1,2 @@ +allow vendor_init-qcom-sensors-sh vendor_persist_sensors_file:dir rw_dir_perms; +allow vendor_init-qcom-sensors-sh vendor_persist_sensors_file:file create_file_perms;