Thread (14 messages) 14 messages, 4 authors, 2025-09-18

Re: [PATCH v5 9/9] power: supply: qcom_battmgr: handle charging state change notifications

From: Fenglin Wu <hidden>
Date: 2025-09-18 02:01:34
Also in: linux-arm-msm, linux-pm, linux-usb, lkml

On 9/17/2025 7:14 PM, Konrad Dybcio wrote:
On 9/17/25 12:15 PM, Fenglin Wu via B4 Relay wrote:
quoted
From: Fenglin Wu <redacted>

The X1E80100 battery management firmware sends a notification with
code 0x83 when the battery charging state changes, such as switching
between fast charge, taper charge, end of charge, or any other error
charging states. The same notification code is used with bit[16] set
if charging stops due to reaching the charge control end threshold.
Additionally, a 2-bit value is added in bit[18:17] with the same code
and used to indicate the charging source capability: a value of 2
represents a strong charger, 1 is a weak charger, and 0 is no charging
source. The 3-MSB [18:16] in the notification code is not much useful
for now, hence just ignore them and trigger a power supply change event
whenever 0x83 notification code is received. This helps to eliminate the
unknown notification error messages.
Thank you for explaining the technical background.

Please hit enter somewhere in your commit message, this is a very
long paragraph, making it difficult to read.
I just realized I made a mistake on the bit position, it should be 
bit[8] for reaching to the charge control threshold, bit[10:9] for 
charging source capability. I don't know what I was thinking when 
writing the commit text :(. I will correct them in the next patch.
I believe this maps to:

0 -> POWER_SUPPLY_CHARGE_TYPE_NONE
1 -> POWER_SUPPLY_CHARGE_TYPE_TRICKLE
2 -> POWER_SUPPLY_CHARGE_TYPE_FAST (or _STANDARD, I see battmgr code
reports them both as 2)

However, we already set it to none/trickle/standard(taper) based on
the usual notifications, so I'm not sure if these are more common or
arrive outside the normal state changes - if so, perhaps we can take
them into account as well?
This is not related with the real charging status. I double checked in 
the battery management firmware, it is checking the charging source 
power capability by multiplying maximum voltage and current reading from 
the PDOs. Any charger adapter with a maximum power below 60W is 
identified as a slow/weak charger.
I think it also warrants a:

Reported-by: Sebastian Reichel <redacted>
ACK
Konrad
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help