Commit Graph

326 Commits

Author SHA1 Message Date
Norman Feske
ba248fe554 Add swap and realloc to 'Attached_ram_dataspace'
The new 'swap' and 'realloc' functions are needed in scenarios where
'Attached_ram_dataspace' is used to implement double buffering. The
particular use case is the implementation of dynamic ROM sessions.
2012-04-05 10:40:46 +02:00
Stefan Kalkowski
890a3ee868 Specialize blit library for ARM (fix #147).
Use multiple load store instructions for 32 byte chunks in ARM-specific
blit-function, analog to x86 variant. Make the blit-function of x86 a
generic one, and provide needed utility functions for ARM and generic code.
Please refer issue #147 for discussion.
2012-03-21 22:04:25 +01:00
Sebastian Sumpf
d460820cf6 ACPI: Remove quota checking
Remove RAM quota checking on IRQ session creation. Spelling fixes.
(Fix #151)
2012-03-16 18:22:52 +01:00
Sebastian Sumpf
ed8eb91107 ACPI: Parse MADT
Implemented IRQ service and MATD parsing. Please have a look at the 'README'
file. Fixes issue #151
2012-03-16 14:57:12 +01:00
Norman Feske
db8058c16f Add x86_32 requirement to AHCI and ACPI drivers 2012-03-16 14:53:56 +01:00
Sebastian Sumpf
c5e2fa06cb ACPI: Cleanup
Remove unnecessary debugging output. Filter output correctly in run script.
2012-03-10 16:01:17 +01:00
Sebastian Sumpf
10d7022395 ACPI: Handle indirect packages
Scan for packages outside of _PRT-methods (fix #141)
2012-03-06 16:59:02 +01:00
Norman Feske
e4cb3ed929 Follow-up for spin-lock unification, ref #123 2012-03-01 10:57:05 +01:00
Stefan Kalkowski
319813a59b Merge spin-lock implementations
Separate spin-lock implementation from lock-implementation and put it into a
non-public header, so it can be re-used by the DDE kit's and Fiasco.OC's
capability-allocator spin lock. Fixes issue #123.
2012-02-29 15:41:17 +01:00
Sebastian Sumpf
7e00ef96ee ACPI: GSI parser, fix #34
Read GSIs from ACPI tables and rewrite PCI-config space IRQs
2012-02-26 13:37:33 +01:00
Sebastian Sumpf
c2c87c8833 AHCI: MSI updates
Disable MSIs on device initialzation. Add ACPI-driver to run script
2012-02-26 13:37:14 +01:00
Norman Feske
396a9ee273 Hook for re-establishing default LOG session 2012-02-23 10:42:11 +01:00
Norman Feske
8495a5fc96 Convenience helper for attached ROM dataspaces
In the line of the 'Attached_ram_dataspace' and
'Attached_io_mem_dataspace' classes, this new helper simplifies the
access to ROM dataspaces.
2012-02-14 16:44:42 +01:00
Norman Feske
349dccd46d Make signal test more robust wrt scheduling 2012-02-10 10:09:55 +01:00
Norman Feske
b8f88c035a Support for prefetching a static list of ROM files
The ROM prefetcher service can be used to prefetch complete ROM files,
which is handy when using the iso9660 server (which normally reads file
content block-wise on demand). The server used to perform the
prefetching upon request of the respective ROM session. This patch adds
a facility for prefetching a predefined list of files. It is primarily
intended for eagerly fetching live-CD content in the background after
having passed the first boot stage.
2012-02-08 19:35:25 +01:00
Norman Feske
d880386091 Qualifying RPC functions as const
This patch makes use of the recently added support for const RPC
functions by turning 'Framebuffer::Session::mode()' and
'Input::Session::is_pending()' into const functions.
2012-01-27 16:54:05 +01:00
Norman Feske
48ac5143a2 Add spin lock to DDE Kit
Linux DDE used to implement Linux spin locks based on 'dde_kit_lock'.
This works fine if a spin lock is initialized only once and used
infinitely. But if spin locks are initialized on-the-fly at a high rate,
each initialization causes the allocation of a new 'dde_kit_lock'.
Because in contrast to normal locks, spinlocks cannot be explicitly
destroyed, the spin-lock emulating locks are never freed. To solve the
leakage of locks, there seems to be no other way than to support the
semantics as expected by the Linux drivers. Hence, this patch introduces
a DDE Kit API for spin locks.
2012-01-27 02:01:07 +01:00
Norman Feske
0058b15763 Helper for running a service as a child (slave)
The new 'Slave_policy' and 'Slave' classes are built upon the existing
child framework. They support the implementation of scenarios where a
service is started as a child of the client. This is usefull for
employing an existing service implementation as a local utility or
plugin.
2012-01-25 20:04:42 +01:00
Norman Feske
c35207d9c4 Add mode_sigh and release to framebuffer::Session
The 'mode_sigh' function allows the client to receive notifications
about server-side display-mode changes. To respond to such a signal, the
client can use the new 'release' function, which acknowledges the mode
change at the server and frees the original framebuffer dataspace. Via a
subsequent call of 'dataspace', a framebuffer dataspace corresponding to
the new mode can be obtained. Related to issue #11.
2012-01-25 16:08:24 +01:00
Norman Feske
9e3ecade16 Replace Framebuffer::info by Framebuffer::mode
As a preliminary step for working on issue #11, this patch revisits the
'Framebuffer::info' RPC call. Instead of using C-style out paramters,
the new 'mode()' RPC call returns the mode information as an object of
type 'Mode'. Consequently, mode-specific functions such as
'bytes_per_pixel' have been moved to the new 'Framebuffer::Mode' class.
2012-01-25 13:27:47 +01:00
Norman Feske
834f433222 ATAPI driver support for re-opening sessions
The probing and I/O resource allocation is done only once at the
creation time of the first session. When closing and re-opening the
session, the '_device' object is simply reused. This patch fixes #92.
2012-01-25 12:58:41 +01:00
Norman Feske
50b5a0d36d Const qualifiers for Input::Event accessors 2012-01-17 23:06:02 +01:00
Norman Feske
08ce32215d Bump year in copyright headers to 2012 2012-01-03 15:35:05 +01:00
Norman Feske
032f9810a9 Resolve ambiguity about SDL headers in fb_sdl
This patch prevents 'fb_sdl' from wrongly using SDL headers located in
the libports repository. We have to make sure to use the headers
installed on the host system.
2011-12-24 06:14:54 +08:00
Genode Labs
d1891e8a27 Merge final fixes from internal repositories 2011-12-23 14:04:29 +01:00
Genode Labs
da4e1feaa5 Imported Genode release 11.11 2011-12-22 16:19:25 +01:00