summaryrefslogtreecommitdiff
path: root/cpu/ppc4xx/fdt.c
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2008-07-10 13:52:44 +0200
committerStefan Roese <sr@denx.de>2008-07-11 13:18:13 +0200
commite321801bed5a6d896d298c00fd20046f039d5d66 (patch)
treeb99a655c3b16b32027add9e1326e92b64e7e1cd4 /cpu/ppc4xx/fdt.c
parent08250eb2edbd96514d049602d9e134110ac3185f (diff)
downloadu-boot-imx-e321801bed5a6d896d298c00fd20046f039d5d66.zip
u-boot-imx-e321801bed5a6d896d298c00fd20046f039d5d66.tar.gz
u-boot-imx-e321801bed5a6d896d298c00fd20046f039d5d66.tar.bz2
ppc4xx: Remove redundant ft_board_setup() functions from some 4xx boards
This patch removes some ft_board_setup() functions from some 4xx boards. This can be done since we now have a default weak implementation for this in cpu/ppc4xx/fdt.c. Only board in need for a different/custom implementation like canyonlands need their own version. Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'cpu/ppc4xx/fdt.c')
-rw-r--r--cpu/ppc4xx/fdt.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/cpu/ppc4xx/fdt.c b/cpu/ppc4xx/fdt.c
index ccc73d5..0323dc5 100644
--- a/cpu/ppc4xx/fdt.c
+++ b/cpu/ppc4xx/fdt.c
@@ -47,8 +47,16 @@ void __ft_board_setup(void *blob, bd_t *bd)
val[1] = 0; /* always 0 */
val[2] = gd->bd->bi_flashstart;
val[3] = gd->bd->bi_flashsize;
- rc = fdt_find_and_setprop(blob, "/plb/opb/ebc", "ranges",
- val, sizeof(val), 1);
+ if (fdt_path_offset(blob, "/plb/opb/ebc") >= 0) {
+ rc = fdt_find_and_setprop(blob, "/plb/opb/ebc", "ranges",
+ val, sizeof(val), 1);
+ } else {
+ /*
+ * Some 405 PPC's have EBC as direct PLB child in the dts
+ */
+ rc = fdt_find_and_setprop(blob, "/plb/ebc", "ranges",
+ val, sizeof(val), 1);
+ }
if (rc)
printf("Unable to update property NOR mapping, err=%s\n",
fdt_strerror(rc));