mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-24 21:54:01 +00:00
powerpc/p2020rdb: fix the FDT_ERR_NOTFOUND issue
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@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
This commit is contained in:
parent
e622d9ed3b
commit
01a6113d2a
1 changed files with 11 additions and 4 deletions
|
@ -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;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue