From 07a17f736e75476d49eda582d284b3a7f5119daa Mon Sep 17 00:00:00 2001 From: samou Date: Fri, 12 Jul 2024 08:12:28 +0000 Subject: [PATCH 1/2] bcl: support thismeal binary Test: ./dump_power Flag: EXEMPT refactor Bug: 349935208 Change-Id: I74f565133d39ece19b29a036d7b236a754b422d3 Signed-off-by: samou --- dumpstate/Android.bp | 1 + dumpstate/dump_power.cpp | 19 +++++++++++++++++++ dumpstate/dump_power.rc | 3 +++ 3 files changed, 23 insertions(+) create mode 100644 dumpstate/dump_power.rc diff --git a/dumpstate/Android.bp b/dumpstate/Android.bp index 8960ac43..71cc1d2c 100644 --- a/dumpstate/Android.bp +++ b/dumpstate/Android.bp @@ -24,6 +24,7 @@ cc_binary { ], vendor: true, relative_install_path: "dump", + init_rc: ["dump_power.rc"], } sh_binary { diff --git a/dumpstate/dump_power.cpp b/dumpstate/dump_power.cpp index 5af853fc..c736e5fb 100644 --- a/dumpstate/dump_power.cpp +++ b/dumpstate/dump_power.cpp @@ -21,7 +21,9 @@ #include #include #include +#include #include +#include #include #include @@ -632,10 +634,27 @@ void dumpGvoteables() { void dumpMitigation() { const char *mitigationList [][2] { + {"LastmealCSV" , "/data/vendor/mitigation/lastmeal.csv"}, {"Lastmeal" , "/data/vendor/mitigation/lastmeal.txt"}, {"Thismeal" , "/data/vendor/mitigation/thismeal.txt"}, }; + /* parsing thismeal.bin */ + int status; + int pid = fork(); + if (pid < 0) { + printf("Fork failed for parsing thismeal.bin.\n"); + exit(EXIT_FAILURE); + } else if (pid == 0) { + execl("/vendor/bin/hw/battery_mitigation", "battery_mitigation", "-d", nullptr); + exit(EXIT_SUCCESS); + } + waitpid(pid, &status, 0); + + if (WIFSIGNALED(status)) { + printf("Failed to parse thismeal.bin.(killed by: %d)\n", WTERMSIG(status)); + } + for (auto &row : mitigationList) { if (!isValidFile(row[1])) printTitle(row[0]); diff --git a/dumpstate/dump_power.rc b/dumpstate/dump_power.rc new file mode 100644 index 00000000..ec2aead9 --- /dev/null +++ b/dumpstate/dump_power.rc @@ -0,0 +1,3 @@ +on init + # for parsing thismeal.bin + chown system system /vendor/bin/hw/battery_mitigation From 9da8594109c205ffed3be2b853f653d79bb9f181 Mon Sep 17 00:00:00 2001 From: samou Date: Mon, 12 Aug 2024 12:47:16 +0000 Subject: [PATCH 2/2] bcl: correct ocp threshold Flag: EXEMPT refactor Bug: 349935208 Change-Id: I2922ca198d6a47f613ecc2c9902256112457fe31 Signed-off-by: samou --- conf/init.zuma.rc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/conf/init.zuma.rc b/conf/init.zuma.rc index e5126806..e59092a6 100644 --- a/conf/init.zuma.rc +++ b/conf/init.zuma.rc @@ -980,6 +980,9 @@ on property:vendor.thermal.link_ready=1 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/soft_ocp_cpu2_lvl 12000 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/soft_ocp_gpu_lvl 9000 write /sys/devices/virtual/pmic/mitigation/triggered_lvl/soft_ocp_tpu_lvl 8500 + write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_cpu2_lvl 12000 + write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_gpu_lvl 12000 + write /sys/devices/virtual/pmic/mitigation/triggered_lvl/ocp_tpu_lvl 12000 write /sys/devices/virtual/pmic/mitigation/clock_div/tpu_clk_div 0x1 write /sys/devices/virtual/pmic/mitigation/clock_div/gpu_clk_div 0x1 write /sys/devices/virtual/pmic/mitigation/clock_div/cpu2_clk_div 0x1