genode/repos/os/src/drivers/ahci
Sebastian Sumpf 2426c58b9f ahci: support for non-ncq ATA devices
* use '_dma_ext' or '_fdpma' commands
* handle interrupts depending on mode of operation
* spelling fixes
* move ATA 'Idendity' struct to ata header

issue #1734
2015-10-09 16:38:48 +02:00
..
spec Introduce 'spec' subdirectories to outline aspects 2015-09-16 13:58:50 +02:00
ahci.cc ahci: support for non-ncq ATA devices 2015-10-09 16:38:48 +02:00
ahci.h ahci: support for non-ncq ATA devices 2015-10-09 16:38:48 +02:00
ata_driver.h ahci: support for non-ncq ATA devices 2015-10-09 16:38:48 +02:00
atapi_driver.h ahci: new AHCI driver implementation 2015-05-20 17:52:58 +02:00
main.cc ahci: support for non-ncq ATA devices 2015-10-09 16:38:48 +02:00
README ahci: new AHCI driver implementation 2015-05-20 17:52:58 +02:00
target.mk ahci: new AHCI driver implementation 2015-05-20 17:52:58 +02:00

This directory contains the implementation of Genode's AHCI driver

Behavior
--------

The driver supports x86 32/64 bit platforms and the Exynos5 SOC. If
more than one AHCI controller is present, the first one will be used.
Each active device on each AHCI port will be represented by a Genode
block session. The server must be configured via a policy, that states
which client can access a certain device:


!<start name="ahci">
!  <binary name="ahci_drv" />
!  <resource name="RAM" quantum="10M" />
!  <provides><service name="Block" /></provides> }
!  <route>
!    <any-service> <parent /> <any-child /> </any-service>
!  </route>
!  <config>
!    <policy label="test-ahci" device="0" />
!    <policy label="bench" device="1" />
!  </config>
!</start>

In the example above, a session request labeled with "test-ahci"
gains access to device 0, while "bench" gains access to device 1.