[PATCH] do not pass NULL pointer to libfdt

Stanislav Pinchuk Stanislav.Pinchuk at kaspersky.com
Wed Jan 20 15:28:14 CET 2021


Without this patch, u-boot just hangs if the fdt pointer is
not initialized. The diagnostic subsystems are not yet initialized,
so all you get is a blind hang.

Signed-off-by: Stanislav.Pinchuk at kaspersky.com
---
 include/dm/read.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/dm/read.h b/include/dm/read.h
index c875e11a13..d3fd27da8a 100644
--- a/include/dm/read.h
+++ b/include/dm/read.h
@@ -1007,7 +1007,7 @@ static inline u64 dev_translate_dma_address(const struct u
device *dev,

 static inline int dev_read_alias_highest_id(const char *stem)
 {
-       if (!CONFIG_IS_ENABLED(OF_LIBFDT))
+       if (!CONFIG_IS_ENABLED(OF_LIBFDT) || !gd->fdt_blob)
                return -1;
        return fdtdec_get_alias_highest_id(gd->fdt_blob, stem);
 }
--
2.25.1


More information about the U-Boot mailing list