diff --git a/battery_mitigation/battery_mitigation.rc b/battery_mitigation/battery_mitigation.rc index c0c76fb..fcc9a4f 100644 --- a/battery_mitigation/battery_mitigation.rc +++ b/battery_mitigation/battery_mitigation.rc @@ -3,88 +3,88 @@ on property:vendor.thermal.link_ready=1 chown system system /data/vendor/mitigation start vendor.battery_mitigation -on property:ro.boot.bootreason=reboot,uvlo,pmic,if +on property:ro.boot.bootreason=reboot,uvlo,pmic,if && property:sys.boot.reason=reboot,uvlo,pmic,if setprop vendor.brownout_reason "uvlo,pmic,if" -on property:ro.boot.bootreason=reboot,ocp,pmic,if +on property:ro.boot.bootreason=reboot,ocp,pmic,if && property:sys.boot.reason=reboot,ocp,pmic,if setprop vendor.brownout_reason "ocp,pmic,if" -on property:ro.boot.bootreason=reboot,uvlo,pmic,main +on property:ro.boot.bootreason=reboot,uvlo,pmic,main && property:sys.boot.reason=reboot,uvlo,pmic,main setprop vendor.brownout_reason "uvlo,pmic,main" -on property:ro.boot.bootreason=reboot,uvlo,pmic,sub +on property:ro.boot.bootreason=reboot,uvlo,pmic,sub && property:sys.boot.reason=reboot,uvlo,pmic,sub setprop vendor.brownout_reason "uvlo,pmic,sub" -on property:ro.boot.bootreason=reboot,ocp,buck1m +on property:ro.boot.bootreason=reboot,ocp,buck1m && property:sys.boot.reason=reboot,ocp,buck1m setprop vendor.brownout_reason "ocp,buck1m" -on property:ro.boot.bootreason=reboot,ocp,buck2m +on property:ro.boot.bootreason=reboot,ocp,buck2m && property:sys.boot.reason=reboot,ocp,buck2m setprop vendor.brownout_reason "ocp,buck2m" -on property:ro.boot.bootreason=reboot,ocp,buck3m +on property:ro.boot.bootreason=reboot,ocp,buck3m && property:sys.boot.reason=reboot,ocp,buck3m setprop vendor.brownout_reason "ocp,buck3m" -on property:ro.boot.bootreason=reboot,ocp,buck4m +on property:ro.boot.bootreason=reboot,ocp,buck4m && property:sys.boot.reason=reboot,ocp,buck4m setprop vendor.brownout_reason "ocp,buck4m" -on property:ro.boot.bootreason=reboot,ocp,buck5m +on property:ro.boot.bootreason=reboot,ocp,buck5m && property:sys.boot.reason=reboot,ocp,buck5m setprop vendor.brownout_reason "ocp,buck5m" -on property:ro.boot.bootreason=reboot,ocp,buck6m +on property:ro.boot.bootreason=reboot,ocp,buck6m && property:sys.boot.reason=reboot,ocp,buck6m setprop vendor.brownout_reason "ocp,buck6m" -on property:ro.boot.bootreason=reboot,ocp,buck7m +on property:ro.boot.bootreason=reboot,ocp,buck7m && property:sys.boot.reason=reboot,ocp,buck7m setprop vendor.brownout_reason "ocp,buck7m" -on property:ro.boot.bootreason=reboot,ocp,buck8m +on property:ro.boot.bootreason=reboot,ocp,buck8m && property:sys.boot.reason=reboot,ocp,buck8m setprop vendor.brownout_reason "ocp,buck8m" -on property:ro.boot.bootreason=reboot,ocp,buck9m +on property:ro.boot.bootreason=reboot,ocp,buck9m && property:sys.boot.reason=reboot,ocp,buck9m setprop vendor.brownout_reason "ocp,buck9m" -on property:ro.boot.bootreason=reboot,ocp,buck10m +on property:ro.boot.bootreason=reboot,ocp,buck10m && property:sys.boot.reason=reboot,ocp,buck10m setprop vendor.brownout_reason "ocp,buck10m" -on property:ro.boot.bootreason=reboot,ocp,buck1s +on property:ro.boot.bootreason=reboot,ocp,buck1s && property:sys.boot.reason=reboot,ocp,buck1s setprop vendor.brownout_reason "ocp,buck1s" -on property:ro.boot.bootreason=reboot,ocp,buck2s +on property:ro.boot.bootreason=reboot,ocp,buck2s && property:sys.boot.reason=reboot,ocp,buck2s setprop vendor.brownout_reason "ocp,buck2s" -on property:ro.boot.bootreason=reboot,ocp,buck3s +on property:ro.boot.bootreason=reboot,ocp,buck3s && property:sys.boot.reason=reboot,ocp,buck3s setprop vendor.brownout_reason "ocp,buck3s" -on property:ro.boot.bootreason=reboot,ocp,buck4s +on property:ro.boot.bootreason=reboot,ocp,buck4s && property:sys.boot.reason=reboot,ocp,buck4s setprop vendor.brownout_reason "ocp,buck4s" -on property:ro.boot.bootreason=reboot,ocp,buck5s +on property:ro.boot.bootreason=reboot,ocp,buck5s && property:sys.boot.reason=reboot,ocp,buck5s setprop vendor.brownout_reason "ocp,buck5s" -on property:ro.boot.bootreason=reboot,ocp,buck6s +on property:ro.boot.bootreason=reboot,ocp,buck6s && property:sys.boot.reason=reboot,ocp,buck6s setprop vendor.brownout_reason "ocp,buck6s" -on property:ro.boot.bootreason=reboot,ocp,buck7s +on property:ro.boot.bootreason=reboot,ocp,buck7s && property:sys.boot.reason=reboot,ocp,buck7s setprop vendor.brownout_reason "ocp,buck7s" -on property:ro.boot.bootreason=reboot,ocp,buck8s +on property:ro.boot.bootreason=reboot,ocp,buck8s && property:sys.boot.reason=reboot,ocp,buck8s setprop vendor.brownout_reason "ocp,buck8s" -on property:ro.boot.bootreason=reboot,ocp,buck9s +on property:ro.boot.bootreason=reboot,ocp,buck9s && property:sys.boot.reason=reboot,ocp,buck9s setprop vendor.brownout_reason "ocp,buck9s" -on property:ro.boot.bootreason=reboot,ocp,buck10s +on property:ro.boot.bootreason=reboot,ocp,buck10s && property:sys.boot.reason=reboot,ocp,buck10s setprop vendor.brownout_reason "ocp,buck10s" -on property:ro.boot.bootreason=reboot,ocp,buckds +on property:ro.boot.bootreason=reboot,ocp,buckds && property:sys.boot.reason=reboot,ocp,buckds setprop vendor.brownout_reason "ocp,buckds" -on property:ro.boot.bootreason=reboot,ocp,buckas +on property:ro.boot.bootreason=reboot,ocp,buckas && property:sys.boot.reason=reboot,ocp,buckas setprop vendor.brownout_reason "ocp,buckas" -on property:ro.boot.bootreason=reboot,ocp,buckcs +on property:ro.boot.bootreason=reboot,ocp,buckcs && property:sys.boot.reason=reboot,ocp,buckcs setprop vendor.brownout_reason "ocp,buckcs" -on property:ro.boot.bootreason=reboot,ocp,buckbs +on property:ro.boot.bootreason=reboot,ocp,buckbs && property:sys.boot.reason=reboot,ocp,buckbs setprop vendor.brownout_reason "ocp,buckbs" service vendor.battery_mitigation /vendor/bin/hw/battery_mitigation diff --git a/battery_mitigation/sepolicy/battery_mitigation.te b/battery_mitigation/sepolicy/battery_mitigation.te index bcc2a0e..ff34c43 100644 --- a/battery_mitigation/sepolicy/battery_mitigation.te +++ b/battery_mitigation/sepolicy/battery_mitigation.te @@ -3,6 +3,7 @@ type battery_mitigation_exec, exec_type, vendor_file_type, file_type; init_daemon_domain(battery_mitigation) get_prop(battery_mitigation, boot_status_prop) get_prop(battery_mitigation, vendor_brownout_reason_prop) +get_prop(battery_mitigation, system_boot_reason_prop) set_prop(battery_mitigation, vendor_mitigation_ready_prop) hal_client_domain(battery_mitigation, hal_thermal); diff --git a/battery_mitigation/sepolicy/vendor_init.te b/battery_mitigation/sepolicy/vendor_init.te index b1bc894..275f377 100644 --- a/battery_mitigation/sepolicy/vendor_init.te +++ b/battery_mitigation/sepolicy/vendor_init.te @@ -1,2 +1,3 @@ # Battery Mitigation set_prop(vendor_init, vendor_brownout_reason_prop) +get_prop(vendor_init, system_boot_reason_prop)