Timer needs to be converted to DM but as of now it can't be called so
early because intc controller is not ready. Call it later in board_r.c.
Before this patch timer_init is called twice which is wrong.
The patch is blocking initialization before relocation.

Signed-off-by: Michal Simek <michal.si...@xilinx.com>
---

Changes in v2:
- Do not add new ifdef to board_f and use GD_FLG_RELOC instead -
  reported-by sjg
- Change commit message

 arch/microblaze/cpu/timer.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c
index ef229023bf08..58e5c3075085 100644
--- a/arch/microblaze/cpu/timer.c
+++ b/arch/microblaze/cpu/timer.c
@@ -51,6 +51,10 @@ int timer_init (void)
 
        debug("TIMER: Initialization\n");
 
+       /* Do not init before relocation */
+       if (!(gd->flags & GD_FLG_RELOC))
+               return 0;
+
        node = fdt_node_offset_by_compatible(blob, node,
                                "xlnx,xps-timer-1.00.a");
        if (node != -1) {
-- 
1.9.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to