summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinctrl-tegra20.c
diff options
context:
space:
mode:
authorLucas Stach <dev@lynxeye.de>2014-11-02 21:13:46 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2014-11-04 12:16:51 +0100
commit8b2456a4cbd9d9dfb94aa2d59e36e353a2b31fcb (patch)
tree073aa1fc3676b571a6232add306da7a2d17af7da /drivers/pinctrl/pinctrl-tegra20.c
parentaa8bd30851e9a09480afde2b98b24b8c1736292e (diff)
downloadbarebox-8b2456a4cbd9d9dfb94aa2d59e36e353a2b31fcb.tar.gz
barebox-8b2456a4cbd9d9dfb94aa2d59e36e353a2b31fcb.tar.xz
pinctrl: tegra: try to select "boot" state
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@lynxeye.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/pinctrl/pinctrl-tegra20.c')
-rw-r--r--drivers/pinctrl/pinctrl-tegra20.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/pinctrl/pinctrl-tegra20.c b/drivers/pinctrl/pinctrl-tegra20.c
index 3c11be6f55..be9d8a996d 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[] = {