[U-Boot] [PATCH v2] board/p2020rdb: fix the FDT_ERR_NOTFOUND issue

ying.zhang at freescale.com ying.zhang at freescale.com
Fri Apr 24 09:49:15 CEST 2015


From: Ying Zhang <b40530 at freescale.com>

Because the function ft_board_setup() delete the USB2 device node, it
leads to can't find the device node and hung up.

In fact only P1020RDB needs to delete the USB2 node, this patch fixes
this issue.

Signed-off-by: Ying Zhang <b40530 at freescale.com>
---
Change from v1:
- To define the parameter "err" to eliminate the compiling error.

 board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
index 3f47cfb..61b7a91 100644
--- a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
+++ b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
@@ -428,8 +428,13 @@ int ft_board_setup(void *blob, bd_t *bd)
 {
 	phys_addr_t base;
 	phys_size_t size;
+#if defined(CONFIG_P1020RDB_PD) || defined(CONFIG_P1020RDB_PC)
 	const char *soc_usb_compat = "fsl-usb2-dr";
-	int err, usb1_off, usb2_off;
+	int usb_err, usb1_off, usb2_off;
+#endif
+#if defined(CONFIG_SDCARD) || defined(CONFIG_SPIFLASH)
+	int err;
+#endif
 
 	ft_cpu_setup(blob, bd);
 
@@ -473,6 +478,7 @@ int ft_board_setup(void *blob, bd_t *bd)
 	}
 #endif
 
+#if defined(CONFIG_P1020RDB_PD) || defined(CONFIG_P1020RDB_PC)
 /* Delete USB2 node as it is muxed with eLBC */
 	usb1_off = fdt_node_offset_by_compatible(blob, -1,
 		soc_usb_compat);
@@ -488,11 +494,12 @@ int ft_board_setup(void *blob, bd_t *bd)
 		       soc_usb_compat);
 		return usb2_off;
 	}
-	err = fdt_del_node(blob, usb2_off);
-	if (err < 0) {
+	usb_err = fdt_del_node(blob, usb2_off);
+	if (usb_err < 0) {
 		printf("WARNING: could not remove %s\n", soc_usb_compat);
-		return err;
+		return usb_err;
 	}
+#endif
 
 	return 0;
 }
-- 
1.8.4.1



More information about the U-Boot mailing list