summaryrefslogtreecommitdiffstats
path: root/DuetPkg/DxeIpl/DxeInit.c
diff options
context:
space:
mode:
authorgikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>2009-06-30 05:47:12 +0000
committergikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524>2009-06-30 05:47:12 +0000
commitd569cbb0d1ebf786f4daa7ed6c4533b927335174 (patch)
tree62bb98a6680c1b82894f9b0083a2a5ffc7d9bf1a /DuetPkg/DxeIpl/DxeInit.c
parent5540f4aa180a122bc4cce664390b9b8f5222521b (diff)
downloadedk2-d569cbb0d1ebf786f4daa7ed6c4533b927335174.tar.gz
edk2-d569cbb0d1ebf786f4daa7ed6c4533b927335174.tar.bz2
edk2-d569cbb0d1ebf786f4daa7ed6c4533b927335174.zip
Fix system memory map issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8685 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'DuetPkg/DxeIpl/DxeInit.c')
-rw-r--r--DuetPkg/DxeIpl/DxeInit.c49
1 files changed, 42 insertions, 7 deletions
diff --git a/DuetPkg/DxeIpl/DxeInit.c b/DuetPkg/DxeIpl/DxeInit.c
index dff64b4856..bee7f11307 100644
--- a/DuetPkg/DxeIpl/DxeInit.c
+++ b/DuetPkg/DxeIpl/DxeInit.c
@@ -78,14 +78,16 @@ MemoryAbove1MB.PhysicalStart <--------------------------------------------------
<------------------------------+ | |
Permament Stack (0x20 Pages = 128K) | |
<- Phit.EfiMemoryTop ----------+-----------+---------------+
- DxeCore |
- DxeCore
- DxeIpl |
- <----------------------------------------------------------+
- NvFV + FtwFV |
+ NvFV (64K) |
MMIO
- BFV |
- <- Top of Free Memory reported by E820 --------------------+
+ FtwFV (128K) |
+ <----------------------------------------------------------+<---------+
+ DxeCore | |
+ DxeCore |
+ DxeIpl | Allocated in EfiLdr
+ <----------------------------------------------------------+ |
+ BFV MMIO |
+ <- Top of Free Memory reported by E820 --------------------+<---------+
ACPINVS or
ACPIReclaim or
Reserved
@@ -267,11 +269,44 @@ Returns:
PrintString(" Length = ");
PrintValue64(gHob->NvFtwFvb.FvbInfo.Entries[0].Length);
PrintString("\n");
+ PrintString("BfvResource = ");
+ PrintValue64(gHob->BfvResource.PhysicalStart);
+ PrintString(" Length = ");
+ PrintValue64(gHob->BfvResource.ResourceLength);
+ PrintString("\n");
+ PrintString("NvStorageFvResource = ");
+ PrintValue64(gHob->NvStorageFvResource.PhysicalStart);
+ PrintString(" Length = ");
+ PrintValue64(gHob->NvStorageFvResource.ResourceLength);
+ PrintString("\n");
+ PrintString("NvStorage = ");
+ PrintValue64(gHob->NvStorage.FvbInfo.Entries[0].Base);
+ PrintString(" Length = ");
+ PrintValue64(gHob->NvStorage.FvbInfo.Entries[0].Length);
+ PrintString("\n");
+ PrintString("NvFtwFvResource = ");
+ PrintValue64(gHob->NvFtwFvResource.PhysicalStart);
+ PrintString(" Length = ");
+ PrintValue64(gHob->NvFtwFvResource.ResourceLength);
+ PrintString("\n");
+ PrintString("NvFtwWorking = ");
+ PrintValue64(gHob->NvFtwWorking.FvbInfo.Entries[0].Base);
+ PrintString(" Length = ");
+ PrintValue64(gHob->NvFtwWorking.FvbInfo.Entries[0].Length);
+ PrintString("\n");
+ PrintString("NvFtwSpare = ");
+ PrintValue64(gHob->NvFtwSpare.FvbInfo.Entries[0].Base);
+ PrintString(" Length = ");
+ PrintValue64(gHob->NvFtwSpare.FvbInfo.Entries[0].Length);
+ PrintString("\n");
PrintString("Stack = ");
PrintValue64(gHob->Stack.AllocDescriptor.MemoryBaseAddress);
PrintString(" StackLength = ");
PrintValue64(gHob->Stack.AllocDescriptor.MemoryLength);
PrintString("\n");
+ PrintString("PageTable = ");
+ PrintValue64((UINTN)PageTableBase);
+ PrintString("\n");
PrintString("MemoryFreeUnder1MB = ");
PrintValue64(gHob->MemoryFreeUnder1MB.PhysicalStart);
PrintString(" MemoryFreeUnder1MBLength = ");