j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
Author: mcayland Date: Mon May 12 17:43:22 2014 New Revision: 1288 URL: http://tracker.coreboot.org/trac/openbios/changeset/1288
Log: SPARC64: increment ms counter at obp_tick_pointer on every timer interrupt
This is in preparation for a get-ms implementation for SPARC64.
Signed-off-by: Mark Cave-Ayland mark.cave-ayland@ilande.co.uk
Modified: trunk/openbios-devel/arch/sparc64/vectors.S
Modified: trunk/openbios-devel/arch/sparc64/vectors.S ============================================================================== --- trunk/openbios-devel/arch/sparc64/vectors.S Mon May 12 17:43:18 2014 (r1287) +++ trunk/openbios-devel/arch/sparc64/vectors.S Mon May 12 17:43:22 2014 (r1288) @@ -276,7 +276,7 @@
.section ".data" .align 8 - .globl tlb_handler_stack_top, tlb_handler_stack_pointer + .globl tlb_handler_stack_top, tlb_handler_stack_pointer, obp_ticks_pointer
! Stack for the tlb MMU trap handlers tlb_handler_stack_bottom: @@ -288,6 +288,10 @@ tlb_handler_stack_pointer: .xword tlb_handler_stack_top
+ ! Pointer to current tick value +obp_ticks_pointer: + .xword 0 + .section ".text", "ax"
spill_32bit: @@ -618,6 +622,18 @@ and %g1, %g2, %g1 brnz,pn %g1, tick_compare_disabled nop + + /* update tick value if pointer set */ + setx obp_ticks_pointer, %g3, %g1 + ldx [%g1], %g3 + brz %g3, tick_rearm + nop + + ldx [%g3], %g1 + add %g1, 10, %g1 ! 100Hz = 10ms + stx %g1, [%g3] + +tick_rearm: set TICK_INTERVAL, %g1 add %g1, %g2, %g1 wr %g1, 0, %tick_cmpr