[PATCH v1 1/4] ARM: boards: protonic-imx6: enable deep-probe support
Oleksij Rempel
o.rempel at pengutronix.de
Wed Aug 25 05:54:27 PDT 2021
Enable deep-probe support and fix gpio dependency for the early probe.
Signed-off-by: Oleksij Rempel <o.rempel at pengutronix.de>
---
arch/arm/boards/protonic-imx6/board.c | 11 +++++++++++
1 file changed, 11 insertions(+)
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 at 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",
--
2.30.2
More information about the barebox
mailing list