[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <573166b75e524517782471c2b7f96e03fd93d175.camel@puri.sm>
Date: Tue, 14 Jun 2022 11:06:06 +0200
From: Martin Kepplinger <martin.kepplinger@...i.sm>
To: matti.vaittinen@...rohmeurope.com, lgirdwood@...il.com,
broonie@...nel.org
Cc: linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
arm-soc <linux-arm-kernel@...ts.infradead.org>,
Pengutronix Kernel Team <kernel@...gutronix.de>
Subject: regulator: BD71837 PMIC resume during noirq phase?
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
Powered by blists - more mailing lists