diff options
| author | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-17 10:59:07 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-17 11:00:09 +0100 |
| commit | 9898520f721220a2af4be59fd92e8ad8afcd4287 (patch) | |
| tree | 35662af54535ccc07366b1a3a554f6296e76f4ce /Private/NewBoot | |
| parent | 45548d516ddf5e88bf80940365d151e1bd69c29f (diff) | |
Unstable: See below.
These changes are related to the current ticket regarding AHCI support.
This commit is just to upstream changes from local.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/NewBoot')
| -rw-r--r-- | Private/NewBoot/BootKit/Arch/ATA.hxx | 3 | ||||
| -rw-r--r-- | Private/NewBoot/BootKit/Arch/SATA.hxx | 4 | ||||
| -rw-r--r-- | Private/NewBoot/NetBoot/EfiModule.cxx | 6 | ||||
| -rw-r--r-- | Private/NewBoot/Source/BootMain.cxx | 2 | ||||
| -rw-r--r-- | Private/NewBoot/Source/HEL/AMD64/AMD64-ATA.cxx | 2 |
5 files changed, 12 insertions, 5 deletions
diff --git a/Private/NewBoot/BootKit/Arch/ATA.hxx b/Private/NewBoot/BootKit/Arch/ATA.hxx index 15d36317..74bdc630 100644 --- a/Private/NewBoot/BootKit/Arch/ATA.hxx +++ b/Private/NewBoot/BootKit/Arch/ATA.hxx @@ -6,7 +6,7 @@ #pragma once -#include <Drivers/ATA/Defines.hxx> +#include <Builtins/ATA/Defines.hxx> class BDeviceATA final { public: @@ -48,4 +48,3 @@ enum { kATADeviceCount, }; -#define kATASectorSz 512 diff --git a/Private/NewBoot/BootKit/Arch/SATA.hxx b/Private/NewBoot/BootKit/Arch/SATA.hxx index 3e37be19..409601ec 100644 --- a/Private/NewBoot/BootKit/Arch/SATA.hxx +++ b/Private/NewBoot/BootKit/Arch/SATA.hxx @@ -7,7 +7,7 @@ #pragma once #include <CompilerKit/CompilerKit.hxx> -#include <Drivers/AHCI/Defines.hxx> +#include <Builtins/AHCI/Defines.hxx> class BDeviceSATA final { public: @@ -35,4 +35,4 @@ class BDeviceSATA final { AHCITraits mTraits; }; -#define kAHCISectorSz 512 +#define kAHCISectorSz 4096 diff --git a/Private/NewBoot/NetBoot/EfiModule.cxx b/Private/NewBoot/NetBoot/EfiModule.cxx index 42415dc7..419a2be4 100644 --- a/Private/NewBoot/NetBoot/EfiModule.cxx +++ b/Private/NewBoot/NetBoot/EfiModule.cxx @@ -11,5 +11,11 @@ EXTERN_C Int32 EfiMain(EfiHandlePtr handle, EfiSystemTable* SystemTable) { + InitEFI(ST); + + /// - Find a network drive called ".\\HCoreWorkgroup" + /// - Download our image + /// - Boot from it. + return kEfiOk; } diff --git a/Private/NewBoot/Source/BootMain.cxx b/Private/NewBoot/Source/BootMain.cxx index 650196f6..c0412797 100644 --- a/Private/NewBoot/Source/BootMain.cxx +++ b/Private/NewBoot/Source/BootMain.cxx @@ -179,6 +179,8 @@ EFI_EXTERN_C EFI_API Int EfiMain(EfiHandlePtr ImageHandle, SystemTable->FirmwareVendor, handoverHdrPtr->f_FirmwareVendorLen); + handoverHdrPtr->f_HardwareTables.f_VendorTables = ST->ConfigurationTable->VendorTable; + EFI::ExitBootServices(MapKey, ImageHandle); bool isIniNotFound = (systemIni.Blob() == nullptr); diff --git a/Private/NewBoot/Source/HEL/AMD64/AMD64-ATA.cxx b/Private/NewBoot/Source/HEL/AMD64/AMD64-ATA.cxx index 145976c1..fc09a3a7 100644 --- a/Private/NewBoot/Source/HEL/AMD64/AMD64-ATA.cxx +++ b/Private/NewBoot/Source/HEL/AMD64/AMD64-ATA.cxx @@ -261,7 +261,7 @@ BDeviceATA& BDeviceATA::Write(CharacterType* Buf, const SizeT& SectorSz) { boot_ata_write(this->Leak().mBase + i, this->Leak().mBus, this->Leak().mMaster, Buf, Off); - Off += kATASectorSz; + Off += kATASectorSize; boot_ata_wait_io(this->Leak().mBus); } |
