|
NOVA User-Level Environment
Version testbox/changed-memory-timing-317-g320d8b5
|
A simple IDE host driver. More...
Public Member Functions | |
| unsigned | disk_count () |
| bool | receive (MessageDisk &msg) |
| HostIde (DBus< MessageHwIOIn > &bus_hwioin, DBus< MessageHwIOOut > &bus_hwioout, DBus< MessageDiskCommit > &bus_commit, unsigned disknr, unsigned short iobase, unsigned short iobase_ctrl, Clock *clock) | |
Public Member Functions inherited from StaticReceiver< HostIde > | |
| StaticReceiver () | |
Public Member Functions inherited from Device | |
| void | debug_dump () |
| Device (const char *debug_name) | |
Private Member Functions | |
| unsigned | wait_disk_state (unsigned char mask, unsigned char value, unsigned msec, bool check_error) |
| Wait with timeout for the right disk state. | |
| unsigned | send_packet (unsigned char *packet) |
| unsigned | ata_command (unsigned char *packet, void *output, unsigned outlen, bool read) __attribute__((noinline)) |
| Send a packet to the ata controller. | |
| bool | make_sector_packets (HostGenericAta ¶ms, unsigned char *packets, unsigned char command, unsigned long long sector, unsigned count) |
| Initialize packets for a single sector LBA function. | |
| unsigned | identify_drive (unsigned short *buffer, HostGenericAta ¶ms, bool slave) |
Private Attributes | |
| DBus< MessageDiskCommit > & | _bus_commit |
| unsigned | _disknr |
| unsigned short | _iobase |
| unsigned short | _iobase_ctrl |
| HostGenericAta | _params [2] |
| Clock * | _clock |
| unsigned | _disk_count |
Static Private Attributes | |
| static unsigned const | FREQ = 1000 |
Additional Inherited Members | |
Static Public Member Functions inherited from StaticReceiver< HostIde > | |
| static bool | receive_static (Device *o, M &msg) |
A simple IDE host driver.
State: testing Features: lba28, lba48, PIO Missing: dma, IRQ
|
inline |
|
inlineprivate |
Send a packet to the ata controller.
|
inline |
|
inlineprivate |
|
inlineprivate |
Initialize packets for a single sector LBA function.
|
inline |
|
inlineprivate |
|
inlineprivate |
Wait with timeout for the right disk state.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |