I was pulling my hair out trying to understand why battmgr was not responding specifically on my laptop (Latitude 7455) specifically in EL2… even got some people to load the ADSP firmware in binja, and ran diag-router with a hacked up QCSuper to try to look at the logs (uh, that thing only enables raw "logs" currently, I started trying to enable "messages" but couldn't get the mask-setting commands right)…
and now that some people in the community have gotten their hands on leaked schematics :) i was told some things and I realized.
I DID IT ALL TO MYSELF 🤦♀️
For some reason, my device tree had i2c bus 20 enabled, without even using it for anything.
I2C20 IS ACTUALLY SMBUS TO THE BATTERY 🤦♀️
And in EL1, the Qualcomm hypervisor was apparently preventing Linux from screwing with that bus (not sure if it was failing to attach, I didn't pay attention to the messages lol), but in EL2 Linux is free to do whatever to it, so it would initialize it for itself, interrupting the battmgr firmware's usage of it. Oopsie!


