From e1c91d450a843d29cc1cfe4821a2b7d88394fe5d Mon Sep 17 00:00:00 2001 From: Stuart Scott Date: Mon, 24 Jul 2017 15:26:26 -0700 Subject: [PATCH] Add SEPolicy for collecting battery counters Bug: 63841211 Test: pts-tradefed run pts -m PtsHardwareInfo Change-Id: I59f25fed1775eddb6f91c68b74f04b41b5777095 --- init.hardware.rc | 2 +- sepolicy/vendor/file.te | 3 +++ sepolicy/vendor/genfs_contexts | 1 + sepolicy/vendor/hardware_info_app.te | 4 ++++ 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/init.hardware.rc b/init.hardware.rc index 323fe79a..996710cd 100644 --- a/init.hardware.rc +++ b/init.hardware.rc @@ -454,7 +454,7 @@ on boot # Allow system to write to cycle_count_id to iterate and get stats chown system system /sys/class/power_supply/bms/cycle_count_id - chmod 0660 /sys/class/power_supply/bms/cycle_count_id + chmod 0666 /sys/class/power_supply/bms/cycle_count_id # default country code setprop ro.boot.wificountrycode 00 diff --git a/sepolicy/vendor/file.te b/sepolicy/vendor/file.te index 49e4beca..e5ba3371 100644 --- a/sepolicy/vendor/file.te +++ b/sepolicy/vendor/file.te @@ -84,3 +84,6 @@ type hexagon_halide_file, vendor_file_type, file_type; # input files type idc_file, file_type, vendor_file_type; type keylayout_file, file_type, vendor_file_type; + +# Battery Stats file +typeattribute sysfs_batteryinfo mlstrustedobject; diff --git a/sepolicy/vendor/genfs_contexts b/sepolicy/vendor/genfs_contexts index 919dabf1..57766a1b 100644 --- a/sepolicy/vendor/genfs_contexts +++ b/sepolicy/vendor/genfs_contexts @@ -51,6 +51,7 @@ genfscon sysfs /devices/soc/8c0000.qcom,msm-cam u:object genfscon sysfs /devices/soc0 u:object_r:sysfs_soc:s0 genfscon sysfs /devices/soc/caa0000.qcom,jpeg u:object_r:sysfs_camera:s0 genfscon sysfs /devices/soc/caa4000.qcom,fd u:object_r:sysfs_camera:s0 +genfscon sysfs /devices/soc/800f000.qcom,spmi/spmi-0/spmi0-02/800f000.qcom,spmi:qcom,pmi8998@2:qpnp,fg/power_supply/bms u:object_r:sysfs_batteryinfo:s0 genfscon sysfs /devices/soc/800f000.qcom,spmi/spmi-0/spmi0-02/800f000.qcom,spmi:qcom,pmi8998@2:qpnp,fg/power_supply/bms/capacity u:object_r:sysfs_batteryinfo:s0 genfscon sysfs /devices/soc/800f000.qcom,spmi/spmi-0/spmi0-02/800f000.qcom,spmi:qcom,pmi8998@2:qcom,qpnp-smb2/power_supply/battery/capacity u:object_r:sysfs_batteryinfo:s0 genfscon sysfs /bus/msm_subsys u:object_r:sysfs_msm_subsys:s0 diff --git a/sepolicy/vendor/hardware_info_app.te b/sepolicy/vendor/hardware_info_app.te index db3a137f..70cb8010 100644 --- a/sepolicy/vendor/hardware_info_app.te +++ b/sepolicy/vendor/hardware_info_app.te @@ -13,8 +13,12 @@ allow hardware_info_app shell_data_file:dir search; allow hardware_info_app shell_data_file:file { open read }; # SysFS +allow hardware_info_app sysfs_batteryinfo:dir search; +allow hardware_info_app sysfs_batteryinfo:file { getattr open read write }; +allow hardware_info_app sysfs_batteryinfo:file write; allow hardware_info_app sysfs_camera:dir search; allow hardware_info_app sysfs_camera:file { getattr open read }; +allow hardware_info_app sysfs_msm_subsys:dir search; allow hardware_info_app sysfs_scsi_devices_0000:dir search; allow hardware_info_app sysfs_scsi_devices_0000:file { getattr open read }; allow hardware_info_app sysfs_soc:dir search;