I am trying to learn about arm_arch_timer for my HiKey960 board.
Currently, my dmesg shows the following when arm_arch_timer registers as sched_clock:
dmesg | grep -i "sched_clock\|arm_arch"
[ 0.000000] arm_arch_timer: Architected cp15 timer(s) running at 1.92MHz (phys).
[ 0.000006] sched_clock: 56 bits at 1920kHz, resolution 520ns, wraps every 4398046510977ns
I want to know what each of these fields exactly mean:
- 56 bits
- wrap around 4398046510977ns
FYI: I have tested if the monotonic clock wraps around after 4398046510977ns or 4398s.
I kept the board up for about 17 hours and the monotonic time has not wrapped around.
So, is there code in the kernel to handle the wrap around?