summaryrefslogtreecommitdiffstats
path: root/board/freescale/ls2085a/ls2085a.c
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2015-02-25 18:14:18 -0500
committerTom Rini <trini@ti.com>2015-02-25 18:14:18 -0500
commit1606b34aa50804227806971dbb6b82ea0bf81f55 (patch)
tree5c7570722616c6509f6f9126521d0c69c2614f8d /board/freescale/ls2085a/ls2085a.c
parent47d8ae4069b47ce966c0c5e0d8dd041e69ee1f86 (diff)
parent94e3c8c4fd7bfe395fa467973cd647551d6d98c7 (diff)
downloadtalos-obmc-uboot-1606b34aa50804227806971dbb6b82ea0bf81f55.tar.gz
talos-obmc-uboot-1606b34aa50804227806971dbb6b82ea0bf81f55.zip
Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
Diffstat (limited to 'board/freescale/ls2085a/ls2085a.c')
-rw-r--r--board/freescale/ls2085a/ls2085a.c29
1 files changed, 25 insertions, 4 deletions
diff --git a/board/freescale/ls2085a/ls2085a.c b/board/freescale/ls2085a/ls2085a.c
index 163a4c486a..519d61cb1e 100644
--- a/board/freescale/ls2085a/ls2085a.c
+++ b/board/freescale/ls2085a/ls2085a.c
@@ -12,7 +12,7 @@
#include <asm/io.h>
#include <fdt_support.h>
#include <libfdt.h>
-#include <fsl_mc.h>
+#include <fsl-mc/fsl_mc.h>
#include <environment.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -59,8 +59,15 @@ int timer_init(void)
u32 __iomem *cntcr = (u32 *)CONFIG_SYS_FSL_TIMER_ADDR;
u32 __iomem *cltbenr = (u32 *)CONFIG_SYS_FSL_PMU_CLTBENR;
- out_le32(cltbenr, 0x1); /* enable cluster0 timebase */
- out_le32(cntcr, 0x1); /* enable clock for timer */
+ /* Enable timebase for all clusters.
+ * It is safe to do so even some clusters are not enabled.
+ */
+ out_le32(cltbenr, 0xf);
+
+ /* Enable clock for timer
+ * This is a global setting.
+ */
+ out_le32(cntcr, 0x1);
return 0;
}
@@ -91,7 +98,21 @@ void fdt_fixup_board_enet(void *fdt)
{
int offset;
- offset = fdt_path_offset(fdt, "/fsl,dprc@0");
+ offset = fdt_path_offset(fdt, "/fsl-mc");
+
+ /*
+ * TODO: Remove this when backward compatibility
+ * with old DT node (fsl,dprc@0) is no longer needed.
+ */
+ if (offset < 0)
+ offset = fdt_path_offset(fdt, "/fsl,dprc@0");
+
+ if (offset < 0) {
+ printf("%s: ERROR: fsl-mc node not found in device tree (error %d)\n",
+ __func__, offset);
+ return;
+ }
+
if (get_mc_boot_status() == 0)
fdt_status_okay(fdt, offset);
else
OpenPOWER on IntegriCloud