Messages in this thread | | | Date | Fri, 12 Jan 2024 10:47:58 +0100 | From | neil.armstrong@linaro ... | Subject | Re: [PATCH v2] power: supply: qcom_battmgr: Ignore notifications before initialization |
| |
On 03/01/2024 13:36, Konrad Dybcio wrote: > Commit b43f7ddc2b7a ("power: supply: qcom_battmgr: Register the power > supplies after PDR is up") moved the devm_power_supply_register() calls > so that the power supply devices are not registered before we go through > the entire initialization sequence (power up the ADSP remote processor, > wait for it to come online, coordinate with userspace..). > > Some firmware versions (e.g. on SM8550) seem to leave battmgr at least > partly initialized when exiting the bootloader and loading Linux. Check > if the power supply devices are registered before consuming the battmgr > notifications. > > Fixes: b43f7ddc2b7a ("power: supply: qcom_battmgr: Register the power supplies after PDR is up") > Reported-by: Xilin Wu <wuxilin123@gmail.com> > Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> > --- > Changes in v2: > - Fix the commit title > - Link to v1: https://lore.kernel.org/linux-arm-msm/d9cf7d9d-60d9-4637-97bf-c9840452899e@linaro.org/T/#t > --- > drivers/power/supply/qcom_battmgr.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/power/supply/qcom_battmgr.c b/drivers/power/supply/qcom_battmgr.c > index a12e2a66d516..7d85292eb839 100644 > --- a/drivers/power/supply/qcom_battmgr.c > +++ b/drivers/power/supply/qcom_battmgr.c > @@ -1271,6 +1271,10 @@ static void qcom_battmgr_callback(const void *data, size_t len, void *priv) > struct qcom_battmgr *battmgr = priv; > unsigned int opcode = le32_to_cpu(hdr->opcode); > > + /* Ignore the pings that come before Linux cleanly initializes the battmgr stack */ > + if (!battmgr->bat_psy) > + return; > + > if (opcode == BATTMGR_NOTIFICATION) > qcom_battmgr_notification(battmgr, data, len); > else if (battmgr->variant == QCOM_BATTMGR_SC8280XP) > > --- > base-commit: 0fef202ac2f8e6d9ad21aead648278f1226b9053 > change-id: 20240103-topic-battmgr2-15c17fac6d35 > > Best regards,
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8650-QRD
| |