public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* Tianocore hangs on boot
@ 2016-11-16 20:27 Janne Heß
  2016-11-16 23:26 ` Ma, Maurice
  0 siblings, 1 reply; 2+ messages in thread
From: Janne Heß @ 2016-11-16 20:27 UTC (permalink / raw)
  To: edk2-devel

[-- Attachment #1: Type: text/plain, Size: 6763 bytes --]

Hello everyone,

I' currently trying to get CorebootPayloadPkg to work on QEMU.
I turned on Tianocore debugging (see my previous message) and tried to
run a coreboot with UEFIPAYLOAD.fd as ELF executable payload which
resulted in the VM hanging.
I also tried to add it as a payload of the "Tianocore" type (which
seemed to be more logical but is not what the documentation says), but I
got the same result.

My QEMU command line: qemu-system-x86_64 -M pc -bios build/coreboot.rom
-serial stdio -m 1G -vga qxl

Log of Tianocore:

    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/CorebootModulePkg/SecCore/SecCore/DEBUG/SecCore.dll
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Core/Pei/PeiMain/DEBUG/PeiCore.dll
Register PPI Notify: DCD0BE23-9586-40F4-B643-06522CED4EDE
Install PPI: 8C8CE578-8A3D-4F1C-9935-896185C32DD3
Install PPI: 5473C07A-3DCB-4DCA-BD6F-1E9689E7349A
The 0th FV start address is 0x00000800000, size is 0x00030000, handle is 0x0
Register PPI Notify: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Register PPI Notify: EA7CA24B-DED5-4DAD-A389-BF827E8F9B38
Install PPI: B9E0ABFE-5979-4914-977F-6DEE78C278A6
Install PPI: DBE23AA9-A345-4B97-85B6-B226F1617389
Evaluate PEI DEPEX for FFS(9B3ADA4F-AE56-4C24-8DEA-F03B7558AE50)
  TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/PCD/Pei/Pcd/DEBUG/PcdPeim.dll
Loading PEIM at 0x00000812140 EntryPoint=0x000008139D3 PcdPeim.efi
Install PPI: 06E81C58-4AD7-44BC-8390-F10265F72480
Install PPI: 01F34D25-4DE2-23AD-3FF3-36353FF323F1
Install PPI: 4D8B155B-C059-4C8F-8926-06FD4331DB8A
Install PPI: A60C6B59-E459-425D-9C69-0BCC9CB27D81
Evaluate PEI DEPEX for FFS(A3610442-E69F-4DF3-82CA-2360C4031A23)
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei/DEBUG/ReportStatusCodeRouterPei.dll
Loading PEIM at 0x00000817BC0 EntryPoint=0x00000819C2B
ReportStatusCodeRouterPei.efi
Install PPI: 0065D394-9951-4144-82A3-0AFC8579C251
Install PPI: 229832D3-7A30-4B36-B827-F40CB7D45436
Evaluate PEI DEPEX for FFS(9D225237-FA01-464C-A949-BAABC02D31D0)
  PUSH GUID(0065D394-9951-4144-82A3-0AFC8579C251) = TRUE
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  AND
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei/DEBUG/StatusCodeHandlerPei.dll
Loading PEIM at 0x0000081AEC0 EntryPoint=0x0000081CE7F
StatusCodeHandlerPei.efi
PROGRESS CODE: V03020003 I0
Evaluate PEI DEPEX for FFS(352C6AF8-315B-4BD6-B04F-31D4ED1EBE57)
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/CorebootModulePkg/CbSupportPei/CbSupportPei/DEBUG/CbSupportPeim.dll
Loading PEIM at 0x0000081E1C0 EntryPoint=0x0000081F9B1 CbSupportPeim.efi
PROGRESS CODE: V03020002 I0
0. 0000000000000000 - 0000000000000FFF [10]
1. 0000000000001000 - 000000000009FFFF [01]
2. 00000000000C0000 - 000000003FFAFFFF [01]
3. 000000003FFB0000 - 000000003FFFFFFF [10]
4. 00000000FF800000 - 00000000FFFFFFFF [02]
Low memory 0x0
SystemLowMemTop 0x40000000
PeiMemBase: 0xFFFFFFFFFC000000.
PeiMemSize: 0x4000000.
PeiInstallPeiMemory MemoryBegin 0xFFFFFFFFFC000000, MemoryLength 0x4000000
MtrrSetMemoryAttribute() WB:0000000000100000-FFFFFFFFFFF00000
  Status = Unsupported
MtrrSetMemoryAttribute() WB:0000000000000000-00000000000A0000
  Status = Success
MTRR Settings
=============
MTRR Default Type: 0000000000000C00
Fixed MTRR[00]   : 0606060606060606
Fixed MTRR[01]   : 0606060606060606
Fixed MTRR[02]   : 0000000000000000
Fixed MTRR[03]   : 0000000000000000
Fixed MTRR[04]   : 0000000000000000
Fixed MTRR[05]   : 0000000000000000
Fixed MTRR[06]   : 0000000000000000
Fixed MTRR[07]   : 0000000000000000
Fixed MTRR[08]   : 0000000000000000
Fixed MTRR[09]   : 0000000000000000
Fixed MTRR[10]   : 0000000000000000
Variable MTRR[00]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[01]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[02]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[03]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[04]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[05]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[06]: Base=0000000000000000 Mask=0000000000000000
Variable MTRR[07]: Base=0000000000000000 Mask=0000000000000000

MTRR Ranges
====================================
WB:0000000000000000-000000000009FFFF
UC:00000000000A0000-00000000000FFFFF
UC:0000000000100000-000000FFFFFFFFFF

Found one valid fv : 0x3E000000830000.
Install PPI: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Notify: PPI Guid: 49EDB1C1-BF21-4761-BB12-EB0031AABB39, Peim notify
entry point: 808000
The 1th FV start address is 0x00000830000, size is 0x003E0000, handle is
0x830000
Install PPI: 7408D748-FC8C-4EE6-9288-C4BEC092A410
Actual Coreboot header: 3FFD6000.
Find CbMemTable Id 0x41435049, base 3FFB1000, size 0x24000
Find CbMemTable Id 0x534D4254, base 3FFB0000, size 0x800
Detected Acpi Table at 0x3FFB1000, length 0x24000
Detected Smbios Table at 0x3FFB0000, length 0x800
Create system table info guid hob
Find CbMemTable Id 0x41435049, base 3FFB1000, size 0x24000
Find Rsdp at 3FFB1000
Find Rsdt 0x3FFB291D, Xsdt 0x0
PmCtrl Reg 0xE404
PmTimer Reg 0xE408
Reset Reg 0xC10100000078
Reset Value 0x0
PmEvt Reg 0xE400
PmGpeEn Reg 0xAFE2
Create acpi board info guid hob
Found coreboot video frame buffer information
physical_address: 0xF4000000
x_resolution: 0x320
y_resolution: 0x258
bits_per_pixel: 0x20
bytes_per_line: 0xC80
red_mask_size: 0x8
red_mask_pos: 0x10
green_mask_size: 0x8
green_mask_pos: 0x8
blue_mask_size: 0x8
blue_mask_pos: 0x0
reserved_mask_size: 0x8
reserved_mask_pos: 0x18
Create frame buffer info guid hob
PROGRESS CODE: V03020003 I0
Temp Stack : BaseAddress=0x88000 Length=0x8000
Temp Heap  : BaseAddress=0x80000 Length=0x8000
Total temporary memory:    65536 bytes.
  temporary memory stack ever used: 32768 bytes.
  temporary memory heap used:       3688 bytes.
Old Stack size 32768, New stack size 131072
Stack Hob: BaseAddress=0xFFFFFFFFFC000000 Length=0x20000
Heap Offset = 0xFBFA0000 Stack Offset = 0xFBF90000

It just keeps hanging here.

I'm sorry for just dumping the log here, but I really don't understand
what the problem is and hope anybody here knows something so I can boot
Tianocore with Coreboot.

Thanks in advance.

Regards
Janne


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Tianocore hangs on boot
  2016-11-16 20:27 Tianocore hangs on boot Janne Heß
@ 2016-11-16 23:26 ` Ma, Maurice
  0 siblings, 0 replies; 2+ messages in thread
