Messages in this thread |  | | From | Linus Walleij <> | Date | Sat, 12 Sep 2020 18:21:14 +0200 | Subject | Re: [PATCH] pinctrl: devicetree: Keep deferring even on timeout |
| |
On Tue, Aug 25, 2020 at 4:33 PM Thierry Reding <thierry.reding@gmail.com> wrote:
> From: Thierry Reding <treding@nvidia.com> > > driver_deferred_probe_check_state() may return -ETIMEDOUT instead of > -EPROBE_DEFER after all built-in drivers have been probed. This can > cause issues for built-in drivers that depend on resources provided by > loadable modules. > > One such case happens on Tegra where I2C controllers are used during > early boot to set up the system PMIC, so the I2C driver needs to be a > built-in driver. At the same time, some instances of the I2C controller > depend on the DPAUX hardware for pinmuxing. Since the DPAUX is handled > by the display driver, which is usually not built-in, the pin control > states will not become available until after the root filesystem has > been mounted and the display driver loaded from it. > > Fixes: bec6c0ecb243 ("pinctrl: Remove use of driver_deferred_probe_check_state_continue()") > Suggested-by: John Stultz <john.stultz@linaro.org> > Signed-off-by: Thierry Reding <treding@nvidia.com>
I applied this patch (rather than Johns') since John agreed this is a better solution.
I got Greg's ACK on Johns patch but not this one, but anyways it shows he's convenient with the concept so here we go.
Yours, Linus Walleij
|  |