Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1582723
| From | Javier Martinez Canillas <javier@osg.samsung.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH] regulator: core: Resolve supplies before disabling unused regulators |
| Date | 2017-02-16 18:30 +0100 |
| Message-ID | <tby2u-15K-25@gated-at.bofh.it> (permalink) |
| References | <tbxJ8-Xz-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hello,
On 02/16/2017 02:06 PM, Javier Martinez Canillas wrote:
> After commit 66d228a2bf03 ("regulator: core: Don't use regulators as
> supplies until the parent is bound"), input supplies aren't resolved
> if the input supplies parent device has not been bound. This prevent
> regulators to hold an invalid reference if its supply parent device
> driver probe is deferred.
>
> But this causes issues on some boards where a PMIC's regulator use as
> input supply a regulator from another PMIC whose driver is registered
> after the driver for the former.
>
> In this case the regulators for the first PMIC will fail to resolve
> input supplies on regulators registration (since the other PMIC wasn't
> probed yet). And when the core attempts to resolve again latter when
> the other PMIC registers its own regulators, it will fail again since
> the parent device isn't bound yet.
>
> This will cause some parent supplies to never be resolved and wrongly
> be disabled on boot due taking them as unused.
>
> To solve this problem don't attempt to resolve the pending regulators
> input supplies on regulator registration, but instead do it just once
> before disabling the unused regulators.
>
> This also makes the regulator resolve logic more efficient since there
> is no need to attempt to resolve the input supplies on each regulator
> registration, and doing it once before disabling the unused is enough.
>
I just noticed that this last paragraph is not true. Removing the input
supply resolve logic from regulator_registration() may cause issues for
modules, since these will register regulators after late_initcall().
So I'll post a v2 leaving this part. Sorry for the noise.
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
[PATCH] regulator: core: Resolve supplies before disabling unused regulators Javier Martinez Canillas <javier@osg.samsung.com> - 2017-02-16 18:10 +0100 Re: [PATCH] regulator: core: Resolve supplies before disabling unused regulators Javier Martinez Canillas <javier@osg.samsung.com> - 2017-02-16 18:30 +0100
csiph-web