Do you mean TcgPei is added in FDF, but not dispatched by PEI core?
If so, please make sure you have below dependency satisfied. I guess you have 
1st and 2nd.
For 3rd, you can consider adding Tcg2Config driver, or produce 
gEfiTpmDeviceSelectedGuid in your platform module.

[Depex]
  gEfiPeiMasterBootModePpiGuid AND
  gEfiPeiReadOnlyVariable2PpiGuid AND
  gEfiTpmDeviceSelectedGuid

-----Original Message-----
From: David Van Arnem [mailto:dvanar...@cmlab.biz] 
Sent: Wednesday, August 26, 2015 3:28 AM
To: edk2-devel@lists.01.org
Cc: Yao, Jiewen
Subject: Re: [edk2] Measured boot in OVMF with QEMU TPM passthrough?

On 08/22/2015 06:41 AM, Yao, Jiewen wrote:
> Hi
> Some clarification:
> 1) TPM is to support TCG trusted boot, it is not related to UEFI secure boot. 
> So enabling UEFI secure boot does not mean TCG trusted boot is enabled.
Ok, thank you.  I knew UEFI secure boot was not the same as TCG trusted boot, 
but I wasn't sure how related they were.  My focus is TCG trusted boot.
> 2) I think you need add both TcgPei and TcgDxe to record measured boot log, 
> because TPM device is started from TcgPei. Just adding TcgDxe may still cause 
> error.
I am using a TPM1.2, so I have added the TcgPei, TcgDxe, and related modules to 
OVMF (in both the platform DSC and FDF files), and I modeled my changes after 
the Vlv2TbltDevicePkg files.  I spoke incorrectly in one of my previous emails; 
I see PhysicalPresencePei and TcgPei in both Ovmf.map and PEIFV.Fv.map after 
OVMF build, so they should be present in the OVMF image, but they are not being 
loaded according to the OVMF debug output.  The DXE TCG modules *are* being 
loaded, but are throwing an error presumably because the necessary setup was 
not performed during PEI.  I thought that the SEC or PEI core would kind of 
"automatically" 
find and load them, so I have not been able to determine why they are not 
loading.  Do you have any thoughts on this?
> 3) TcgSmm is to support TPM PP and MOR, which is NOT related to measured boot 
> record.
Ok, thank you again.
>
> BTW: Would you please let me know your TPM passthru is for TPM1.2 or TPM2.0?
> For later, you need include Tcg2Pei/Tcg2Dxe, instead of TcgPei/TcgDxe.
>
> Let me know if you have more question.
>
> Thank you
> Yao Jiewen
>
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of 
> David Van Arnem
> Sent: Saturday, August 22, 2015 12:44 AM To:edk2-devel@lists.01.org
> Subject: Re: [edk2] Measured boot in OVMF with QEMU TPM passthrough?
>
> Hello again,
>
> I've done some analysis and here's where I'm at with measured boot with OVMF 
> in a QEMU guest:
>
> I've verified that most of the relevant modules that need to be added 
> according to the instructions 
> athttp://tianocore.sourceforge.net/wiki/How_to_Enable_Security#HOW_TO_
> ENABLE_TCG_TPM are being placed in the OVMF image by looking at 
> Ovmf.map.  They are also loaded when OVMF boots, which I've verified from the 
> OVMF debug output.  I believe the only one I've added to OvmfX64.dsc/fdf that 
> does not appear in the map or debug output is TcgSmm, which handles the ACPI 
> methods for TCG.  I think this is a problem: I do see a TCPA table when I 
> dump the ACPI tables in my guest, and it has an address to the start of the 
> Event Log, but I still don't have any measurements recorded in 
> /sys/kernel/security/tpm0/ascii_bios_measurements.  And, the PCR values from 
> /sys/class/tpm/tpm0/device/pcrs don't change whether I have OVMF Secure Boot 
> enabled or not (I think it's supposed to extend PCR[07]?).
>
> So, my question about whether or not measured boot with event logging should 
> be possible in OVMF with a QEMU VM still stands. Additonally, I'm curious if 
> the way I've added components to the OvmfX64.dsc file is correct.  For 
> example, here's how I added the TcgDxe component:
>
>     SecurityPkg/Tcg/TcgDxe/TcgDxe.inf {
>       <LibraryClasses>
> TpmCommLib|SecurityPkg/Library/TpmCommLib/TpmCommLib.inf
>     }
>
> I added the LibraryClasses subsection after the build tool complained about 
> an instance of that class not being found, and did the same for the other 
> modules that had the same issue.  I see other LibraryClasses in TcgDxe.inf 
> that don't require an instance in the subsection, why is that?
>
> Finally, where in the code should I do steps 1 and 2 (clear memory, process 
> request) from the instructions linked above?
>
> Any guidance would be appreciated.
>
> Thanks,
> David
>
> On 08/19/2015 05:17 PM, David Van Arnem wrote:
>> Hello,
>>
>> Should it be possible to perform measured boot in OVMF to measure a 
>> QEMU guest (extend and log PCRs) using a TPM passed-through from the 
>> host?
>>
>> I have a host machine with a TPM (v1.2), and a QEMU Linux guest 
>> booting using an OVMF image with the modifications suggested in the 
>> following link (modifications were done to OvmfX64.dsc):
>> http://tianocore.sourceforge.net/wiki/How_to_Enable_Security  
>> (section "How To Enable TCG TPM").  I've enabled QEMU TPM passthrough 
>> from the host to the guest, and I'm able to query the TPM in the 
>> guest using commands like tpm_version, tpm_getpubek, etc.  However, 
>> there are no measurements recorded in 
>> /sys/kernel/security/tpm0/ascii_bios_measurements.  Additionally, 
>> though I can view the PCR list from /sys/class/tpm/tpm0/device/pcrs, 
>> the list contains the same values that I saw when looking at the same 
>> file on my host before enabling TPM passthrough.  So, it appears 
>> measurement is not happening on the guest, and I wanted to check here 
>> to see if that's a limitation of OVMF/TPM passthrough, or if I just 
>> did something incorrectly when modifying the OVMF package.
>>
>> Thanks,
>> David
>>
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel


_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to