summaryrefslogtreecommitdiffhomepage
path: root/src/boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot')
-rw-r--r--src/boot/BootKit/BootKit.h16
-rw-r--r--src/boot/modules/SysChk/SysChk.cpp2
-rw-r--r--src/boot/modules/SysChk/amd64-ahci-epm.json1
-rw-r--r--src/boot/modules/SysChk/amd64-ahci-gpt.json1
-rw-r--r--src/boot/modules/SysChk/amd64-pio-epm.json27
-rw-r--r--src/boot/modules/SysChk/amd64-pio-gpt.json1
-rw-r--r--src/boot/src/BootThread.cpp24
-rwxr-xr-x[-rw-r--r--]src/boot/src/root/ifs.json0
8 files changed, 30 insertions, 42 deletions
diff --git a/src/boot/BootKit/BootKit.h b/src/boot/BootKit/BootKit.h
index 4275e695..086d36e7 100644
--- a/src/boot/BootKit/BootKit.h
+++ b/src/boot/BootKit/BootKit.h
@@ -290,16 +290,16 @@ inline Boolean BDiskFormatFactory<BootDev>::Format(const Char* part_name) {
CopyMem(gpt_part->Signature, reinterpret_cast<VoidPtr>(const_cast<Char*>(kMagicGPT)),
StrLen(kMagicGPT));
- gpt_part->Revision = 0x00010000;
+ gpt_part->Revision = 0x00010000;
gpt_part->HeaderSize = sizeof(GPT_PARTITION_TABLE);
gpt_part->CRC32 = 0x00000000;
- gpt_part->Reserved1 = 0x00000000;
- gpt_part->LBAHeader = 0x00000000;
- gpt_part->LBAAltHeader = 0x00000000;
+ gpt_part->Reserved1 = 0x00000000;
+ gpt_part->LBAHeader = 0x00000000;
+ gpt_part->LBAAltHeader = 0x00000000;
gpt_part->FirstGPTEntry = 0x00000000;
- gpt_part->LastGPTEntry = 0x00000000;
+ gpt_part->LastGPTEntry = 0x00000000;
gpt_part->Guid.Data1 = 0x00000000;
gpt_part->Guid.Data2 = 0x0000;
@@ -309,10 +309,10 @@ inline Boolean BDiskFormatFactory<BootDev>::Format(const Char* part_name) {
gpt_part->Revision = 0x00010000;
- gpt_part->StartingLBA = 0x00000000;
+ gpt_part->StartingLBA = 0x00000000;
gpt_part->NumPartitionEntries = 0x00000000;
- gpt_part->SizeOfEntries = 0x00000000;
- gpt_part->CRC32PartEntry = 0x00000000;
+ gpt_part->SizeOfEntries = 0x00000000;
+ gpt_part->CRC32PartEntry = 0x00000000;
SetMem(gpt_part->Reserved2, 0, kSectorAlignGPT_PartTbl);
diff --git a/src/boot/modules/SysChk/SysChk.cpp b/src/boot/modules/SysChk/SysChk.cpp
index e8c5af06..c7217504 100644
--- a/src/boot/modules/SysChk/SysChk.cpp
+++ b/src/boot/modules/SysChk/SysChk.cpp
@@ -30,7 +30,7 @@ EXTERN_C Int32 SysChkModuleMain(Kernel::HEL::BootInfoHeader* handover) {
Boot::BDiskFormatFactory<Boot::BootDeviceSATA> partition_factory;
#endif
- if (partition_factory.IsPartitionValid()) return kEfiOk;
+ if (!partition_factory.IsPartitionValid()) return kEfiFail;
return partition_factory.Format(kMachineModel);
}
diff --git a/src/boot/modules/SysChk/amd64-ahci-epm.json b/src/boot/modules/SysChk/amd64-ahci-epm.json
index 444003cf..43b0bff7 100644
--- a/src/boot/modules/SysChk/amd64-ahci-epm.json
+++ b/src/boot/modules/SysChk/amd64-ahci-epm.json
@@ -34,6 +34,7 @@
"__SYSCHK__",
"BOOTZ_EPM_SUPPORT",
"__nekernel_max_cores=8",
+ "__nekernel_dma_best_align=8",
"__nekernel_dma_pool_start=0x1000000",
"__nekernel_dma_pool_size=0x1000000",
"__nekernel_halkit_include_processor=\"<HALKit/AMD64/Processor.h>\"",
diff --git a/src/boot/modules/SysChk/amd64-ahci-gpt.json b/src/boot/modules/SysChk/amd64-ahci-gpt.json
index 9b0f4546..d36f66bf 100644
--- a/src/boot/modules/SysChk/amd64-ahci-gpt.json
+++ b/src/boot/modules/SysChk/amd64-ahci-gpt.json
@@ -31,6 +31,7 @@
"__NE_AMD64__",
"__AHCI__",
"__nekernel_max_cores=8",
+ "__nekernel_dma_best_align=8",
"__nekernel_dma_pool_start=0x1000000",
"__nekernel_dma_pool_size=0x1000000",
"__nekernel_halkit_include_processor=\"<HALKit/AMD64/Processor.h>\"",
diff --git a/src/boot/modules/SysChk/amd64-pio-epm.json b/src/boot/modules/SysChk/amd64-pio-epm.json
index 0c4a1c59..7e4b1d4e 100644
--- a/src/boot/modules/SysChk/amd64-pio-epm.json
+++ b/src/boot/modules/SysChk/amd64-pio-epm.json
@@ -9,14 +9,21 @@
"./"
],
"sources_path": [
- "*.cpp",
- "*.S",
- "../../src/HEL/AMD64/BootATA.cpp",
- "../../src/HEL/AMD64/BootPlatform.cpp",
- "../../src/HEL/AMD64/BootAPI.S",
- "../../src/BootTextWriter.cpp",
- "../../src/BootSupport.cpp",
- "../../src/New+Delete.cpp"
+ "*.cpp",
+ "*.S",
+ "../../src/HEL/AMD64/BootATA.cpp",
+ "../../src/HEL/AMD64/BootPlatform.cpp",
+ "../../src/HEL/AMD64/BootAPI.S",
+ "../../src/BootTextWriter.cpp",
+ "../../src/BootSupport.cpp",
+ "../../src/New+Delete.cpp",
+ "../../../kernel/HALKit/AMD64/PCI/*.cpp",
+ "../../../kernel/HALKit/AMD64/Storage/*.cpp",
+ "../../../kernel/src/Storage/*.cpp",
+ "../../../kernel/src/Network/*.cpp",
+ "../../../kernel/HALKit/AMD64/*.cpp",
+ "../../../kernel/HALKit/AMD64/*.s",
+ "../../../kernel/src/*.cpp"
],
"output_name": "chk.efi",
"compiler_flags": [
@@ -28,15 +35,15 @@
],
"cpp_macros": [
"__NEOSKRNL__",
- "__BOOTZ__",
- "__BOOTZ_STANDALONE__",
"__NE_AMD64__",
"__nekernel_max_cores=8",
+ "__nekernel_dma_best_align=8",
"__nekernel_dma_pool_start=0x1000000",
"__nekernel_dma_pool_size=0x1000000",
"__nekernel_halkit_include_processor=\"<HALKit/AMD64/Processor.h>\"",
"__ATA_PIO__",
"BOOTZ_EPM_SUPPORT",
+ "__NE_MODULAR_KERNEL_COMPONENTS__",
"__NE_VEPM__",
"kChkVersionHighest=0x0100",
"kChkVersionLowest=0x0100",
diff --git a/src/boot/modules/SysChk/amd64-pio-gpt.json b/src/boot/modules/SysChk/amd64-pio-gpt.json
index ca564067..d954daed 100644
--- a/src/boot/modules/SysChk/amd64-pio-gpt.json
+++ b/src/boot/modules/SysChk/amd64-pio-gpt.json
@@ -34,6 +34,7 @@
"__ATA_PIO__",
"__NE_VEPM__",
"__nekernel_max_cores=8",
+ "__nekernel_dma_best_align=8",
"__nekernel_dma_pool_start=0x1000000",
"__nekernel_dma_pool_size=0x1000000",
"__nekernel_halkit_include_processor=\"<HALKit/AMD64/Processor.h>\"",
diff --git a/src/boot/src/BootThread.cpp b/src/boot/src/BootThread.cpp
index c0c72d8b..d18026db 100644
--- a/src/boot/src/BootThread.cpp
+++ b/src/boot/src/BootThread.cpp
@@ -185,29 +185,7 @@ Int32 BootThread::Start(HEL::BootInfoHeader* handover, Bool own_stack) {
writer.Write("BootZ: Starting: ").Write(fBlobName).Write("\r");
writer.Write("BootZ: Handover address: ").Write((UIntPtr) fHandover).Write("\r");
- if (own_stack) {
- writer.Write("BootZ: Using it's own stack.\r");
- writer.Write("BootZ: Stack address: ").Write((UIntPtr) &fStack[kBootThreadSz - 1]).Write("\r");
- writer.Write("BootZ: Stack size: ").Write(kBootThreadSz).Write("\r");
-
- fHandover->f_StackTop = &fStack[kBootThreadSz - 1];
- fHandover->f_StackSz = kBootThreadSz;
-
- auto ret = rt_jump_to_address(fStartAddress, fHandover, &fStack[kBootThreadSz - 1]);
-
- // we don't need the stack anymore.
-
- delete[] fStack;
- fStack = nullptr;
-
- return ret;
- } else {
- writer.Write("BootZ: Using the bootloader's stack.\r");
-
- return reinterpret_cast<HEL::HandoverProc>(fStartAddress)(fHandover);
- }
-
- return kEfiFail;
+ return reinterpret_cast<HEL::HandoverProc>(fStartAddress)(fHandover);
}
const Char* BootThread::GetName() {
diff --git a/src/boot/src/root/ifs.json b/src/boot/src/root/ifs.json
index 354ab503..354ab503 100644..100755
--- a/src/boot/src/root/ifs.json
+++ b/src/boot/src/root/ifs.json