genode/os/src/drivers/ahci
Martin Stein 198f8b65a4 ahci & exynos5: compliant exceptions on creation
Use Root::Unavailable exceptions instead of driver specific ones
on session construction.
2013-06-26 16:02:30 +02:00
..
exynos5 ahci & exynos5: compliant exceptions on creation 2013-06-26 16:02:30 +02:00
include ahci_drv: separate PCI specifics from the rest 2013-05-22 18:32:05 +02:00
x86_32 ahci_drv: separate PCI specifics from the rest 2013-05-22 18:32:05 +02:00
empty.cc ahci_drv: separate PCI specifics from the rest 2013-05-22 18:32:05 +02:00
main.cc ahci_drv: separate PCI specifics from the rest 2013-05-22 18:32:05 +02:00
README Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
target.mk ahci_drv: separate PCI specifics from the rest 2013-05-22 18:32:05 +02:00

This directory contains an implementation of a simple AHCI driver.

Behavior
--------

The server implements Genode's new block-driver API ('os/include/block'), thus
exposing the block-session interface as front-end. AHCI depends on Genode's PCI
driver as well as the timer server. For a usage example see: 'os/run/ahci.run'.

Limitations and known issues
----------------------------

Currently, the server scans the PCI bus at startup and retrieves the first available
AHCI controller, scans the controller ports and uses the first non-ATAPI port
where a device is present.

On real hardware and on kernels taking advantage of I/O APICs (namely NOVA and
Fiasco.OC) we still lack support for ACPI parsing and thus for interrupts,
leading to a non-working driver.