1#!/vendor/bin/sh 2echo "------ Camera HAL Graph State Dump ------" 3for f in $(ls -t /data/vendor/camera/hal_graph_state*.txt |head -1); do 4 echo $f 5 cat $f 6done 7 8build_type="$(getprop ro.build.type)" 9 10echo "\n------ Power Stats Times ------" 11echo -n "Boot: " && /vendor/bin/uptime -s && echo -n "Now: " && date; 12 13echo "\n------ ACPM stats ------" 14for f in /sys/devices/platform/acpm_stats/*_stats ; do 15 echo "\n\n$f" 16 cat $f 17done 18 19echo "\n------ CPU PM stats ------" 20cat "/sys/devices/system/cpu/cpupm/cpupm/time_in_state" 21 22echo "\n------ GENPD summary ------" 23cat "/d/pm_genpd/pm_genpd_summary" 24 25echo "\n------ Power supply property battery ------" 26cat "/sys/class/power_supply/battery/uevent" 27echo "\n------ Power supply property dc ------" 28cat "/sys/class/power_supply/dc/uevent" 29echo "\n------ Power supply property gcpm ------" 30cat "/sys/class/power_supply/gcpm/uevent" 31echo "\n------ Power supply property gcpm_pps ------" 32cat "/sys/class/power_supply/gcpm_pps/uevent" 33echo "\n------ Power supply property main-charger ------" 34cat "/sys/class/power_supply/main-charger/uevent" 35echo "\n------ Power supply property pca9486-mains ------" 36cat "/sys/class/power_supply/pca9468-mains/uevent" 37echo "\n------ Power supply property tcpm ------" 38cat /sys/class/power_supply/tcpm-source-psy-*/uevent 39echo "\n------ Power supply property usb ------" 40cat "/sys/class/power_supply/usb/uevent" 41echo "\n------ Power supply property wireless ------" 42cat "/sys/class/power_supply/wireless/uevent" 43 44if [ -d "/sys/class/power_supply/maxfg" ] 45then 46 echo "\n------ Power supply property maxfg ------" 47 cat "/sys/class/power_supply/maxfg/uevent" 48 echo "\n------ m5_state ------" 49 cat "/sys/class/power_supply/maxfg/m5_model_state" 50 echo "\n------ maxfg ------" 51 cat "/dev/logbuffer_maxfg" 52 echo "\n------ maxfg ------" 53 cat "/dev/logbuffer_maxfg_monitor" 54else 55 echo "\n------ Power supply property maxfg_base ------" 56 cat "/sys/class/power_supply/maxfg_base/uevent" 57 echo "\n------ Power supply property maxfg_flip ------" 58 cat "/sys/class/power_supply/maxfg_flip/uevent" 59 echo "\n------ m5_state ------" 60 cat "/sys/class/power_supply/maxfg_base/m5_model_state" 61 echo "\n------ maxfg_base ------" 62 cat "/dev/logbuffer_maxfg_base" 63 echo "\n------ maxfg_flip ------" 64 cat "/dev/logbuffer_maxfg_flip" 65 echo "\n------ maxfg_base ------" 66 cat "/dev/logbuffer_maxfg_base_monitor" 67 echo "\n------ maxfg_flip ------" 68 cat "/dev/logbuffer_maxfg_flip_monitor" 69fi 70 71if [ -d "/sys/class/power_supply/dock" ] 72then 73 echo "\n------ Power supply property dock ------" 74 cat "/sys/class/power_supply/dock/uevent" 75fi 76 77if [ -e "/dev/logbuffer_tcpm" ] 78then 79 echo "\n------ Logbuffer TCPM ------" 80 cat "/dev/logbuffer_tcpm" 81 if [ -d "/sys/kernel/debug/tcpm" ] 82 then 83 echo "\n------ TCPM logs ------" 84 cat /sys/kernel/debug/tcpm/* 85 else 86 echo "\n------ TCPM logs ------" 87 cat /sys/kernel/debug/usb/tcpm* 88 fi 89fi 90 91echo "\n------ TCPC ------" 92max77759tcpc_path="/sys/devices/platform/10d50000.hsi2c/i2c-12/12-0025" 93echo "registers:" 94cat $max77759tcpc_path/registers 95echo "frs:" 96cat $max77759tcpc_path/frs 97echo "auto_discharge:" 98cat $max77759tcpc_path/auto_discharge 99echo "bc12_enabled:" 100cat $max77759tcpc_path/bc12_enabled 101echo "cc_toggle_enable:" 102cat $max77759tcpc_path/cc_toggle_enable 103echo "contaminant_detection:" 104cat $max77759tcpc_path/contaminant_detection 105echo "contaminant_detection_status:" 106cat $max77759tcpc_path/contaminant_detection_status 107 108echo "\n------ PD Engine ------" 109cat "/dev/logbuffer_usbpd" 110echo "\n------ POGO Transport ------" 111cat "/dev/logbuffer_pogo_transport" 112echo "\n------ PPS-google_cpm ------" 113cat "/dev/logbuffer_cpm" 114echo "\n------ PPS-dc ------" 115cat "/dev/logbuffer_pca9468" 116 117echo "\n------ Battery Health ------" 118cat "/sys/class/power_supply/battery/health_index_stats" 119echo "\n------ Battery Health SoC Residency ------" 120cat "/sys/class/power_supply/battery/swelling_data" 121echo "\n------ BMS ------" 122cat "/dev/logbuffer_ssoc" 123echo "\n------ TTF ------" 124cat "/dev/logbuffer_ttf" 125echo "\n------ TTF details ------" 126cat "/sys/class/power_supply/battery/ttf_details" 127echo "\n------ TTF stats ------" 128cat "/sys/class/power_supply/battery/ttf_stats" 129echo "\n------ maxq ------" 130cat "/dev/logbuffer_maxq" 131echo "\n------ aacr_state ------" 132cat "/sys/class/power_supply/battery/aacr_state" 133echo "\n------ TEMP/DOCK-DEFEND ------" 134cat "/dev/logbuffer_bd" 135 136echo "\n------ TRICKLE-DEFEND Config ------" 137cd /sys/devices/platform/google,battery/power_supply/battery/ 138for f in `ls bd_*` 139do 140 echo $f: `cat $f` 141done 142 143echo "\n------ DWELL-DEFEND Config ------" 144cd /sys/devices/platform/google,charger/ 145for f in `ls charge_s*` 146do 147 echo "$f: `cat $f`" 148done 149 150echo "\n------ TEMP-DEFEND Config ------" 151cd /sys/devices/platform/google,charger/ 152for f in `ls bd_*` 153do 154 echo "$f: `cat $f`" 155done 156 157echo "\n------ DC_registers dump ------" 158cat "/sys/class/power_supply/pca9468-mains/device/registers_dump" 159echo "\n------ max77759_chg registers dump ------" 160cat "/sys/class/power_supply/main-charger/device/registers_dump" 161echo "\n------ max77729_pmic registers dump ------" 162cat /sys/devices/platform/10d50000.hsi2c/i2c-*/*-0066/registers_dump 163 164if [ $build_type = "userdebug" ] 165then 166 echo "\n------ Charging table dump ------" 167 cat "/d/google_battery/chg_raw_profile" 168 169 echo "\n------ fg_model ------" 170 for f in /d/maxfg* 171 do 172 regs=`cat $f/fg_model` 173 echo $f: 174 echo "$regs" 175 done 176 177 echo "\n------ fg_alo_ver ------" 178 for f in /d/maxfg* 179 do 180 regs=`cat $f/algo_ver` 181 echo $f: 182 echo "$regs" 183 done 184 185 echo "\n------ fg_model_ok ------" 186 for f in /d/maxfg* 187 do 188 regs=`cat $f/model_ok` 189 echo $f: 190 echo "$regs" 191 done 192 193 echo "\n------ fg registers ------" 194 for f in /d/maxfg* 195 do 196 regs=`cat $f/registers` 197 echo $f: 198 echo "$regs" 199 done 200fi 201 202echo "\n------ Battery EEPROM ------" 203if [ -e "/sys/devices/platform/10970000.hsi2c/i2c-8/8-0050/eeprom" ] 204then 205 xxd /sys/devices/platform/10970000.hsi2c/i2c-8/8-0050/eeprom 206fi 207 208echo "\n------ Charger Stats ------" 209cat "/sys/class/power_supply/battery/charge_details" 210if [ $build_type = "userdebug" ] 211then 212 echo "\n------ Google Charger ------" 213 cd /sys/kernel/debug/google_charger/ 214 for f in `ls pps_*` 215 do 216 echo "$f: `cat $f`" 217 done 218 echo "\n------ Google Battery ------" 219 cd /sys/kernel/debug/google_battery/ 220 for f in `ls ssoc_*` 221 do 222 echo "$f: `cat $f`" 223 done 224fi 225 226echo "\n------ WLC logs ------" 227cat "/dev/logbuffer_wireless" 228echo "\n------ WLC VER ------" 229cat "/sys/class/power_supply/wireless/device/version" 230echo "\n------ WLC STATUS ------" 231cat "/sys/class/power_supply/wireless/device/status" 232echo "\n------ WLC FW Version ------" 233cat "/sys/class/power_supply/wireless/device/fw_rev" 234echo "\n------ RTX ------" 235cat "/dev/logbuffer_rtx" 236 237if [ $build_type = "userdebug" ] 238then 239 echo "\n------ gvotables ------" 240 cat /sys/kernel/debug/gvotables/*/status 241fi 242 243echo "\n------ Mitigation Stats ------" 244echo "Source\t\tCount\tSOC\tTime\tVoltage" 245for f in `ls /sys/devices/virtual/pmic/mitigation/last_triggered_count/*` 246do 247 count=`cat $f` 248 a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/last_triggered_count\//} 249 b=${f/last_triggered_count/last_triggered_capacity} 250 c=${f/last_triggered_count/last_triggered_timestamp/} 251 d=${f/last_triggered_count/last_triggered_voltage/} 252 cnt=`cat $f` 253 cap=`cat ${b/count/cap}` 254 ti=`cat ${c/count/time}` 255 volt=`cat ${d/count/volt}` 256 echo "${a/_count/} \t$cnt\t$cap\t$ti\t$volt" 257done 258 259echo "\n------ Clock Divider Ratio ------" 260echo \"Source\t\tRatio\" 261for f in `ls /sys/devices/virtual/pmic/mitigation/clock_ratio/*` 262do ratio=`cat $f` 263 a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/clock_ratio\//} 264 echo "${a/_ratio/} \t$ratio" 265done 266 267echo "\n------ Clock Stats ------" 268echo "Source\t\tStats" 269for f in `ls /sys/devices/virtual/pmic/mitigation/clock_stats/*` 270do 271 stats=`cat $f` 272 a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/clock_stats\//}; 273 echo "${a/_stats/} \t$stats" 274done 275 276echo "\n------ Triggered Level ------" 277echo "Source\t\tLevel" 278for f in `ls /sys/devices/virtual/pmic/mitigation/triggered_lvl/*` 279do 280 lvl=`cat $f` 281 a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/triggered_lvl\//} 282 echo "${a/_lvl/} \t$lvl" 283done 284 285echo "\n------ Instruction ------" 286for f in `ls /sys/devices/virtual/pmic/mitigation/instruction/*` 287do 288 val=`cat $f` 289 a=${f/\/sys\/devices\/virtual\/pmic\/mitigation\/instruction\//} 290 echo "$a=$val" 291done 292 293