From: Ma, Maurice @ 2016-11-16 23:26 UTC (permalink / raw)
  To: Janne Heß; +Cc: edk2-devel@lists.01.org

Hi,  Janne,

By looking into your log, it seems to be some memory map related issue.  The CorebootPayloadPkg failed to find the proper usable low memory.

I noticed an entry in your coreboot memory map as below:
2. 00000000000C0000 - 000000003FFAFFFF [01]

And this entry was not handled properly by the CbSupportPei module.   This module currently assumes an memory map type 1 entry with (base >= 1MB) exists.  But in your case it combines with legacy C/D/E/F segments.    I think we should fix this in CbSupportPei module.

Could you please try the following change and let me know the result?  

--- a/CorebootModulePkg/CbSupportPei/CbSupportPei.c
+++ b/CorebootModulePkg/CbSupportPei/CbSupportPei.c
@@ -170,6 +170,12 @@ CbMemInfoCallback (
              EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE;

   MemInfo = (CB_MEM_INFO *)Param;
+
+  if ((Base  < 0x100000) && ((Base + Size) > 0x100000)) {
+         Size -= (0x100000 - Base);
+         Base  = 0x100000;
+  }
+
   if (Base >= 0x100000) {
     if (Type == CB_MEM_RAM) {
       if (Base < 0x100000000ULL) {

Thanks
Maurice

-----Original Message-----
From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Janne Heß
Sent: Wednesday, November 16, 2016 12:27 PM
To: edk2-devel@lists.01.org
Subject: [edk2] Tianocore hangs on boot

Hello everyone,

I' currently trying to get CorebootPayloadPkg to work on QEMU.
I turned on Tianocore debugging (see my previous message) and tried to run a coreboot with UEFIPAYLOAD.fd as ELF executable payload which resulted in the VM hanging.
I also tried to add it as a payload of the "Tianocore" type (which seemed to be more logical but is not what the documentation says), but I got the same result.

My QEMU command line: qemu-system-x86_64 -M pc -bios build/coreboot.rom -serial stdio -m 1G -vga qxl

Log of Tianocore:

    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/CorebootModulePkg/SecCore/SecCore/DEBUG/SecCore.dll
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Core/Pei/PeiMain/DEBUG/PeiCore.dll
Register PPI Notify: DCD0BE23-9586-40F4-B643-06522CED4EDE
Install PPI: 8C8CE578-8A3D-4F1C-9935-896185C32DD3
Install PPI: 5473C07A-3DCB-4DCA-BD6F-1E9689E7349A
The 0th FV start address is 0x00000800000, size is 0x00030000, handle is 0x0 Register PPI Notify: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Register PPI Notify: EA7CA24B-DED5-4DAD-A389-BF827E8F9B38
Install PPI: B9E0ABFE-5979-4914-977F-6DEE78C278A6
Install PPI: DBE23AA9-A345-4B97-85B6-B226F1617389
Evaluate PEI DEPEX for FFS(9B3ADA4F-AE56-4C24-8DEA-F03B7558AE50)
  TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/PCD/Pei/Pcd/DEBUG/PcdPeim.dll
Loading PEIM at 0x00000812140 EntryPoint=0x000008139D3 PcdPeim.efi Install PPI: 06E81C58-4AD7-44BC-8390-F10265F72480
Install PPI: 01F34D25-4DE2-23AD-3FF3-36353FF323F1
Install PPI: 4D8B155B-C059-4C8F-8926-06FD4331DB8A
Install PPI: A60C6B59-E459-425D-9C69-0BCC9CB27D81
Evaluate PEI DEPEX for FFS(A3610442-E69F-4DF3-82CA-2360C4031A23)
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei/DEBUG/ReportStatusCodeRouterPei.dll
Loading PEIM at 0x00000817BC0 EntryPoint=0x00000819C2B ReportStatusCodeRouterPei.efi Install PPI: 0065D394-9951-4144-82A3-0AFC8579C251
Install PPI: 229832D3-7A30-4B36-B827-F40CB7D45436
Evaluate PEI DEPEX for FFS(9D225237-FA01-464C-A949-BAABC02D31D0)
  PUSH GUID(0065D394-9951-4144-82A3-0AFC8579C251) = TRUE
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  AND
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei/DEBUG/StatusCodeHandlerPei.dll
Loading PEIM at 0x0000081AEC0 EntryPoint=0x0000081CE7F StatusCodeHandlerPei.efi PROGRESS CODE: V03020003 I0 Evaluate PEI DEPEX for FFS(352C6AF8-315B-4BD6-B04F-31D4ED1EBE57)
  PUSH GUID(01F34D25-4DE2-23AD-3FF3-36353FF323F1) = TRUE
  END
  RESULT = TRUE
    PDB =
/build/edk2/Build/CorebootPayloadPkgX64/DEBUG_GCC5/IA32/CorebootModulePkg/CbSupportPei/CbSupportPei/DEBUG/CbSupportPeim.dll
Loading PEIM at 0x0000081E1C0 EntryPoint=0x0000081F9B1 CbSupportPeim.efi PROGRESS CODE: V03020002 I0 0. 0000000000000000 - 0000000000000FFF [10] 1. 0000000000001000 - 000000000009FFFF [01] 2. 00000000000C0000 - 000000003FFAFFFF [01] 3. 000000003FFB0000 - 000000003FFFFFFF [10] 4. 00000000FF800000 - 00000000FFFFFFFF [02] Low memory 0x0 SystemLowMemTop 0x40000000
PeiMemBase: 0xFFFFFFFFFC000000.
PeiMemSize: 0x4000000.
PeiInstallPeiMemory MemoryBegin 0xFFFFFFFFFC000000, MemoryLength 0x4000000
MtrrSetMemoryAttribute() WB:0000000000100000-FFFFFFFFFFF00000
  Status = Unsupported
MtrrSetMemoryAttribute() WB:0000000000000000-00000000000A0000
  Status = Success
MTRR Settings
=============
MTRR Default Type: 0000000000000C00
Fixed MTRR[00]   : 0606060606060606
Fixed MTRR[01]   : 0606060606060606
Fixed MTRR[02]   : 0000000000000000
Fixed MTRR[03]   : 0000000000000000
Fixed MTRR[04]   : 0000000000000000
Fixed MTRR[05]   : 0000000000000000
Fixed MTRR[06]   : 0000000000000000
Fixed MTRR[07]   : 0000000000000000
Fixed MTRR[08]   : 0000000000000000
Fixed MTRR[09]   : 0000000000000000
Fixed MTRR[10]   : 0000000000000000
Variable MTRR[00]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[01]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[02]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[03]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[04]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[05]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[06]: Base=0000000000000000 Mask=0000000000000000 Variable MTRR[07]: Base=0000000000000000 Mask=0000000000000000

MTRR Ranges
====================================
WB:0000000000000000-000000000009FFFF
UC:00000000000A0000-00000000000FFFFF
UC:0000000000100000-000000FFFFFFFFFF

Found one valid fv : 0x3E000000830000.
Install PPI: 49EDB1C1-BF21-4761-BB12-EB0031AABB39
Notify: PPI Guid: 49EDB1C1-BF21-4761-BB12-EB0031AABB39, Peim notify entry point: 808000 The 1th FV start address is 0x00000830000, size is 0x003E0000, handle is
0x830000
Install PPI: 7408D748-FC8C-4EE6-9288-C4BEC092A410
Actual Coreboot header: 3FFD6000.
Find CbMemTable Id 0x41435049, base 3FFB1000, size 0x24000 Find CbMemTable Id 0x534D4254, base 3FFB0000, size 0x800 Detected Acpi Table at 0x3FFB1000, length 0x24000 Detected Smbios Table at 0x3FFB0000, length 0x800 Create system table info guid hob Find CbMemTable Id 0x41435049, base 3FFB1000, size 0x24000 Find Rsdp at 3FFB1000 Find Rsdt 0x3FFB291D, Xsdt 0x0 PmCtrl Reg 0xE404 PmTimer Reg 0xE408 Reset Reg 0xC10100000078 Reset Value 0x0 PmEvt Reg 0xE400 PmGpeEn Reg 0xAFE2 Create acpi board info guid hob Found coreboot video frame buffer information
physical_address: 0xF4000000
x_resolution: 0x320
y_resolution: 0x258
bits_per_pixel: 0x20
bytes_per_line: 0xC80
red_mask_size: 0x8
red_mask_pos: 0x10
green_mask_size: 0x8
green_mask_pos: 0x8
blue_mask_size: 0x8
blue_mask_pos: 0x0
reserved_mask_size: 0x8
reserved_mask_pos: 0x18
Create frame buffer info guid hob
PROGRESS CODE: V03020003 I0
Temp Stack : BaseAddress=0x88000 Length=0x8000 Temp Heap  : BaseAddress=0x80000 Length=0x8000
Total temporary memory:    65536 bytes.
  temporary memory stack ever used: 32768 bytes.
  temporary memory heap used:       3688 bytes.
Old Stack size 32768, New stack size 131072 Stack Hob: BaseAddress=0xFFFFFFFFFC000000 Length=0x20000 Heap Offset = 0xFBFA0000 Stack Offset = 0xFBF90000

It just keeps hanging here.

I'm sorry for just dumping the log here, but I really don't understand what the problem is and hope anybody here knows something so I can boot Tianocore with Coreboot.

Thanks in advance.

Regards
Janne


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-11-16 23:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-16 20:27 Tianocore hangs on boot Janne Heß
2016-11-16 23:26 ` Ma, Maurice

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox