genode/os/src/drivers
Norman Feske 3049c1004c Turn 'Timer::Session' into asynchronous interface
The 'Timer::Session::msleep' function is one of the last occurrences of
long-blocking RPC calls. Synchronous blocking RPC interfaces turned out
to be constant source of trouble and code complexity. I.e., a timer
client that also wants to respond to non-timer events was forced to be a
multi-threaded process. This patch replaces the blocking 'msleep' call
by a mechanism for programming timeouts and receiving wakeup signals in
an asynchronous fashion. Thereby signals originating from the timer can
be handled along with signals from other signal sources by a single
thread.

The changed interface has been tested on Linux, L4/Fiasco, OKL4, NOVA,
L4ka::Pistachio, Codezero, Fiasco.OC, and hw_pbxa9. Furthermore, this
patch adds the timer test to autopilot.

Fixes #1
2013-02-14 10:36:06 +01:00
..
acpi acpi: use xsdt on 64bit if available 2013-02-12 14:12:30 +01:00
ahci Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
atapi Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
audio_out/linux Audio: Replace old with new audio interface 2013-01-10 23:05:43 +01:00
framebuffer Turn 'Timer::Session' into asynchronous interface 2013-02-14 10:36:06 +01:00
gpio/omap4 Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
input Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
nic Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
pci Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
platform/gta01 Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
rtc/x86 rtc_drv: new service interface 2013-02-13 15:09:23 +01:00
sd_card Update copyright headers to 2013 2013-01-10 21:44:47 +01:00
timer Turn 'Timer::Session' into asynchronous interface 2013-02-14 10:36:06 +01:00
uart Fix OMAP4 uart driver compilation 2013-01-24 11:04:12 +01:00