Turnstone Operating System
Loading...
Searching...
No Matches
ahci.64.c File Reference

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_tahci_get_disk_by_id (uint64_t disk_id)
 
const ahci_sata_disk_tahci_get_first_inserted_disk (void)
 
int8_t ahci_init (memory_heap_t *heap, list_t *sata_pci_devices)
 
future_tahci_flush (uint64_t disk_id)
 
int8_t ahci_identify (uint64_t disk_id)
 
future_tahci_read (uint64_t disk_id, uint64_t lba, uint32_t size, uint8_t *buffer)
 
future_tahci_write (uint64_t disk_id, uint64_t lba, uint32_t size, uint8_t *buffer)
 

Variables

list_tsata_ports = NULL
 
list_tsata_hbas = NULL
 

Detailed Description

ahci interface implentation.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.