X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/df61e9d0fec3d5e75820e27e7a2459d132364585..8b3a34da459067723ad288b2eb51a14473e0944f:/lunaix-os/includes/hal/ahci/hba.h diff --git a/lunaix-os/includes/hal/ahci/hba.h b/lunaix-os/includes/hal/ahci/hba.h index 19f76cd..f65a93d 100644 --- a/lunaix-os/includes/hal/ahci/hba.h +++ b/lunaix-os/includes/hal/ahci/hba.h @@ -32,6 +32,7 @@ #define HBA_PxCMD_ST (1) #define HBA_PxINTR_DMA (1 << 2) #define HBA_PxINTR_D2HR (1) +#define HBA_PxINTR_DPS (1 << 5) #define HBA_PxTFD_ERR (1) #define HBA_PxTFD_BSY (1 << 7) #define HBA_PxTFD_DRQ (1 << 3) @@ -101,6 +102,9 @@ struct hba_device uint8_t cbd_size; uint8_t last_error; uint8_t last_status; + uint32_t alignment_offset; + uint32_t block_per_sec; + uint32_t capabilities; struct { @@ -136,9 +140,10 @@ struct ahci_hba }; int -hba_alloc_slot(struct hba_port* port, - struct hba_cmdt** cmdt, - struct hba_cmdh** cmdh, - uint16_t header_options); +hba_prepare_cmd(struct hba_port* port, + struct hba_cmdt** cmdt, + struct hba_cmdh** cmdh, + void* buffer, + unsigned int size); #endif /* __LUNAIX_HBA_H */