ARM Generic Timer

From OSDev.wiki
Revision as of 14:23, 28 March 2019 by osdev>Bzt (Created page with "{{Stub}} == Introduction == The '''ARM Generic Timer''' is a per-core implemented timer, built into the CPU (all Raspberry Pi models, memory mapped parts only on ARM Quad A7...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
This page is a stub.
You can help the wiki by accurately adding more contents to it.

Introduction

The ARM Generic Timer is a per-core implemented timer, built into the CPU (all Raspberry Pi models, memory mapped parts only on ARM Quad A7 CPUs, RPi2 and upwards).

Counters and frequency can be read using CNTP_CVAL (physical counter), CNTV_CVAL (virtual counter) and CNTP_FREQ (clock frequency) system registers. For IRQ routing, frequency setup and prescaler configuration the MMIO registers' address starts at 0x40000000.

This timer can operate on a CPU clock relative freqency (APB) and on a fixed crystal clock freqency (19.2MHz with a prescaler) as well, depending on configuration.

See Also

External Links

  • ARM Architecture Reference Manual Chapters D8-D10 page D8-2264 (AArch64), Chapter G5 page G5-4851 (AArch32), Chapter I1 page I1-5856 and Chapters I3.5, I3.6 page I3-5946 (memory mapped parts)
  • ARM Quad A7 Core Section 4.3, Page 9 (refers to Generic Timer as "Core Timer Register")