New DTs call the initial pinctrl state "boot" in order to avoid Linux reconfiguring the pinctrl by default. The bootloader should explicitly set this state. Signed-off-by: Lucas Stach <dev@xxxxxxxxxx> --- drivers/pinctrl/pinctrl-tegra20.c | 8 ++++++-- drivers/pinctrl/pinctrl-tegra30.c | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-tegra20.c b/drivers/pinctrl/pinctrl-tegra20.c index 3c11be6..be9d8a9 100644 --- a/drivers/pinctrl/pinctrl-tegra20.c +++ b/drivers/pinctrl/pinctrl-tegra20.c @@ -320,10 +320,14 @@ static int pinctrl_tegra20_probe(struct device_d *dev) ctrl->pinctrl.ops = &pinctrl_tegra20_ops; ret = pinctrl_register(&ctrl->pinctrl); - if (ret) + if (ret) { free(ctrl); + return ret; + } + + of_pinctrl_select_state(dev->device_node, "boot"); - return ret; + return 0; } static __maybe_unused struct of_device_id pinctrl_tegra20_dt_ids[] = { diff --git a/drivers/pinctrl/pinctrl-tegra30.c b/drivers/pinctrl/pinctrl-tegra30.c index 8277218..aac6760 100644 --- a/drivers/pinctrl/pinctrl-tegra30.c +++ b/drivers/pinctrl/pinctrl-tegra30.c @@ -897,10 +897,14 @@ static int pinctrl_tegra30_probe(struct device_d *dev) ctrl->pinctrl.ops = &pinctrl_tegra30_ops; ret = pinctrl_register(&ctrl->pinctrl); - if (ret) + if (ret) { free(ctrl); + return ret; + } + + of_pinctrl_select_state(dev->device_node, "boot"); - return ret; + return 0; } static __maybe_unused struct of_device_id pinctrl_tegra30_dt_ids[] = { -- 1.9.3 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox