diff options
| author | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-04-06 01:45:03 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-04-06 01:45:10 +0200 |
| commit | e47a33d7d4f70c54a27e96df437e6d9ac4e829cf (patch) | |
| tree | 51a9f9f5019006e705444aa5f628fdae0d8dfb66 /Private/FirmwareKit | |
| parent | 5152c2282a1a680a272322f0bd3275fdf43e1530 (diff) | |
Add boot_write_epm_partition for PowerPC, update start location for AMD64 EPM.
Remove HCFS support, fully focusing on NewFS.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/FirmwareKit')
| -rw-r--r-- | Private/FirmwareKit/EFI/API.hxx | 2 | ||||
| -rw-r--r-- | Private/FirmwareKit/EPM.hxx | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/Private/FirmwareKit/EFI/API.hxx b/Private/FirmwareKit/EFI/API.hxx index 4431facb..90503384 100644 --- a/Private/FirmwareKit/EFI/API.hxx +++ b/Private/FirmwareKit/EFI/API.hxx @@ -34,7 +34,7 @@ Bascially frees everything we have in the EFI side. inline void ExitBootServices(UInt64 MapKey, EfiHandlePtr ImageHandle) noexcept { if (!ST) return; - ST->BootServices->ExitBootServices(ImageHandle, MapKey); + while (ST->BootServices->ExitBootServices(ImageHandle, MapKey) != kEfiOk); } enum { diff --git a/Private/FirmwareKit/EPM.hxx b/Private/FirmwareKit/EPM.hxx index 6b1d2f49..048324f5 100644 --- a/Private/FirmwareKit/EPM.hxx +++ b/Private/FirmwareKit/EPM.hxx @@ -52,7 +52,7 @@ struct PACKED PartitionBlock { NewOS::Int64 LbaStart; NewOS::Int16 Kind; NewOS::Int32 FsVersion; - NewOS::Char Fs[kEPMFilesystemLength]; /* NewFS, HCFS... */ + NewOS::Char Fs[kEPMFilesystemLength]; /* NewFS, ffs2... */ }; /* @brief AMD64 magic for EPM */ @@ -97,8 +97,12 @@ typedef struct PartitionBlock PartitionBlockType; #ifdef __x86_64__ #define kEPMMagic kEPMMagic86 #else +#ifdef __powerpc +#define kEPMMagic kEPMMagicPPC +#else #define kEPMMagic kEPMMagicError #endif +#endif ///! @brief partition must start after this address. #define kEPMStartPartitionBlk 0 |
