summaryrefslogtreecommitdiff
path: root/cpu/mpc5xxx/cpu.c
diff options
context:
space:
mode:
authorroy zang <tie-fei.zang@freescale.com>2006-12-01 12:09:33 +0800
committerZang Tiefei <roy@bus.ap.freescale.net>2006-12-01 12:09:33 +0800
commite0b369e4f71b11dd5716903dd6258028cf07e6e8 (patch)
tree615986f2b3088072c49d74e1086650e185087698 /cpu/mpc5xxx/cpu.c
parentee311214e0d216f904feea269599d0934bf71f23 (diff)
parentdd520bf314c7add4183c5191692180f576f96b60 (diff)
downloadu-boot-imx-e0b369e4f71b11dd5716903dd6258028cf07e6e8.zip
u-boot-imx-e0b369e4f71b11dd5716903dd6258028cf07e6e8.tar.gz
u-boot-imx-e0b369e4f71b11dd5716903dd6258028cf07e6e8.tar.bz2
Fix the confilcts when merging 'master' into hpc2.
The conflicts due to a new mpc7448 p3m7448 board is in the main tree. Merge branch 'master' into hpc2 Conflicts: MAKEALL cpu/74xx_7xx/cpu.c cpu/74xx_7xx/cpu_init.c cpu/74xx_7xx/speed.c
Diffstat (limited to 'cpu/mpc5xxx/cpu.c')
-rw-r--r--cpu/mpc5xxx/cpu.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/cpu/mpc5xxx/cpu.c b/cpu/mpc5xxx/cpu.c
index 6b6f828..813aa79 100644
--- a/cpu/mpc5xxx/cpu.c
+++ b/cpu/mpc5xxx/cpu.c
@@ -31,6 +31,10 @@
#include <mpc5xxx.h>
#include <asm/processor.h>
+#if defined(CONFIG_OF_FLAT_TREE)
+#include <ft_build.h>
+#endif
+
DECLARE_GLOBAL_DATA_PTR;
int checkcpu (void)
@@ -102,3 +106,26 @@ unsigned long get_tbclk (void)
}
/* ------------------------------------------------------------------------- */
+
+#ifdef CONFIG_OF_FLAT_TREE
+void
+ft_cpu_setup(void *blob, bd_t *bd)
+{
+ u32 *p;
+ int len;
+
+ /* Core XLB bus frequency */
+ p = ft_get_prop(blob, "/cpus/" OF_CPU "/bus-frequency", &len);
+ if (p != NULL)
+ *p = cpu_to_be32(bd->bi_busfreq);
+
+ /* SOC peripherals use the IPB bus frequency */
+ p = ft_get_prop(blob, "/" OF_SOC "/bus-frequency", &len);
+ if (p != NULL)
+ *p = cpu_to_be32(bd->bi_ipbfreq);
+
+ p = ft_get_prop(blob, "/" OF_SOC "/ethernet@3000/mac-address", &len);
+ if (p != NULL)
+ memcpy(p, bd->bi_enetaddr, 6);
+}
+#endif