From d3b39ca5bebf73804eae60e021e9083250195dc0 Mon Sep 17 00:00:00 2001 From: Amlal Date: Mon, 17 Feb 2025 13:34:21 +0100 Subject: FIX: AHCI.cc Signed-off-by: Amlal --- dev/Kernel/HALKit/AMD64/Storage/SATA.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'dev/Kernel') diff --git a/dev/Kernel/HALKit/AMD64/Storage/SATA.cc b/dev/Kernel/HALKit/AMD64/Storage/SATA.cc index 784033dd..6651db8c 100644 --- a/dev/Kernel/HALKit/AMD64/Storage/SATA.cc +++ b/dev/Kernel/HALKit/AMD64/Storage/SATA.cc @@ -250,12 +250,11 @@ static Kernel::Void drv_std_input_output(Kernel::UInt64 lba, Kernel::UInt8* buff for (Kernel::SizeT i = 0; i < (command_header->Prdtl - 1); i++) { - command_table->Prdt[i].Dba = ((Kernel::UInt32)(Kernel::UInt64)buffer_phys & 0xFFFFFFFF); - command_table->Prdt[i].Dbau = (((Kernel::UInt64)buffer_phys >> 32) & 0xFFFFFFFF); + command_table->Prdt[i].Dba = ((Kernel::UInt32)(Kernel::UInt64)buffer_phys + (i * 16) & 0xFFFFFFFF); + command_table->Prdt[i].Dbau = (((Kernel::UInt64)(buffer_phys + (i * 16)) >> 32) & 0xFFFFFFFF); command_table->Prdt[i].Dbc = (16 - 1); command_table->Prdt[i].Ie = YES; - size_buffer -= 16; buffer += 16; } @@ -292,9 +291,6 @@ static Kernel::Void drv_std_input_output(Kernel::UInt64 lba, Kernel::UInt8* buff while (kSATA->Ports[kSATAPortIdx].Ci & (1 << slot)) { - - kout << Kernel::number(slot) << endl; - if (kSATA->Is & kHBAErrTaskFile) // check for task file error. { Kernel::ke_panic(RUNTIME_CHECK_BAD_BEHAVIOR, "AHCI Read disk failure, faulty component."); -- cgit v1.2.3