mbox series

[U-Boot,v6,0/2] timer: Add High Precision Event Timers (HPET) support

Message ID cover.1523570597.git.ivan.gorinov@intel.com
Headers show
Series timer: Add High Precision Event Timers (HPET) support | expand

Message

Ivan Gorinov April 12, 2018, 10:11 p.m. UTC
Add HPET driver as an alternative timer for x86 (default is TSC).
HPET counter has constant frequency and does not need calibration.
This change also makes TSC timer driver optional on x86.
New HPET driver can also be selected as the early timer on x86.

v6:
    Added TSC-specific timer functions to use instead of early timer
    in the code that specifically needs TSC.

v5:
    Using readq() and writeq() for main counter access.

v3:
    Added early timer choice in x86 Kconfig.

Ivan Gorinov (2):
  x86: Add TSC-specific timer functions
  timer: Add High Precision Event Timers (HPET) support

 arch/Kconfig                      |   1 +
 arch/x86/Kconfig                  |  21 ++++
 arch/x86/cpu/coreboot/timestamp.c |   2 +-
 arch/x86/cpu/quark/mrc_util.c     |  13 ++-
 arch/x86/dts/hpet.dtsi            |   7 ++
 arch/x86/include/asm/u-boot-x86.h |   2 +-
 common/Kconfig                    |   1 +
 drivers/timer/Kconfig             |   9 ++
 drivers/timer/Makefile            |   1 +
 drivers/timer/hpet_timer.c        | 209 ++++++++++++++++++++++++++++++++++++++
 drivers/timer/tsc_timer.c         |  39 +++++--
 11 files changed, 288 insertions(+), 17 deletions(-)
 create mode 100644 arch/x86/dts/hpet.dtsi
 create mode 100644 drivers/timer/hpet_timer.c