summaryrefslogtreecommitdiffhomepage
path: root/Private/NewBoot/BootKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-29 19:54:04 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-29 19:56:13 +0100
commit4cadbff15541ca09ced3321acfdf302fced29ee9 (patch)
tree279a18b8268add19ad9ac1010d3d70c39a102e7b /Private/NewBoot/BootKit
parent65254486efff0fd1bb78a48ff90b7713a5ce539f (diff)
NewBoot: Working on EFI implementation to load kernel into memory...
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/NewBoot/BootKit')
-rw-r--r--Private/NewBoot/BootKit/Protocol.hxx38
1 files changed, 16 insertions, 22 deletions
diff --git a/Private/NewBoot/BootKit/Protocol.hxx b/Private/NewBoot/BootKit/Protocol.hxx
index c2dc1a9d..68b837b4 100644
--- a/Private/NewBoot/BootKit/Protocol.hxx
+++ b/Private/NewBoot/BootKit/Protocol.hxx
@@ -11,41 +11,35 @@
#include <EFIKit/EFI.hxx>
-namespace HEL
-{
-using namespace hCore;
-
+namespace hCore::HEL {
/**
@brief the kind of executable we're loading.
*/
-enum
-{
- kTypeKernel = 100,
- kTypeKernelDriver = 101,
- kTypeRsrc = 102,
- kTypeCount = 3,
+enum {
+ kTypeKernel = 100,
+ kTypeKernelDriver = 101,
+ kTypeRsrc = 102,
+ kTypeCount = 3,
};
/**
@brief The executable architecture.
*/
-enum
-{
- kArchAmd64 = 122,
- kArchCount = 2,
+enum {
+ kArchAmd64 = 122,
+ kArchCount = 2,
};
-struct __attribute__((packed)) HandoverHeader final
-{
- Int32 targetMagic;
- Int32 targetType;
- Int32 targetArch;
- UIntPtr protocolHeaderTable;
+struct __attribute__((packed)) HandoverHeader final {
+ Int32 targetMagic;
+ Int32 targetType;
+ Int32 targetArch;
+ UIntPtr startAddress;
};
-} // namespace HEL
+} // namespace hCore::HEL
#define kHandoverMagic 0xBAD55
-#define kBaseHandoverStruct 0x10000000
+#define kBaseHandoverStruct 0x80000000
#define kHandoverStructSz sizeof(HEL::HandoverHeader)