[U-Boot] [PATCH v3 15/15] bcm2835_pinctrl: Probe pre-reloc

Alexander Graf
2018-01-25T11:05:56Z

The serial drivers now depend on the pinctrl driver to determine whether
they are enabled. That means if a serial device wants to be used pre-reloc,
we also need the pinctrl device pre-reloc.

Adapt the pinctrl driver as well as dts overlay accordingly.

Signed-off-by: Alexander Graf <agraf@suse.de>
---
arch/arm/dts/bcm283x-uboot.dtsi | 4 ++++
drivers/pinctrl/broadcom/pinctrl-bcm283x.c | 3 ++-
2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/arm/dts/bcm283x-uboot.dtsi b/arch/arm/dts/bcm283x-uboot.dtsi
index 8e4231ae6c..21d038aebb 100644
--- a/arch/arm/dts/bcm283x-uboot.dtsi
+++ b/arch/arm/dts/bcm283x-uboot.dtsi
@@ -20,3 +20,7 @@
skip-init;
u-boot,dm-pre-reloc;
};
+
+&gpio {
+ u-boot,dm-pre-reloc;
+};
diff --git a/drivers/pinctrl/broadcom/pinctrl-bcm283x.c b/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
index 83dde2302e..6fbd6efbd2 100644
--- a/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
+++ b/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
@@ -148,5 +148,6 @@ U_BOOT_DRIVER(pinctrl_bcm283x) = {
.of_match = of_match_ptr(bcm2835_pinctrl_id),
.priv_auto_alloc_size = sizeof(struct bcm283x_pinctrl_priv),
.ops = &bcm283x_pinctrl_ops,
- .probe = bcm283x_pinctl_probe
+ .probe = bcm283x_pinctl_probe,
+ .flags = DM_FLAG_PRE_RELOC,
};
--
2.12.3