genode/repos/base/include/spec
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
..
32bit/base Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
64bit/base Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
arm Prevent compiler warnings 2016-04-25 10:48:02 +02:00
arm_v6/cpu base: update include guards 2016-03-07 12:34:45 +01:00
arm_v7/cpu base: update include guards 2016-03-07 12:34:45 +01:00
arndale/drivers base: update include guards 2016-03-07 12:34:45 +01:00
exynos/drivers Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
exynos4 Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
exynos5 exynos: generalize Exynos5 fb_drv for Exynos4/5 2015-09-30 12:20:37 +02:00
imx/drivers Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
imx6/drivers hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00
imx53/drivers base: update include guards 2016-03-07 12:34:45 +01:00
imx53_qsb/drivers base: update include guards 2016-03-07 12:34:45 +01:00
odroid_x2/drivers base: update include guards 2016-03-07 12:34:45 +01:00
odroid_xu/drivers base: update include guards 2016-03-07 12:34:45 +01:00
panda/drivers hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00
pbxa9/drivers hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00
pl011/drivers Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
rpi/drivers sd_card: generalise RPi sd card driver 2016-04-11 12:12:23 +02:00
tl16c750/drivers base: update include guards 2016-03-07 12:34:45 +01:00
usb_armory/drivers base: update include guards 2016-03-07 12:34:45 +01:00
x86 base: hide internals of the Thread API 2016-03-07 12:34:46 +01:00
x86_32/cpu Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
x86_64/cpu Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
xilinx/drivers Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
zynq/drivers base: update include guards 2016-03-07 12:34:45 +01:00
zynq_qemu/drivers hw: use kernel timer for timer driver 2016-05-26 15:54:15 +02:00