genode/repos/base-hw
Martin Stein 1208d14681 hw: use kernel timer for timer driver
* Adds public timeout syscalls to kernel API
  * Kernel::timeout installs a timeout and binds a signal context to it that
    shall trigger once the timeout expired
  * With Kernel::timeout_max_us, one can get the maximum installable timeout
  * Kernel::timeout_age_us returns the time that has passed since the
    calling threads last timeout installation

* Removes all device specific back-ends for the base-hw timer driver and
  implements a generic back-end taht uses the kernel timeout API

* Adds assertions about the kernel timer frequency that originate from the
  requirements of the the kernel timeout API and adjusts all timers
  accordingly by using the their internal dividers

* Introduces the Kernel::Clock class. As member of each Kernel::Cpu object
  it combines the management of the timer of the CPU with a timeout scheduler.
  Not only the timeout API uses the timeout scheduler but also the CPUs job
  scheduler for installing scheduling timeouts.

* Introduces the Kernel::time_t type for timer tic values and values inherited
  from timer tics (like microseconds).

Fixes #1972
2016-05-26 15:54:15 +02:00
..
doc tool: remove deprecated 'make prepare' mechanism 2016-03-17 17:02:04 +01:00
include hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00
lib hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00
mk/spec hw_zynq: refactor specs 2016-04-25 10:48:00 +02:00
ports Relax tool checks of Muen port 2016-02-26 11:36:55 +01:00
run hw: add dummy config to kernel tests 2016-05-26 15:54:15 +02:00
src hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00