On Fri, Jan 10, 2014 at 04:50:16PM -0800, Andrew Bresticker wrote: > Many devices rely on pinctrl/pinmux settings being applied > before probing and some of these may probe before device_initcall > time (e.g. i2c at subsys_initcall). Move Tegra1x4 pinctrl driver > registration to arch_initcall time so that proper pin settings > can be applied earlier. > > Signed-off-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx> > --- > drivers/pinctrl/pinctrl-tegra114.c | 13 ++++++++++++- > drivers/pinctrl/pinctrl-tegra124.c | 13 ++++++++++++- > 2 files changed, 24 insertions(+), 2 deletions(-) I wonder if a better approach would be to add pin control and pin mux settings for devices that explicitly need them to the device tree nodes of the devices themselves. That way they should be able to use deferred probing to handle this kind of dependency rather than relying on magic initcall ordering. This does make the Tegra114 and Tegra124 drivers consistent with what we have on Tegra20 an Tegra30, though, so perhaps pinctrl is one of the few exceptions where initcall ordering would be okay. Thierry
Attachment:
pgpcUyr6JU9yw.pgp
Description: PGP signature