feat: asynchronized SATA IO
[lunaix-os.git] / lunaix-os / includes / hal / ahci / ahci.h
index c7685104eebd8c1dd88d72a36926477022178318..ea63a9c19412d3613b376fa90ddd00d568483039 100644 (file)
@@ -36,7 +36,24 @@ ahci_parse_dev_info(struct hba_device* dev_info, uint16_t* data);
 void
 ahci_parsestr(char* str, uint16_t* reg_start, int size_word);
 
 void
 ahci_parsestr(char* str, uint16_t* reg_start, int size_word);
 
+/**
+ * @brief Issue a HBA command (synchronized)
+ *
+ * @param port
+ * @param slot
+ * @return int
+ */
 int
 ahci_try_send(struct hba_port* port, int slot);
 
 int
 ahci_try_send(struct hba_port* port, int slot);
 
+/**
+ * @brief Issue a HBA command (asynchronized)
+ *
+ * @param port
+ * @param state
+ * @param slot
+ */
+void
+ahci_post(struct hba_port* port, struct hba_cmd_state* state, int slot);
+
 #endif /* __LUNAIX_AHCI_H */
 #endif /* __LUNAIX_AHCI_H */