diff options
| author | Amlal <amlal.elmahrouss@icloud.com> | 2025-01-27 15:09:24 +0100 |
|---|---|---|
| committer | Amlal <amlal.elmahrouss@icloud.com> | 2025-01-27 15:09:24 +0100 |
| commit | a4d64ddc1375f40a4c72bd2ba9326df04058c9bb (patch) | |
| tree | bee09c5cd413151a84183c1ebc8ca81ab7c3c88b /dev/Mod | |
| parent | 974d89be4047f92b9f55e3e8821f4b89c9ab945b (diff) | |
Bump and fixes.
Signed-off-by: Amlal <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Mod')
| -rw-r--r-- | dev/Mod/ACPI/ACPI.h | 2 | ||||
| -rw-r--r-- | dev/Mod/AHCI/AHCI.h | 17 | ||||
| -rw-r--r-- | dev/Mod/ATA/ATA.h | 2 |
3 files changed, 13 insertions, 8 deletions
diff --git a/dev/Mod/ACPI/ACPI.h b/dev/Mod/ACPI/ACPI.h index 3a895430..a07f4b60 100644 --- a/dev/Mod/ACPI/ACPI.h +++ b/dev/Mod/ACPI/ACPI.h @@ -13,6 +13,8 @@ #include <NewKit/Defines.h> +#define SDT_OBJECT : public Kernel::SDT + namespace Kernel { class PACKED SDT diff --git a/dev/Mod/AHCI/AHCI.h b/dev/Mod/AHCI/AHCI.h index 7b50d461..937be6d2 100644 --- a/dev/Mod/AHCI/AHCI.h +++ b/dev/Mod/AHCI/AHCI.h @@ -284,10 +284,10 @@ typedef struct HbaCmdHeader final Kernel::UInt8 Reserved0 : 1; // Reserved Kernel::UInt8 Pmp : 4; // Port multiplier port - Kernel::UInt16 Prdtl; // Physical region descriptor table length in entries - volatile Kernel::UInt32 Prdbc; // Physical region descriptor byte count transferred + Kernel::UInt16 Prdtl; // Physical region descriptor table length in entries + Kernel::UInt32 Prdbc; // Physical region descriptor byte count transferred - Kernel::UInt64 Ctba; // Command table descriptor base address + Kernel::UInt32 Ctba; // Command table descriptor base address Kernel::UInt32 Reserved1[4]; // Reserved } HbaCmdHeader; @@ -313,7 +313,8 @@ typedef struct HbaFis final typedef struct HbaPrdtEntry final { - Kernel::UInt64 Dba; // Data base address + Kernel::UInt32 Dba; // Data base address + Kernel::UInt32 Dbau; Kernel::UInt32 Reserved0; // Reserved // DW3 Kernel::UInt32 Dbc : 22; // Byte count, 4M max @@ -323,10 +324,10 @@ typedef struct HbaPrdtEntry final typedef struct HbaCmdTbl final { - Kernel::UInt8 Cfis[64]; // Command FIS - Kernel::UInt8 Acmd[16]; // ATAPI command, 12 or 16 bytes - Kernel::UInt8 Rsv[48]; // Reserved - struct HbaPrdtEntry PrdtEntries[1]; // Physical region descriptor table entries, 0 ~ 65535 + Kernel::UInt8 Cfis[64]; // Command FIS + Kernel::UInt8 Acmd[16]; // ATAPI command, 12 or 16 bytes + Kernel::UInt8 Rsv[48]; // Reserved + struct HbaPrdtEntry Prdt[1]; // Physical region descriptor table entries, 0 ~ 65535 } HbaCmdTbl; /// @brief Initializes an AHCI disk. diff --git a/dev/Mod/ATA/ATA.h b/dev/Mod/ATA/ATA.h index 07226a97..c3c65ec0 100644 --- a/dev/Mod/ATA/ATA.h +++ b/dev/Mod/ATA/ATA.h @@ -65,6 +65,8 @@ #define ATA_IDENT_COMMANDSETS 164 #define ATA_IDENT_MAX_LBA_EXT 200 +#define ATA_REG_SET_FEATURES 0xEF + #define ATA_MASTER 0x00 #define ATA_SLAVE 0x01 |
