X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/1fe5f5eb5378a47bf0f3451762743c162e40faad..f89517343bf062d299d54408eea2f9387bfefb6d:/lunaix-os/includes/hal/ahci/ahci.h diff --git a/lunaix-os/includes/hal/ahci/ahci.h b/lunaix-os/includes/hal/ahci/ahci.h index 13312a5..9cf80fc 100644 --- a/lunaix-os/includes/hal/ahci/ahci.h +++ b/lunaix-os/includes/hal/ahci/ahci.h @@ -2,6 +2,7 @@ #define __LUNAIX_AHCI_H #include "hba.h" +#include /* * Macro naming rule: @@ -21,6 +22,13 @@ struct ahci_driver int id; }; +struct ahci_driver_param +{ + ptr_t mmio_base; + size_t mmio_size; + irq_t irq; +}; + void ahci_parse_dev_info(struct hba_device* dev_info, u16_t* data); @@ -47,4 +55,10 @@ ahci_try_send(struct hba_port* port, int slot); void ahci_post(struct hba_port* port, struct hba_cmd_state* state, int slot); +struct ahci_driver* +ahci_driver_init(struct ahci_driver_param* param); + +void +ahci_hba_isr(irq_t irq, const struct hart_state* hstate); + #endif /* __LUNAIX_AHCI_H */