• Pantelis Antoniou's avatar
    ARM: OMAP2+: DT node Timer iteration fix · 034bf091
    Pantelis Antoniou authored
    The iterator correctly handles of_node_put() calls.
    Remove it before continue'ing the loop.
    Without this patch you get the following with
    CONFIG_OF_DYNAMIC set:
    
    ERROR: Bad of_node_put() on /ocp/timer@44e31000!
    [<c001329c>] (unwind_backtrace+0x0/0xe0) from [<c03dd8f0>] (of_node_release+0x2c/0xa0)!
    [<c03dd8f0>] (of_node_release+0x2c/0xa0) from [<c03ddea0>] (of_find_matching_node_and_match+0x78/0x90)!
    [<c03ddea0>] (of_find_matching_node_and_match+0x78/0x90) from [<c06d349c>] (omap_get_timer_dt+0x78/0x90)!
    [<c06d349c>] (omap_get_timer_dt+0x78/0x90) from [<c06d3664>] (omap_dm_timer_init_one.clone.2+0x34/0x2bc)!
    [<c06d3664>] (omap_dm_timer_init_one.clone.2+0x34/0x2bc) from [<c06d3a2c>] (omap2_gptimer_clocksource_init.clone.4+0x24/0xa8)!
    [<c06d3a2c>] (omap2_gptimer_clocksource_init.clone.4+0x24/0xa8) from [<c06cca58>] (time_init+0x20/0x30)!
    [<c06cca58>] (time_init+0x20/0x30) from [<c06c9690>] (start_kernel+0x1a8/0x2fc)!
    Signed-off-by: default avatarPantelis Antoniou <panto@antoniou-consulting.com>
    Acked-by: default avatarJon Hunter <jon-hunter@ti.com>
    [tony@atomide.com: updated description per Jon]
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    034bf091
timer.c 19.9 KB