Chen A Chen
f4c8c1bbf1
SecurityPkg: Remove dead code and inf redundant definitions.
...
Fix BZ1065, https://bugzilla.tianocore.org/show_bug.cgi?id=1065 .
Remove dead code and inf redundant definitions from SecurityPkg.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chen A Chen <chen.a.chen@intel.com >
Cc: Zhang Chao B <chao.b.zhang@intel.com >
Reviewed-by: Zhang Chao B <chao.b.zhang@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com >
2018-12-10 15:56:32 +08:00
Zhang, Chao B
3cc9af5ce3
SecurityPkg: Update TCG PFP spec revision.
...
UEFI TCG has aligned with TCG PFP 1.03 v51 along with Errata Version 1.0.
Update spec version accordingly.
Spec Link:
https://trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v51.pdf
https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-Firmware-Profile-for-TPM-2-0-v1p03_r51-errata-v1p0_170426.pdf
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhang, Chao B <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2018-11-21 10:06:36 +08:00
Zhang, Chao B
831bb137a8
SecurityPkg: TcgSmm: Handle invalid parameter in MOR SMI handler
...
Add more logic to filter invalid function parameter in MOR Control SMI handler
Cc: Long Qin <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2018-07-21 09:46:49 +08:00
Zhang, Chao B
60ee3bd8db
SecurityPkg:Tcg: Fix comment typos
...
"Triggle" is a typo. Replace it with "Trigger"
Cc: Long Qin <qin.long@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2018-07-17 07:47:04 +08:00
Liming Gao
b3548d32dd
SecurityPkg: Clean up source files
...
1. Do not use tab characters
2. No trailing white space in one line
3. All files must end with CRLF
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com >
2018-06-28 11:19:50 +08:00
Zhang, Chao B
f15cb995bb
SecurityPkg: Cache TPM interface type info
...
Cache TPM interface type info to avoid excessive interface ID register read
Cc: Long Qin <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2018-06-25 10:55:08 +08:00
Zhang, Chao B
6c7ac681f4
SecurityPkg/Tcg2Smm: Correct function parameter attribute
...
Correct UpdatePossibleResource parameter attribute to align to comment
Change-Id: Id8f8be975f0e8666573decc3fbaaf326b7767ba8
Contributed-under: TianoCore Contribution Agreement 1.1
Cc: Long Qin <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
Signed-off-by: Zhang, Chao B <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2018-05-29 13:37:33 +08:00
Zhang, Chao B
1ea08a3dcd
SecurityPkg:Tcg2Smm: Update TcgNvs info after memory is allocated
...
Update package format info in _PRS to TcgNvs after memory is allocated.
Change-Id: Icfadb350e60d3ed2df332e92c257ce13309c0018
Contributed-under: TianoCore Contribution Agreement 1.1
Cc: Yao Jiewen <jiewen.yao@intel.com >
Cc: Long Qin <qin.long@intel.com >
Signed-off-by: Zhang, Chao B <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2018-05-22 08:48:56 +08:00
Zhang, Chao B
28fd7b090d
SecurityPkg: Tcg2Smm: Refine type cast in pointer abstraction
...
Pointer subtraction is not performed by pointers to elements of the same
array object. Such behavior is undefined by C11 standard and might lead to
potential issues, Refine pointer subtraction by first casting each pointer
to UINTN.
Cc: Hao Wu <hao.a.wu@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Hao Wu <hao.a.wu@intel.com >
2018-02-08 16:09:33 +08:00
Zhang, Chao B
449083a3f8
SecurityPkg:Tcg2Smm: Fix compile issue
...
Update Tcg2Smm _PRS patching logic to fix compile issue
Cc: Liming Gao <liming.gao@intel.com >
Cc: Dandan Bi <dandan.bi@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
2018-02-07 09:03:59 +08:00
Zhang, Chao B
c4122dcaad
SecurityPkg: Tcg2Smm: Enable TPM2.0 interrupt support
...
1. Expose _CRS, _SRS, _PRS control method to support TPM interrupt
2. Provide 2 PCDs to configure _CRS and _PRS returned data
Cc: Yao Jiewen <jiewen.yao@intel.com >
Cc: Ronald Aigner <Ronald.Aigner@microsoft.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2018-01-29 15:09:23 +08:00
Zhang, Chao B
73d777329f
SecurityPkg:Tcg2Smm: Update Interrupt resource name
...
Update TPM interrupt resource descriptor name for better compatibility to
old ASL compiler.
Cc: Long Qin <qin.long@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2017-12-12 22:12:18 +08:00
Zhang, Chao B
af9743ef44
SecurityPkg:Tcg2Smm: Add MSFT copyright
...
Add MSFT copyright for TPM SIRQ feature.
Cc: Long Qin <qin.long@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2017-12-12 15:03:39 +08:00
Zhang, Chao B
edf7647bae
SecurityPkg:Tcg2Smm:Enabling TPM SIRQ interrupt support
...
1. Report TPM SIRQ interrupt resource through _CRS
2. Expose _SRS to update interrupt resource & FIFO/TIS interrupt related registers
defined in TCG PC Client Platform TPM Profile (PTP) Specification spec
https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2-0-v43-150126.pdf
Note: IHV/OEM need to carefully verify this feature with OS TPM driver to make sure there is no impact to system/HW
Cc: Long Qin <qin.long@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2017-12-09 13:17:26 +08:00
Zhang, Chao B
6d92ae11d1
SecurityPkg: Add TCG Spec info to TCG related modules
...
Add TCG Spec compliance info to TCG related module INFs.
Cc: Qin Long <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Qin Long <qin.long@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-05-11 16:20:05 +08:00
Star Zeng
5af4388433
Security Tcg2Smm: Add missing gEfiTcg2ProtocolGuid dependency
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=380
gEfiTcgProtocolGuid dependency was added in TcgSmm.
But gEfiTcg2ProtocolGuid dependency is missing in Tcg2Smm.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Chao Zhang <chao.b.zhang@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2017-02-21 08:54:58 +08:00
Zhang, Chao B
bf3b7aae71
SecuritPkg: Tcg2Smm: Add PlatformClass to TPM2 Table
...
Add PlatformClass info into TPM2 ACPI table, it is only valid with table
Rev 4 and later.
Cc: Star Zeng <star.zeng@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-12 12:28:52 +08:00
Zhang, Chao B
0772737347
SecurityPkg: Tcg2Smm: Fix incompatible change
...
Address incompatible change introduced in patch
8f07a374b1
Cc: Star Zeng <star.zeng@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-11 16:25:03 +08:00
Zhang, Chao B
363dc42226
SecurityPkg: Tcg2ConfigDxe/Tcg2Smm: Fix TPM2 HID issue
...
Fix wrong TPM2 HID generation logic.
Cc: Star Zeng <star.zeng@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-10 15:16:46 +08:00
Zhang, Chao B
fca4228907
SecurityPkg: Tcg2Config: TPM2 ACPI Table Rev Option
...
Add TPM2 ACPI Table Rev Option in Tcg2Config UI. Rev 4 is defined in
TCG ACPI Specification 00.37
Cc: Star Zeng <star.zeng@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-10 14:18:42 +08:00
Star Zeng
dd6d0a520e
SecurityPkg Tcg2ConfigDxe: Add setup option to configure PPI version
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=288
gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer was
introduced to configure physical presence interface version. but test
or user needs to build different images to support different versions
separately as the PCD does not support Dynamic types.
This patch is to extend the PCD to support Dynamic types and add a
setup option in Tcg2ConfigDxe driver to configure the physical
presence interface version, the PCD needs to be DynamicHii type and
maps to the setup option.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Chao Zhang <chao.b.zhang@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
2017-01-06 18:06:37 +08:00
Zhang, Chao B
3304abc101
SecuritPkg: Tcg2: Fix coding style issue
...
Fix coding style issue
Cc: Bi Dandan <dandan.bi@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Bi Dandan <dandan.bi@intel.com >
2017-01-05 10:47:03 +08:00
Zhang, Chao B
a6e0e994d0
SecurityPkg: Tcg2ConfigDxe: Display TPM2 HID in Tcg2Config
...
Display TPM2 HID from TPM2 ACPI device object in Tcg2Config UI
Cc: Long Qin <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-05 09:30:15 +08:00
Zhang, Chao B
9a9fa14e5c
SecurityPkg: Tcg2Smm: Update HID patch logic
...
Update HID patch logic. NOOP in ASL template may cause syntax error when
disassembled and recompiled.
Cc: Long Qin <qin.long@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2017-01-04 13:18:50 +08:00
Zhang, Chao B
73126ac2bd
SecurityPkg: Tcg2Smm: TPM2 Vendor specific HID
...
Update TPM2 HID using vendor ManufacturerID & FirmwareVersion1.
Cc: Yao Jiewen <jiewen.yao@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
2016-12-29 09:45:13 +08:00
Zhang, Chao B
edb0fda25e
SecurityPkg: Tcg2: Fix TCG2 PP issues
...
Several issues exist in TCG2 PP
1. TCG2 PP use NVS PPRQ/PPRM as PP parameter as well as current
PP state cache. But it doesn't handle PP set failure case
2. TCG2 PP Submit TPM Operation Request to Pre-OS Environment forgets
to clean PPRM
3. Potential alignment issue
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Qin Long <qin.long@intel.com >
2016-09-29 10:30:30 +08:00
Zhang, Chao B
053f31e3d0
SecurityPkg: Tcg: New field for User Confirmation Status
...
Add a new field in TcgNVS for PP operation user confirmation status,
instead of previous logic overriding Request. Previous logic causes
Get Pending TPM Operation Requested sub function return wrong value.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2016-09-27 09:01:06 +08:00
Zhang, Chao B
0c687d02c7
SecurityPkg: Tcg2Smm: Fix type casting issue
...
Fix type casting issue introduced by cd64301398
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Gao Liming <liming.gao@intel.com >
2016-06-16 14:31:07 +08:00
Zhang, Chao B
3b5624b014
SecurityPkg: Tcg2Smm: Enhance TIS interface detection
...
TCG PC Client PTP spec defines that if InterfaceType is defined as TIS1.3. All the other fields of the FIFO Interface Identifier Register are skipped.
http://www.trustedcomputinggroup.org/pc-client-specific-platform-tpm-profile-for-tpm-2-0-v43-150126/
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Long Qin <qin.long@intel.com >
2016-06-12 21:15:53 +08:00
Zhang, Chao B
cd64301398
SecurityPkg: Tcg2Smm: Make TCG2 PP version configurable
...
Make TCG2 PP version configurable to meet different request. Current default version is 1.3.
http://www.trustedcomputinggroup.org/physical-presence-interface_1-30_0-52/
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
2016-06-12 09:22:38 +08:00
Zhang, Chao B
447f73dbfe
SecurityPkg: Tcg2Smm: Change TPM2.0 MMIO range attribute
...
Change TPM2.0 MMIO resource attribute to ReadWrite according to TCG PC Client Platform Firmware Profile Spec.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Anbazhagan Baraneedharan <anbazhagan@hp.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
2016-02-29 09:37:13 +08:00
Yao, Jiewen
d967d6d96f
SecurityPkg: Add TPM PTP support in TCG2 SMM.
...
TPM2 hardware may support PTP FIFO/TIS interface
or PTP CRB interface. The original ACPI table only
handles PTP FIFO/TIS interface. This patch adds
PTP CRB interface support.
The current logic is that SMM driver will runtime
detect TPM device interface (CRB or FIFO/TIS) and
publish TPM2 table based on result.
It is compatible for old TPM2 FIFO/TIS device and
new TPM2 CRB device.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com >
Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19741 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-26 01:30:17 +00:00
Yao, Jiewen
0179180d6d
SecurityPkg: Update TCG PPI "1.3" for TCG2.
...
The Tcg2Smm follows TCG PPI 1.3 specification.
This patch updates the ASL code string to 1.3.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: "Yao, Jiewen" <jiewen.yao@intel.com >
Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19733 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-22 06:30:08 +00:00
Jordan Justen
e080218b9c
SecurityPkg: Convert all .uni files to utf-8
...
To convert these files I ran:
$ python3 BaseTools/Scripts/ConvertUni.py SecurityPkg
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19262 6f19259b-4bc3-4df7-8a09-765794883524
2015-12-15 04:58:32 +00:00
Yao, Jiewen
1abfa4ce48
Add TPM2 support defined in trusted computing group.
...
TCG EFI Protocol Specification for TPM Family 2.0 Revision 1.0 Version 9 at http://www.trustedcomputinggroup.org/resources/tcg_efi_protocol_specification
TCG Physical Presence Interface Specification Version 1.30, Revision 00.52 at http://www.trustedcomputinggroup.org/resources/tcg_physical_presence_interface_specification
Add Tcg2XXX, similar file/directory as TrEEXXX. Old TrEE driver/library can be deprecated.
1) Add Tcg2Pei/Dxe/Smm driver to log event and provide services.
2) Add Dxe/Pei/SmmTcg2PhysicalPresenceLib to support TCG PP.
3) Update Tpm2 library to use TCG2 protocol instead of TrEE protocol.
Test Win8/Win10 with SecureBoot enabled, PCR7 shows bound.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: "Yao, Jiewen" <Jiewen.Yao@intel.com >
Reviewed-by: "Zhang, Chao B" <chao.b.zhang@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18219 6f19259b-4bc3-4df7-8a09-765794883524
2015-08-13 08:24:17 +00:00