Through the top command, you can query the application with high CPU consumption.
#logkit#Call logkit APK to save logcat, dmesg, crash, qxdm, GPU log and other log information to the mobile phone. Open log for the specified function to qpnpint_ handle_ IRQ as an example: adb shell "echo 'func qpnpint_handle_irq +p' > /sys/kernel/debug/dynamic_debug/control" C) adb shell mount -t debugfs none /sys/kernel/debugĪdb shell "echo 8 > /proc/sys/kernel/printk"Īdb shell "echo 'file qpnp-adc-tm.c +p' > /sys/kernel/debug/dynamic_debug/control"Īdb shell "echo 'file qpnp-adc-common.c +p' > /sys/kernel/debug/dynamic_debug/control" You can use the following command to open the kernel log of the specified file (for example, qpnp ADC TM. The power consumption problem time tracking table can be used to accurately track power consumption anomalies. Standby current optimization 2.1 check through ADB log adb logcat -v time > YearMounthDayHourMinute_logcat.txt //main logĪdb logcat -v time -b events > YearMounthDayHourMinute_logcat_event.txt //event logĪdb logcat -v time -b radio > YearMounthDayHourMinute_logcat_radio.txt //radio logĪdb shell dmesg > YearMounthDayHourMinute_dmesg.txt //kernel log If the count of Vmin is 0, it indicates that the device has never entered VDD min if non zero means that the device has entered VDD min_ min。 RPM Mode: xosdĪctual last sleep(msec):110000 1.14 using trace32Ĭomplete and detailed GPIO / Clk / PMIC information can be dump out to exclude abnormal state during sleep.
Use the following command to check the RPM lower power mode count: cat /sys/kernel/debug/rpm_stats 1.13 check rpm_ statsĬheck rpm_ Whether stats enter VDD min or XO / no shutdown. In addition, it may be related to NV 4399 and 905. If you can’t download, you need to confirm: CONFIG_MSM_DLOAD_MODE=y After that, the method of grabbing log is the same as above. Then long press the key to enter download. SWEVENT(SLEEP_DEEP_SLEEP_ENTER_COMPLETE, sleep_ep_sleep_mode, sleep_duration) In order to get the GPIO status during sleep, add the following print: rpm_proc/core/power/sleep/src/lpr_definition_uber.c The method of reading GPIO status is as follows: If the address of ldo6 is 0x14546, the shutdown method is as follows: # cd /sys/kernel/debug/spmi/spmi-0Ĭlose MPP1, MPP2, mpp3 and mpp4 before sleepįor example, the register addresses of pm8916 are respectively 0xa046, 0xa146, 0xa246 and 0xa346Ĭat data to see the original value before closing.
0-000c: hanging on i2c0, the address is 0xcĬheck whether the driver code of the two devices has executed the regulator_ enable。
Then find the corresponding code, turn off LDO when sleeping and turn it on when waking up. This allows you to see which devices requested ldo6.
You can debug as follows: cat /sys/kernel/debug/regulator/8916_l6/consumers (2) LDO is used by too many devices, so it is not suitable to use the ADB shell to close it. In general, the upper limit of bottom current reference data is: For details, please refer to the current consumption data document or release note from the release. The bottom current data of each platform may be different. The bottom current is debugged in the mobile phone flight mode.