[ 366.151054] gic_show_resume_irq: 222 triggered
This debug message in the kernel log indicates that a PMIC SPMI IRQ was the wakeup trigger from suspend.
To enable additional debug message printing use the following cmds.
adb root
adb wait-for-devices
adb shell mount -t debugfs none /sys/kernel/debug
adb shell “echo 8 > /proc/sys/kernel/printk”
adb shell “echo ‘func qpnpint_handle_irq +p’ > /sys/kernel/debug/dynamic_debug/control”
Once the device wakes up from suspend, messages like the ones below will get printed out.
Example #1:
[ 26.935784] qpnpint_handle_irq: spec slave = 0 per = 18 irq = 0
slave = 0 indicates that it is PM8941. per = 18 indicates that it is PM8941 peripheral 0x12. If we look this up in the PM8941 register document it corresponds to SMBB_BAT_IF_PERPH. Looking at register 0x1218 indicates that irq = 0 corresponds to the BAT_PRES IRQ.
Example #2:
[ 23.708495] qpnpint_handle_irq: spec slave = 0 per = 19 irq = 1
slave = 0 indicates that it is PM8941. per = 19 indicates that it is PM8941 peripheral 0x13. If we look this up in the PM8941 register document it corresponds to SMBB_USB_CHGPTH_PERPH Looking at register 0x1318 indicates that irq = 1 corresponds to the USBIN_VALID IRQ.