summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2021-08-25 14:54:27 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2021-10-04 13:52:22 +0200
commit34ebefa8bb84c1722c305b9fdb8a2803dbdbb98c (patch)
tree0d719013850fc81242a59bebcb4eafd4f3a6f8f0 /arch
parent9dee59c3189c9e087e7763333a30a0ea846a9849 (diff)
downloadbarebox-34ebefa8bb84c1722c305b9fdb8a2803dbdbb98c.tar.gz
barebox-34ebefa8bb84c1722c305b9fdb8a2803dbdbb98c.tar.xz
ARM: boards: protonic-imx6: enable deep-probe support
Enable deep-probe support and fix gpio dependency for the early probe. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Link: https://lore.barebox.org/20210825125430.26901-2-o.rempel@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/boards/protonic-imx6/board.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/boards/protonic-imx6/board.c b/arch/arm/boards/protonic-imx6/board.c
index 9ded94b3b0..81e09a8d8b 100644
--- a/arch/arm/boards/protonic-imx6/board.c
+++ b/arch/arm/boards/protonic-imx6/board.c
@@ -5,6 +5,7 @@
#include <bbu.h>
#include <common.h>
+#include <deep-probe.h>
#include <environment.h>
#include <fcntl.h>
#include <gpio.h>
@@ -707,8 +708,17 @@ static int prt_imx6_get_id(struct prt_imx6_priv *priv)
{
struct gpio gpios_type[] = GPIO_HW_TYPE_ID;
struct gpio gpios_rev[] = GPIO_HW_REV_ID;
+ struct device_node *gpio_np = NULL;
int ret;
+ gpio_np = of_find_node_by_name(NULL, "gpio@20a0000");
+ if (!gpio_np)
+ return -ENODEV;
+
+ ret = of_device_ensure_probed(gpio_np);
+ if (ret)
+ return ret;
+
ret = gpio_array_to_id(gpios_type, ARRAY_SIZE(gpios_type), &priv->hw_id);
if (ret)
goto exit_get_id;
@@ -1071,6 +1081,7 @@ static const struct of_device_id prt_imx6_of_match[] = {
{ .compatible = "prt,prtwd3", .data = &prt_imx6_cfg_prtwd3 },
{ /* sentinel */ },
};
+BAREBOX_DEEP_PROBE_ENABLE(prt_imx6_of_match);
static struct driver_d prt_imx6_board_driver = {
.name = "board-protonic-imx6",