Messages in this thread | | | Subject | regulator: BD71837 PMIC resume during noirq phase? | From | Martin Kepplinger <> | Date | Tue, 14 Jun 2022 11:06:06 +0200 |
| |
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
| |