summaryrefslogtreecommitdiffstats
path: root/payloads/libpayload/drivers/storage/ahci_private.h
diff options
context:
space:
mode:
Diffstat (limited to 'payloads/libpayload/drivers/storage/ahci_private.h')
-rw-r--r--payloads/libpayload/drivers/storage/ahci_private.h35
1 files changed, 34 insertions, 1 deletions
diff --git a/payloads/libpayload/drivers/storage/ahci_private.h b/payloads/libpayload/drivers/storage/ahci_private.h
index ba1471b5d5d4..c96613379801 100644
--- a/payloads/libpayload/drivers/storage/ahci_private.h
+++ b/payloads/libpayload/drivers/storage/ahci_private.h
@@ -2,6 +2,7 @@
* This file is part of the libpayload project.
*
* Copyright (C) 2012 secunet Security Networks AG
+ * Copyright (C) 2013 Edward O'Callaghan <eocallaghan@alterapraxis.com>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -198,4 +199,36 @@ typedef struct {
size_t buflen;
} ahci_dev_t;
-#endif
+/*
+ * ahci_common.c
+ */
+int ahci_cmdengine_start(hba_port_t *const port);
+
+int ahci_cmdengine_stop(hba_port_t *const port);
+
+ssize_t ahci_cmdslot_exec(ahci_dev_t *const dev);
+
+size_t ahci_cmdslot_prepare(ahci_dev_t *const dev,
+ u8 *const user_buf, size_t buf_len,
+ const int out);
+
+int ahci_identify_device(ata_dev_t *const ata_dev, u8 *const buf);
+
+int ahci_error_recovery(ahci_dev_t *const dev, const u32 intr_status);
+
+/*
+ * ahci_atapi.c
+ */
+ssize_t ahci_packet_read_cmd(atapi_dev_t *const _dev,
+ const u8 *const cmd, const size_t cmdlen,
+ u8 *const buf, const size_t buflen);
+
+/*
+ * ahci_ata.c
+ */
+ssize_t ahci_ata_read_sectors(ata_dev_t *const ata_dev,
+ const lba_t start, size_t count,
+ u8 *const buf);
+
+
+#endif /* _AHCI_PRIVATE_H */