regulator: BD71837 PMIC resume during noirq phase?
Martin Kepplinger
martin.kepplinger at puri.sm
Tue Jun 14 02:06:06 PDT 2022
hi Matti,
I heard you've been helpful in the past - thank for that! Here's a
question I'm currently stuck at: In short, imx8mq can't yet resume from
suspend when using the bd71839 pmic via i2c. The original report here,
just for the background:
https://lore.kernel.org/linux-arm-kernel/2d5d3bbec443742506e39488dbfbf724bb4ca93f.camel@puri.sm/T/#u
But here's what I *think* is going on: When the (buck3) regulator from
bd71839 is the power-supply for a power domain (gpu), the power domain
driver can't resume because buck3 can't be enabled when the pmic isn't
running yet. I'm still a bit uncertain, but here's the logs when simply
printing in the respective suspend/resume callbacks:
[ 452.199600] bd718xx-pmic bd71837-pmic.2.auto: bd718xx_resume_noirq
[ 452.301450] imx-pgc imx-pgc-domain.5: failed to enable regulator: -
ETIMEDOUT
[ 452.320593] imx-i2c 30a20000.i2c: i2c_imx_resume
[ 452.322152] bd718xx-pmic bd71837-pmic.2.auto: bd718xx_resume
[ 452.323853] imx-i2c 30a30000.i2c: i2c_imx_resume
[ 452.324778] imx-i2c 30a40000.i2c: i2c_imx_resume
[ 452.325017] imx-i2c 30a50000.i2c: i2c_imx_resume
and regulator_enable() in imx-pgc is called from genpd_resume_noirq().
At this point, does any workaround or fix come to your mind I could
test? I guess i2c needs to be resumed too...
Why does power domain only implement resume_noirq? How could I untangle
this?
thank you very much,
martin
More information about the linux-arm-kernel
mailing list