Thread (3 messages) 3 messages, 2 authors, 2020-09-12

Re: [PATCH] pinctrl: devicetree: Keep deferring even on timeout

From: Linus Walleij <hidden>
Date: 2020-08-28 12:43:11
Also in: lkml

On Tue, Aug 25, 2020 at 4:33 PM Thierry Reding [off-list ref] wrote:
From: Thierry Reding <redacted>

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 <redacted>
Signed-off-by: Thierry Reding <redacted>
Just like with the identical patch from John I got a while back, I'd like
some nod from the device core maintainers (Greg or Raphael) that this
is how we want to do things.

Yours,
Linus Walleij
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help