Move power dump out of hal_dumpstate_default
Bug: 273380509 Test: adb bugreport Change-Id: I25a3c384e085f8534d4917a73714a99579fbd8bd
This commit is contained in:
parent
804ed04262
commit
7fefcc231f
4 changed files with 341 additions and 203 deletions
|
@ -2,6 +2,13 @@ package {
|
|||
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||
}
|
||||
|
||||
sh_binary {
|
||||
name: "dump_power_gs201.sh",
|
||||
src: "dump_power_gs201.sh",
|
||||
vendor: true,
|
||||
sub_dir: "dump",
|
||||
}
|
||||
|
||||
cc_binary {
|
||||
name: "dump_gs201",
|
||||
srcs: ["dump_gs201.cpp"],
|
||||
|
|
|
@ -71,7 +71,6 @@ void endSection(int fd, const std::string §ionName, timepoint_t startTime) {
|
|||
Dumpstate::Dumpstate()
|
||||
: mTextSections{
|
||||
{ "wlan", [this](int fd) { dumpWlanSection(fd); } },
|
||||
{ "power", [this](int fd) { dumpPowerSection(fd); } },
|
||||
} {}
|
||||
|
||||
// Dump data requested by an argument to the "dump" interface, or help info
|
||||
|
@ -141,207 +140,6 @@ void Dumpstate::dumpWlanSection(int fd) {
|
|||
"cat /sys/wlan_ptracker/twt/*"});
|
||||
}
|
||||
|
||||
// Dump items related to power and battery
|
||||
void Dumpstate::dumpPowerSection(int fd) {
|
||||
struct stat buffer;
|
||||
|
||||
RunCommandToFd(fd, "Power Stats Times", {"/vendor/bin/sh", "-c",
|
||||
"echo -n \"Boot: \" && /vendor/bin/uptime -s && "
|
||||
"echo -n \"Now: \" && date"});
|
||||
|
||||
RunCommandToFd(fd, "ACPM stats", {"/vendor/bin/sh", "-c",
|
||||
"for f in /sys/devices/platform/acpm_stats/*_stats ; do "
|
||||
"echo \"\\n\\n$f\" ; cat $f ; "
|
||||
"done"});
|
||||
|
||||
DumpFileToFd(fd, "CPU PM stats", "/sys/devices/system/cpu/cpupm/cpupm/time_in_state");
|
||||
|
||||
DumpFileToFd(fd, "GENPD summary", "/d/pm_genpd/pm_genpd_summary");
|
||||
|
||||
DumpFileToFd(fd, "Power supply property battery", "/sys/class/power_supply/battery/uevent");
|
||||
DumpFileToFd(fd, "Power supply property dc", "/sys/class/power_supply/dc/uevent");
|
||||
DumpFileToFd(fd, "Power supply property gcpm", "/sys/class/power_supply/gcpm/uevent");
|
||||
DumpFileToFd(fd, "Power supply property gcpm_pps", "/sys/class/power_supply/gcpm_pps/uevent");
|
||||
DumpFileToFd(fd, "Power supply property main-charger", "/sys/class/power_supply/main-charger/uevent");
|
||||
if (!stat("/sys/class/power_supply/pca9468-mains/uevent", &buffer)) {
|
||||
DumpFileToFd(fd, "Power supply property pca9468-mains", "/sys/class/power_supply/pca9468-mains/uevent");
|
||||
} else {
|
||||
DumpFileToFd(fd, "Power supply property pca94xx-mains", "/sys/class/power_supply/pca94xx-mains/uevent");
|
||||
}
|
||||
DumpFileToFd(fd, "Power supply property tcpm", "/sys/class/power_supply/tcpm-source-psy-i2c-max77759tcpc/uevent");
|
||||
DumpFileToFd(fd, "Power supply property usb", "/sys/class/power_supply/usb/uevent");
|
||||
DumpFileToFd(fd, "Power supply property wireless", "/sys/class/power_supply/wireless/uevent");
|
||||
if (!stat("/sys/class/power_supply/maxfg", &buffer)) {
|
||||
DumpFileToFd(fd, "Power supply property maxfg", "/sys/class/power_supply/maxfg/uevent");
|
||||
DumpFileToFd(fd, "m5_state", "/sys/class/power_supply/maxfg/m5_model_state");
|
||||
DumpFileToFd(fd, "maxfg", "/dev/logbuffer_maxfg");
|
||||
DumpFileToFd(fd, "maxfg", "/dev/logbuffer_maxfg_monitor");
|
||||
} else {
|
||||
DumpFileToFd(fd, "Power supply property maxfg_base", "/sys/class/power_supply/maxfg_base/uevent");
|
||||
DumpFileToFd(fd, "Power supply property maxfg_secondary", "/sys/class/power_supply/maxfg_secondary/uevent");
|
||||
DumpFileToFd(fd, "m5_state", "/sys/class/power_supply/maxfg_base/m5_model_state");
|
||||
DumpFileToFd(fd, "maxfg_base", "/dev/logbuffer_maxfg_base");
|
||||
DumpFileToFd(fd, "maxfg_secondary", "/dev/logbuffer_maxfg_secondary");
|
||||
DumpFileToFd(fd, "maxfg_base", "/dev/logbuffer_maxfg_base_monitor");
|
||||
DumpFileToFd(fd, "maxfg_secondary", "/dev/logbuffer_maxfg_secondary_monitor");
|
||||
DumpFileToFd(fd, "google_dual_batt", "/dev/logbuffer_dual_batt");
|
||||
}
|
||||
|
||||
if (!stat("/dev/maxfg_history", &buffer)) {
|
||||
DumpFileToFd(fd, "Maxim FG History", "/dev/maxfg_history");
|
||||
}
|
||||
|
||||
if (!stat("/sys/class/power_supply/dock", &buffer)) {
|
||||
DumpFileToFd(fd, "Power supply property dock", "/sys/class/power_supply/dock/uevent");
|
||||
}
|
||||
|
||||
if (!stat("/dev/logbuffer_tcpm", &buffer)) {
|
||||
DumpFileToFd(fd, "Logbuffer TCPM", "/dev/logbuffer_tcpm");
|
||||
} else if (!PropertiesHelper::IsUserBuild()) {
|
||||
if (!stat("/sys/kernel/debug/tcpm", &buffer)) {
|
||||
RunCommandToFd(fd, "TCPM logs", {"/vendor/bin/sh", "-c", "cat /sys/kernel/debug/tcpm/*"});
|
||||
} else {
|
||||
RunCommandToFd(fd, "TCPM logs", {"/vendor/bin/sh", "-c", "cat /sys/kernel/debug/usb/tcpm*"});
|
||||
}
|
||||
}
|
||||
|
||||
RunCommandToFd(fd, "TCPC", {"/vendor/bin/sh", "-c",
|
||||
"for f in /sys/devices/platform/10d60000.hsi2c/i2c-*/i2c-max77759tcpc;"
|
||||
"do echo \"registers:\"; cat $f/registers;"
|
||||
"echo \"frs:\"; cat $f/frs;"
|
||||
"echo \"auto_discharge:\"; cat $f/auto_discharge;"
|
||||
"echo \"bc12_enabled:\"; cat $f/bc12_enabled;"
|
||||
"echo \"cc_toggle_enable:\"; cat $f/cc_toggle_enable;"
|
||||
"echo \"contaminant_detection:\"; cat $f/contaminant_detection;"
|
||||
"echo \"contaminant_detection_status:\"; cat $f/contaminant_detection_status; done"});
|
||||
|
||||
DumpFileToFd(fd, "PD Engine", "/dev/logbuffer_usbpd");
|
||||
DumpFileToFd(fd, "POGO Transport", "/dev/logbuffer_pogo_transport");
|
||||
DumpFileToFd(fd, "PPS-google_cpm", "/dev/logbuffer_cpm");
|
||||
DumpFileToFd(fd, "PPS-dc", "/dev/logbuffer_pca9468");
|
||||
|
||||
DumpFileToFd(fd, "Battery Health", "/sys/class/power_supply/battery/health_index_stats");
|
||||
DumpFileToFd(fd, "BMS", "/dev/logbuffer_ssoc");
|
||||
DumpFileToFd(fd, "TTF", "/dev/logbuffer_ttf");
|
||||
DumpFileToFd(fd, "TTF details", "/sys/class/power_supply/battery/ttf_details");
|
||||
DumpFileToFd(fd, "TTF stats", "/sys/class/power_supply/battery/ttf_stats");
|
||||
DumpFileToFd(fd, "aacr_state", "/sys/class/power_supply/battery/aacr_state");
|
||||
DumpFileToFd(fd, "maxq", "/dev/logbuffer_maxq");
|
||||
DumpFileToFd(fd, "TEMP/DOCK-DEFEND", "/dev/logbuffer_bd");
|
||||
|
||||
RunCommandToFd(fd, "TRICKLE-DEFEND Config", {"/vendor/bin/sh", "-c",
|
||||
" cd /sys/devices/platform/google,battery/power_supply/battery/;"
|
||||
" for f in `ls bd_*` ; do echo \"$f: `cat $f`\" ; done"});
|
||||
|
||||
RunCommandToFd(fd, "DWELL-DEFEND Config", {"/vendor/bin/sh", "-c",
|
||||
" cd /sys/devices/platform/google,charger/;"
|
||||
" for f in `ls charge_s*` ; do echo \"$f: `cat $f`\" ; done"});
|
||||
|
||||
RunCommandToFd(fd, "TEMP-DEFEND Config", {"/vendor/bin/sh", "-c",
|
||||
" cd /sys/devices/platform/google,charger/;"
|
||||
" for f in `ls bd_*` ; do echo \"$f: `cat $f`\" ; done"});
|
||||
|
||||
if (!PropertiesHelper::IsUserBuild()) {
|
||||
DumpFileToFd(fd, "DC_registers dump", "/sys/class/power_supply/pca94xx-mains/device/registers_dump");
|
||||
DumpFileToFd(fd, "max77759_chg registers dump", "/d/max77759_chg/registers");
|
||||
DumpFileToFd(fd, "max77729_pmic registers dump", "/d/max77729_pmic/registers");
|
||||
DumpFileToFd(fd, "Charging table dump", "/d/google_battery/chg_raw_profile");
|
||||
|
||||
RunCommandToFd(fd, "fg_model", {"/vendor/bin/sh", "-c",
|
||||
"for f in /d/maxfg* ; do "
|
||||
"regs=`cat $f/fg_model`; echo $f: ;"
|
||||
"echo \"$regs\"; done"});
|
||||
|
||||
RunCommandToFd(fd, "fg_alo_ver", {"/vendor/bin/sh", "-c",
|
||||
"for f in /d/maxfg* ; do "
|
||||
"regs=`cat $f/algo_ver`; echo $f: ;"
|
||||
"echo \"$regs\"; done"});
|
||||
|
||||
RunCommandToFd(fd, "fg_model_ok", {"/vendor/bin/sh", "-c",
|
||||
"for f in /d/maxfg* ; do "
|
||||
"regs=`cat $f/model_ok`; echo $f: ;"
|
||||
"echo \"$regs\"; done"});
|
||||
|
||||
/* FG Registers */
|
||||
RunCommandToFd(fd, "fg registers", {"/vendor/bin/sh", "-c",
|
||||
"for f in /d/maxfg* ; do "
|
||||
"regs=`cat $f/registers`; echo $f: ;"
|
||||
"echo \"$regs\"; done"});
|
||||
|
||||
RunCommandToFd(fd, "Maxim FG NV RAM", {"/vendor/bin/sh", "-c",
|
||||
"for f in /d/maxfg* ; do "
|
||||
"regs=`cat $f/nv_registers`; echo $f: ;"
|
||||
"echo \"$regs\"; done"});
|
||||
}
|
||||
|
||||
/* EEPROM State */
|
||||
if (!stat("/sys/devices/platform/10970000.hsi2c/i2c-4/4-0050/eeprom", &buffer)) {
|
||||
RunCommandToFd(fd, "Battery EEPROM", {"/vendor/bin/sh", "-c", "xxd /sys/devices/platform/10970000.hsi2c/i2c-4/4-0050/eeprom"});
|
||||
} else if (!stat("/sys/devices/platform/10970000.hsi2c/i2c-5/5-0050/eeprom", &buffer)) {
|
||||
RunCommandToFd(fd, "Battery EEPROM", {"/vendor/bin/sh", "-c", "xxd /sys/devices/platform/10970000.hsi2c/i2c-5/5-0050/eeprom"});
|
||||
} else if (!stat("/sys/devices/platform/10da0000.hsi2c/i2c-5/5-0050/eeprom", &buffer)) {
|
||||
RunCommandToFd(fd, "Battery EEPROM", {"/vendor/bin/sh", "-c", "xxd /sys/devices/platform/10da0000.hsi2c/i2c-5/5-0050/eeprom"});
|
||||
} else if (!stat("/sys/devices/platform/10da0000.hsi2c/i2c-6/6-0050/eeprom", &buffer)) {
|
||||
RunCommandToFd(fd, "Battery EEPROM", {"/vendor/bin/sh", "-c", "xxd /sys/devices/platform/10da0000.hsi2c/i2c-6/6-0050/eeprom"});
|
||||
} else if (!stat("/sys/devices/platform/10da0000.hsi2c/i2c-7/7-0050/eeprom", &buffer)) {
|
||||
RunCommandToFd(fd, "Battery EEPROM", {"/vendor/bin/sh", "-c", "xxd /sys/devices/platform/10da0000.hsi2c/i2c-7/7-0050/eeprom"});
|
||||
}
|
||||
|
||||
DumpFileToFd(fd, "Charger Stats", "/sys/class/power_supply/battery/charge_details");
|
||||
if (!PropertiesHelper::IsUserBuild()) {
|
||||
RunCommandToFd(fd, "Google Charger", {"/vendor/bin/sh", "-c", "cd /sys/kernel/debug/google_charger/; "
|
||||
"for f in `ls pps_*` ; do echo \"$f: `cat $f`\" ; done"});
|
||||
RunCommandToFd(fd, "Google Battery", {"/vendor/bin/sh", "-c", "cd /sys/kernel/debug/google_battery/; "
|
||||
"for f in `ls ssoc_*` ; do echo \"$f: `cat $f`\" ; done"});
|
||||
}
|
||||
|
||||
DumpFileToFd(fd, "WLC logs", "/dev/logbuffer_wireless");
|
||||
DumpFileToFd(fd, "WLC VER", "/sys/class/power_supply/wireless/device/version");
|
||||
DumpFileToFd(fd, "WLC STATUS", "/sys/class/power_supply/wireless/device/status");
|
||||
DumpFileToFd(fd, "WLC FW Version", "/sys/class/power_supply/wireless/device/fw_rev");
|
||||
DumpFileToFd(fd, "RTX", "/dev/logbuffer_rtx");
|
||||
|
||||
if (!PropertiesHelper::IsUserBuild()) {
|
||||
RunCommandToFd(fd, "gvotables", {"/vendor/bin/sh", "-c", "cat /sys/kernel/debug/gvotables/*/status"});
|
||||
}
|
||||
DumpFileToFd(fd, "Lastmeal", "/data/vendor/mitigation/lastmeal.txt");
|
||||
DumpFileToFd(fd, "Thismeal", "/data/vendor/mitigation/thismeal.txt");
|
||||
RunCommandToFd(fd, "Mitigation Stats", {"/vendor/bin/sh", "-c", "echo \"Source\\t\\tCount\\tSOC\\tTime\\tVoltage\"; "
|
||||
"for f in `ls /sys/devices/virtual/pmic/mitigation/last_triggered_count/*` ; "
|
||||
"do count=`cat $f`; "
|
||||
"a=${f/\\/sys\\/devices\\/virtual\\/pmic\\/mitigation\\/last_triggered_count\\//}; "
|
||||
"b=${f/last_triggered_count/last_triggered_capacity}; "
|
||||
"c=${f/last_triggered_count/last_triggered_timestamp/}; "
|
||||
"d=${f/last_triggered_count/last_triggered_voltage/}; "
|
||||
"cnt=`cat $f`; "
|
||||
"cap=`cat ${b/count/cap}`; "
|
||||
"ti=`cat ${c/count/time}`; "
|
||||
"volt=`cat ${d/count/volt}`; "
|
||||
"echo \"${a/_count/} "
|
||||
"\\t$cnt\\t$cap\\t$ti\\t$volt\" ; done"});
|
||||
RunCommandToFd(fd, "Clock Divider Ratio", {"/vendor/bin/sh", "-c", "echo \"Source\\t\\tRatio\"; "
|
||||
"for f in `ls /sys/devices/virtual/pmic/mitigation/clock_ratio/*` ; "
|
||||
"do ratio=`cat $f`; "
|
||||
"a=${f/\\/sys\\/devices\\/virtual\\/pmic\\/mitigation\\/clock_ratio\\//}; "
|
||||
"echo \"${a/_ratio/} \\t$ratio\" ; done"});
|
||||
RunCommandToFd(fd, "Clock Stats", {"/vendor/bin/sh", "-c", "echo \"Source\\t\\tStats\"; "
|
||||
"for f in `ls /sys/devices/virtual/pmic/mitigation/clock_stats/*` ; "
|
||||
"do stats=`cat $f`; "
|
||||
"a=${f/\\/sys\\/devices\\/virtual\\/pmic\\/mitigation\\/clock_stats\\//}; "
|
||||
"echo \"${a/_stats/} \\t$stats\" ; done"});
|
||||
RunCommandToFd(fd, "Triggered Level", {"/vendor/bin/sh", "-c", "echo \"Source\\t\\tLevel\"; "
|
||||
"for f in `ls /sys/devices/virtual/pmic/mitigation/triggered_lvl/*` ; "
|
||||
"do lvl=`cat $f`; "
|
||||
"a=${f/\\/sys\\/devices\\/virtual\\/pmic\\/mitigation\\/triggered_lvl\\//}; "
|
||||
"echo \"${a/_lvl/} \\t$lvl\" ; done"});
|
||||
RunCommandToFd(fd, "Instruction", {"/vendor/bin/sh", "-c",
|
||||
"for f in `ls /sys/devices/virtual/pmic/mitigation/instruction/*` ; "
|
||||
"do val=`cat $f` ; "
|
||||
"a=${f/\\/sys\\/devices\\/virtual\\/pmic\\/mitigation\\/instruction\\//}; "
|
||||
"echo \"$a=$val\" ; done"});
|
||||
|
||||
}
|
||||
|
||||
void Dumpstate::dumpLogSection(int fd, int fd_bin)
|
||||
{
|
||||
std::string logDir = MODEM_LOG_DIRECTORY;
|
||||
|
|
|
@ -49,7 +49,6 @@ class Dumpstate : public BnDumpstateDevice {
|
|||
// Text sections that can be dumped individually on the command line in
|
||||
// addition to being included in full dumps
|
||||
void dumpWlanSection(int fd);
|
||||
void dumpPowerSection(int fd);
|
||||
|
||||
void dumpLogSection(int fd, int fdModem);
|
||||
|
||||
|
|
334
dumpstate/dump_power_gs201.sh
Normal file
334
dumpstate/dump_power_gs201.sh
Normal file
|
@ -0,0 +1,334 @@
|
|||
#!/vendor/bin/sh
|
||||
build_type="$(getprop ro.build.type)"
|
||||
|
||||
echo "\n------ Power Stats Times ------"
|
||||
echo -n "Boot: " && /vendor/bin/uptime -s && echo -n "Now: " && date;
|
||||
|
||||
echo "\n------ ACPM stats ------"
|
||||
for f in /sys/devices/platform/acpm_stats/*_stats ; do
|
||||
echo "\n\n$f"
|
||||
cat $f
|
||||
done
|
||||
|
||||
echo "\n------ CPU PM stats ------"
|
||||
cat "/sys/devices/system/cpu/cpupm/cpupm/time_in_state"
|
||||
|
||||
echo "\n------ GENPD summary ------"
|
||||
cat "/d/pm_genpd/pm_genpd_summary"
|
||||
|
||||
echo "\n------ Power supply property battery ------"
|
||||
cat "/sys/class/power_supply/battery/uevent"
|
||||
echo "\n------ Power supply property dc ------"
|
||||
cat "/sys/class/power_supply/dc/uevent"
|
||||
echo "\n------ Power supply property gcpm ------"
|
||||
cat "/sys/class/power_supply/gcpm/uevent"
|
||||
echo "\n------ Power supply property gcpm_pps ------"
|
||||
cat "/sys/class/power_supply/gcpm_pps/uevent"
|
||||
echo "\n------ Power supply property main-charger ------"
|
||||
cat "/sys/class/power_supply/main-charger/uevent"
|
||||
|
||||
if [ -d "/sys/class/power_supply/pca9468-mains/uevent" ]
|
||||
then
|
||||
echo "\n------ Power supply property pca9468-mains ------"
|
||||
cat "/sys/class/power_supply/pca9468-mains/uevent"
|
||||
else
|
||||
echo "\n------ Power supply property pca94xx-mains ------"
|
||||
cat "/sys/class/power_supply/pca94xx-mains/uevent"
|
||||
fi
|
||||
|
||||
echo "\n------ Power supply property tcpm ------"
|
||||
cat "/sys/class/power_supply/tcpm-source-psy-8-0025/uevent"
|
||||
echo "\n------ Power supply property usb ------"
|
||||
cat "/sys/class/power_supply/usb/uevent"
|
||||
echo "\n------ Power supply property wireless ------"
|
||||
cat "/sys/class/power_supply/wireless/uevent"
|
||||
|
||||
if [ -d "/sys/class/power_supply/maxfg" ]
|
||||
then
|
||||
echo "\n------ Power supply property maxfg ------"
|
||||
cat "/sys/class/power_supply/maxfg/uevent"
|
||||
echo "\n------ m5_state ------"
|
||||
cat "/sys/class/power_supply/maxfg/m5_model_state"
|
||||
echo "\n------ maxfg ------"
|
||||
cat "/dev/logbuffer_maxfg"
|
||||
echo "\n------ maxfg ------"
|
||||
cat "/dev/logbuffer_maxfg_monitor"
|
||||
else
|
||||
echo "\n------ Power supply property maxfg_base ------"
|
||||
cat "/sys/class/power_supply/maxfg_base/uevent"
|
||||
echo "\n------ Power supply property maxfg_secondary ------"
|
||||
cat "/sys/class/power_supply/maxfg_secondary/uevent"
|
||||
echo "\n------ m5_state ------"
|
||||
cat "/sys/class/power_supply/maxfg_base/m5_model_state"
|
||||
echo "\n------ maxfg_base ------"
|
||||
cat "/dev/logbuffer_maxfg_base"
|
||||
echo "\n------ maxfg_secondary ------"
|
||||
cat "/dev/logbuffer_maxfg_secondary"
|
||||
echo "\n------ maxfg_base ------"
|
||||
cat "/dev/logbuffer_maxfg_base_monitor"
|
||||
echo "\n------ maxfg_secondary ------"
|
||||
cat "/dev/logbuffer_maxfg_secondary_monitor"
|
||||
echo "\n------ google_dual_batt ------"
|
||||
cat "/dev/logbuffer_dual_batt"
|
||||
fi
|
||||
|
||||
if [ -e "/dev/maxfg_history" ]
|
||||
then
|
||||
echo "\n------ Maxim FG History ------"
|
||||
cat "/dev/maxfg_history"
|
||||
fi
|
||||
|
||||
if [ -d "/sys/class/power_supply/dock" ]
|
||||
then
|
||||
echo "\n------ Power supply property dock ------"
|
||||
cat "/sys/class/power_supply/dock/uevent"
|
||||
fi
|
||||
|
||||
if [ -e "/dev/logbuffer_tcpm" ]
|
||||
then
|
||||
echo "\n------ Logbuffer TCPM ------"
|
||||
cat "/dev/logbuffer_tcpm"
|
||||
elif [ $build_type = "userdebug" ]
|
||||
then
|
||||
echo "\n------ TCPM logs ------"
|
||||
if [ -d "/sys/kernel/debug/tcpm" ]
|
||||
then
|
||||
cat /sys/kernel/debug/tcpm/*
|
||||
else
|
||||
cat /sys/kernel/debug/usb/tcpm*
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "\n------ TCPC ------"
|
||||
for f in /sys/devices/platform/10d60000.hsi2c/i2c-*/i2c-max77759tcpc
|
||||
do
|
||||
echo "registers:"
|
||||
cat $f/registers
|
||||
echo "frs:"
|
||||
cat $f/frs
|
||||
echo "auto_discharge:"
|
||||
cat $f/auto_discharge
|
||||
echo "bc12_enabled:"
|
||||
cat $f/bc12_enabled
|
||||
echo "cc_toggle_enable:"
|
||||
cat $f/cc_toggle_enable
|
||||
echo "contaminant_detection:"
|
||||
cat $f/contaminant_detection
|
||||
echo "contaminant_detection_status:"
|
||||
cat $f/contaminant_detection_status
|
||||
done
|
||||
|
||||
echo "\n------ PD Engine ------"
|
||||
cat "/dev/logbuffer_usbpd"
|
||||
echo "\nPOGO Transport"
|
||||
cat "/dev/logbuffer_pogo_transport"
|
||||
echo "\n------ PPS-google_cpm ------"
|
||||
cat "/dev/logbuffer_cpm"
|
||||
echo "\n------ PPS-dc ------"
|
||||
cat "/dev/logbuffer_pca9468"
|
||||
|
||||
echo "\n------ Battery Health ------"
|
||||
cat "/sys/class/power_supply/battery/health_index_stats"
|
||||
echo "\n------ BMS ------"
|
||||
cat "/dev/logbuffer_ssoc"
|
||||
echo "\n------ TTF ------"
|
||||
cat "/dev/logbuffer_ttf"
|
||||
echo "\n------ TTF details ------"
|
||||
cat "/sys/class/power_supply/battery/ttf_details"
|
||||
echo "\n------ TTF stats ------"
|
||||
cat "/sys/class/power_supply/battery/ttf_stats"
|
||||
echo "\n------ aacr_state ------"
|
||||
cat "/sys/class/power_supply/battery/aacr_state"
|
||||
echo "\n------ maxq ------"
|
||||
cat "/dev/logbuffer_maxq"
|
||||
echo "\n------ TEMP/DOCK-DEFEND ------"
|
||||
cat "/dev/logbuffer_bd"
|
||||
|
||||
echo "\n------ TRICKLE-DEFEND Config ------"
|
||||
cd /sys/devices/platform/google,battery/power_supply/battery/
|
||||
for f in `ls bd_*`
|
||||
do
|
||||
echo $f: `cat $f`
|
||||
done
|
||||
|
||||
echo "\n------ DWELL-DEFEND Config ------"
|
||||
cd /sys/devices/platform/google,charger/
|
||||
for f in `ls charge_s*`
|
||||
do
|
||||
echo "$f: `cat $f`"
|
||||
done
|
||||
|
||||
echo "\n------ TEMP-DEFEND Config ------"
|
||||
cd /sys/devices/platform/google,charger/
|
||||
for f in `ls bd_*`
|
||||
do
|
||||
echo "$f: `cat $f`"
|
||||
done
|
||||
|
||||
if [ $build_type = "userdebug" ]
|
||||
then
|
||||
echo "\n------ DC_registers dump ------"
|
||||
cat "/sys/class/power_supply/pca94xx-mains/device/registers_dump"
|
||||
echo "\n------ max77759_chg registers dump ------"
|
||||
cat "/d/max77759_chg/registers"
|
||||
echo "\n------ max77729_pmic registers dump ------"
|
||||
cat "/d/max77729_pmic/registers"
|
||||
echo "\n------ Charging table dump ------"
|
||||
cat "/d/google_battery/chg_raw_profile"
|
||||
|
||||
echo "\n------ fg_model ------"
|
||||
for f in /d/maxfg*
|
||||
do
|
||||
regs=`cat $f/fg_model`
|
||||
echo $f:
|
||||
echo "$regs"
|
||||
done
|
||||
|
||||
echo "\n------ fg_alo_ver ------"
|
||||
for f in /d/maxfg*
|
||||
do
|
||||
regs=`cat $f/algo_ver`
|
||||
echo $f:
|
||||
echo "$regs"
|
||||
done
|
||||
|
||||
echo "\n------ fg_model_ok ------"
|
||||
for f in /d/maxfg*
|
||||
do
|
||||
regs=`cat $f/model_ok`
|
||||
echo $f:
|
||||
echo "$regs"
|
||||
done
|
||||
|
||||
echo "\n------ fg registers ------"
|
||||
for f in /d/maxfg*
|
||||
do
|
||||
regs=`cat $f/registers`
|
||||
echo $f:
|
||||
echo "$regs"
|
||||
done
|
||||
|
||||
echo "\n------ Maxim FG NV RAM ------"
|
||||
for f in /d/maxfg*
|
||||
do
|
||||
regs=`cat $f/nv_registers`
|
||||
echo $f:
|
||||
echo "$regs"
|
||||
done
|
||||
fi
|
||||
|
||||
echo "\n------ Battery EEPROM ------"
|
||||
if [ -e "/sys/devices/platform/10970000.hsi2c/i2c-4/4-0050/eeprom" ]
|
||||
then
|
||||
xxd /sys/devices/platform/10970000.hsi2c/i2c-4/4-0050/eeprom
|
||||
fi
|
||||
|
||||
if [ -e "/sys/devices/platform/10970000.hsi2c/i2c-5/5-0050/eeprom" ]
|
||||
then
|
||||
xxd /sys/devices/platform/10970000.hsi2c/i2c-5/5-0050/eeprom
|
||||
fi
|
||||
|
||||
if [ -e "/sys/devices/platform/10da0000.hsi2c/i2c-5/5-0050/eeprom" ]
|
||||
then
|
||||
xxd /sys/devices/platform/10da0000.hsi2c/i2c-5/5-0050/eeprom
|
||||
fi
|
||||
|
||||
if [ -e "/sys/devices/platform/10da0000.hsi2c/i2c-6/6-0050/eeprom" ]
|
||||
then
|
||||
xxd /sys/devices/platform/10da0000.hsi2c/i2c-6/6-0050/eeprom
|
||||
fi
|
||||
|
||||
if [ -e "/sys/devices/platform/10da0000.hsi2c/i2c-7/7-0050/eeprom" ]
|
||||
then
|
||||
xxd /sys/devices/platform/10da0000.hsi2c/i2c-7/7-0050/eeprom
|
||||
fi
|
||||
|
||||
echo "\n------ Charger Stats ------"
|
||||
cat "/sys/class/power_supply/battery/charge_details"
|
||||
if [ $build_type = "userdebug" ]
|
||||
then
|
||||
echo "\n------ Google Charger ------"
|
||||
cd /sys/kernel/debug/google_charger/
|
||||
for f in `ls pps_*`
|
||||
do
|
||||
echo "$f: `cat $f`"
|
||||
done
|
||||
echo "\n------ Google Battery ------"
|
||||
cd /sys/kernel/debug/google_battery/
|
||||
for f in `ls ssoc_*`
|
||||
do
|
||||
echo "$f: `cat $f`"
|
||||
done
|
||||
fi
|
||||
|
||||
echo "\n------ WLC logs ------"
|
||||
cat "/dev/logbuffer_wireless"
|
||||
echo "\n------ WLC VER ------"
|
||||
cat "/sys/class/power_supply/wireless/device/version"
|
||||
echo "\n------ WLC STATUS ------"
|
||||
cat "/sys/class/power_supply/wireless/device/status"
|
||||
echo "\n------ WLC FW Version ------"
|
||||
cat "/sys/class/power_supply/wireless/device/fw_rev"
|
||||
echo "\n------ RTX ------"
|
||||
cat "/dev/logbuffer_rtx"
|
||||
|
||||
if [ $build_type = "userdebug" ]
|
||||
then
|
||||
echo "\n------ gvotables ------"
|
||||
cat /sys/kernel/debug/gvotables/*/status
|
||||
fi
|
||||
|
||||
echo "\n------ Lastmeal ------"
|
||||
cat "/data/vendor/mitigation/lastmeal.txt"
|
||||
echo "\n------ Thismeal ------"
|
||||
cat "/data/vendor/mitigation/thismeal.txt"
|
||||
echo "\n------ Mitigation Stats ------"
|
||||
echo "Source\t\tCount\tSOC\tTime\tVoltage"
|
||||
for f in `ls /sys/devices/virtual/pmic/mitigation/last_triggered_count/*`
|
||||
do
|
||||
count=`cat $f`
|
||||
a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/last_triggered_count\//}
|
||||
b=${f/last_triggered_count/last_triggered_capacity}
|
||||
c=${f/last_triggered_count/last_triggered_timestamp/}
|
||||
d=${f/last_triggered_count/last_triggered_voltage/}
|
||||
cnt=`cat $f`
|
||||
cap=`cat ${b/count/cap}`
|
||||
ti=`cat ${c/count/time}`
|
||||
volt=`cat ${d/count/volt}`
|
||||
echo "${a/_count/} \t$cnt\t$cap\t$ti\t$volt"
|
||||
done
|
||||
|
||||
echo "\n------ Clock Divider Ratio ------"
|
||||
echo \"Source\t\tRatio\"
|
||||
for f in `ls /sys/devices/virtual/pmic/mitigation/clock_ratio/*`
|
||||
do ratio=`cat $f`
|
||||
a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/clock_ratio\//}
|
||||
echo "${a/_ratio/} \t$ratio"
|
||||
done
|
||||
|
||||
echo "\n------ Clock Stats ------"
|
||||
echo "Source\t\tStats"
|
||||
for f in `ls /sys/devices/virtual/pmic/mitigation/clock_stats/*`
|
||||
do
|
||||
stats=`cat $f`
|
||||
a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/clock_stats\//};
|
||||
echo "${a/_stats/} \t$stats"
|
||||
done
|
||||
|
||||
echo "\n------ Triggered Level ------"
|
||||
echo "Source\t\tLevel"
|
||||
for f in `ls /sys/devices/virtual/pmic/mitigation/triggered_lvl/*`
|
||||
do
|
||||
lvl=`cat $f`
|
||||
a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/triggered_lvl\//}
|
||||
echo "${a/_lvl/} \t$lvl"
|
||||
done
|
||||
|
||||
echo "\n------ Instruction ------"
|
||||
for f in `ls /sys/devices/virtual/pmic/mitigation/instruction/*`
|
||||
do
|
||||
val=`cat $f`
|
||||
a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/instruction\//}
|
||||
echo "$a=$val"
|
||||
done
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue