Turnstone Operating System
|
ahci interface implentation. More...
#include <driver/ahci.h>
#include <logging.h>
#include <pci.h>
#include <memory/paging.h>
#include <memory/frame.h>
#include <cpu/interrupt.h>
#include <cpu/task.h>
#include <apic.h>
#include <cpu.h>
#include <time/timer.h>
#include <utils.h>
Functions | |
MODULE ("turnstone.kernel.hw.disk.ahci") | |
void | video_text_print (const char *str) |
ahci_device_type_t | ahci_check_type (ahci_hba_port_t *port) |
int8_t | ahci_find_command_slot (ahci_sata_disk_t *disk) |
void | ahci_port_rebase (ahci_hba_port_t *port, uint64_t offset, int8_t nr_cmd_slots) |
void | ahci_port_start_cmd (ahci_hba_port_t *port) |
void | ahci_port_stop_cmd (ahci_hba_port_t *port) |
void | ahci_handle_disk_isr (const ahci_hba_t *hba, uint64_t disk_id) |
int8_t | ahci_error_recovery_ncq (ahci_sata_disk_t *disk) |
int8_t | ahci_read_log_ncq (ahci_sata_disk_t *disk) |
int8_t | ahci_port_comreset (ahci_hba_port_t *port) |
int8_t | ahci_disk_id_comparator (const void *disk1, const void *disk2) |
int8_t | ahci_isr (interrupt_frame_ext_t *frame) |
const ahci_sata_disk_t * | ahci_get_disk_by_id (uint64_t disk_id) |
const ahci_sata_disk_t * | ahci_get_first_inserted_disk (void) |
int8_t | ahci_init (memory_heap_t *heap, list_t *sata_pci_devices) |
future_t * | ahci_flush (uint64_t disk_id) |
int8_t | ahci_identify (uint64_t disk_id) |
future_t * | ahci_read (uint64_t disk_id, uint64_t lba, uint32_t size, uint8_t *buffer) |
future_t * | ahci_write (uint64_t disk_id, uint64_t lba, uint32_t size, uint8_t *buffer) |
Variables | |
list_t * | sata_ports = NULL |
list_t * | sata_hbas = NULL |
ahci interface implentation.
This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.