SATA AHCI block driver
Implement a native HelenOS driver (or drivers) for an AHCI-compliant SATA controller and one or more SATA devices (disk, optical drive).
- Details
-
The new driver(s) should be implemented as a new driver process using the HelenOS Device Driver Framework (DDF). There can be either one driver for the AHCI SATA controller plus driver(s) for the devices, or even a monolithic implementation is acceptable. On the device side it is possible to support either a hard disk, an optical driver or both.
- What Gains and Benefits will this bring?
-
SATA has replaced ATA(PI) almost completely. HelenOS cannot rely on an obsolete disk interface standard that is only supported in the controllers in legacy emulation mode and can go away anytime. A native SATA AHCI driver will bring HelenOS up to date with current disk interface standards and will allow us to make use of the additional features that SATA brings (I/O scheduling, larger capacities).
- Difficulty
-
medium
- Required skills
-
A successful applicant will have good skills of programming in the C language and the ability to learn and use HelenOS-specific I/O functions.
- Documentation
-
- Possible mentors
-
HelenOS Core Team, Martin Decky
Qemu 0.14 has (unstable) support for an Intel AHCI controller which supports NCQ.