diff options
author | Jeevan Shriram <jshriram@codeaurora.org> | 2016-08-17 13:29:41 -0700 |
---|---|---|
committer | Jeevan Shriram <jshriram@codeaurora.org> | 2016-08-19 09:40:41 -0700 |
commit | 04aad79595bbf13a3d8ebba11d8059443ce1ad97 (patch) | |
tree | ed791642177fa3e847663a67b0828c8175d2b361 | |
parent | 411f7f0f09a0b19d838e6ec7fce7dc4f6a88e88d (diff) |
QcomModulePkg: Update verified boot Protocol header
Update the protocol header for Verifid Boot which is used for
authentication of images.
CRs-Fixed: 1042118
Change-Id: I32762e15408052d3b1e16b14097b10b358f92dc2
-rw-r--r-- | QcomModulePkg/Include/Protocol/EFIVerifiedBoot.h | 38 | ||||
-rw-r--r-- | QcomModulePkg/Library/BootLib/BootLib.inf | 1 | ||||
-rw-r--r-- | QcomModulePkg/QcomModulePkg.dec | 3 |
3 files changed, 40 insertions, 2 deletions
diff --git a/QcomModulePkg/Include/Protocol/EFIVerifiedBoot.h b/QcomModulePkg/Include/Protocol/EFIVerifiedBoot.h index 5de8f3d162..afd8e6af9b 100644 --- a/QcomModulePkg/Include/Protocol/EFIVerifiedBoot.h +++ b/QcomModulePkg/Include/Protocol/EFIVerifiedBoot.h @@ -43,6 +43,8 @@ */ #define QCOM_VERIFIEDBOOT_PROTOCOL_REVISION 0x0000000000010001 #define MAX_PNAME_LENGTH 32 +#define MAX_VERSION_LEN 64 + /* Protocol GUID definition */ /** @ingroup efi_verifiedboot_protocol */ #define EFI_VERIFIEDBOOT_PROTOCOL_GUID \ @@ -52,7 +54,7 @@ EXTERNAL VARIABLES ===========================================================================*/ /** @ingroup */ -extern EFI_GUID gQcomVerifiedBootProtocolGuid; +extern EFI_GUID gEfiQcomVerifiedBootProtocolGuid; /*=========================================================================== TYPE DEFINITIONS @@ -122,7 +124,6 @@ typedef struct _device_info_vb_t * Secure app. Always greater than zero. * Failure: Error code (negative only). */ -//Make this single buf typedef EFI_STATUS @@ -155,6 +156,37 @@ EFI_STATUS ); /** +* Send Milestone to TZ +* API will send end milestone command to TZ +* @return int +* Status: +* 0 - Success +* Negative value indicates failure. +*/ +typedef +EFI_STATUS +(EFIAPI *QCOM_VB_SEND_MILESTONE ) +( + IN QCOM_VERIFIEDBOOT_PROTOCOL *This +); + +/** +* Return if the device is secure or not +* API will set the State flag to indicate if its a secure device +* @return int +* Status: +* 0 - Success +* Negative value indicates failure. +*/ +typedef +EFI_STATUS +(EFIAPI *QCOM_VB_IS_DEVICE_SECURE ) +( + IN QCOM_VERIFIEDBOOT_PROTOCOL *This, + OUT BOOLEAN State +); + +/** * Send ROT to Keymaster * API will construct the ROT payload and provide * it to Keymaster TA @@ -230,8 +262,10 @@ struct _QCOM_VERIFIEDBOOT_PROTOCOL { QCOM_VB_RW_DEVICE_STATE VBRwDeviceState; QCOM_VB_DEVICE_INIT VBDeviceInit; QCOM_VB_SEND_ROT VBSendRot; + QCOM_VB_SEND_MILESTONE VBSendMilestone; QCOM_VB_VERIFY_IMAGE VBVerifyImage; QCOM_VB_RESET_STATE VBDeviceResetState; + QCOM_VB_IS_DEVICE_SECURE VBIsDeviceSecure; }; #endif /* __EFIVERIFIEDBOOT_H__ */ diff --git a/QcomModulePkg/Library/BootLib/BootLib.inf b/QcomModulePkg/Library/BootLib/BootLib.inf index 881655f175..eedb15adf3 100644 --- a/QcomModulePkg/Library/BootLib/BootLib.inf +++ b/QcomModulePkg/Library/BootLib/BootLib.inf @@ -120,6 +120,7 @@ gQcomPmicPonProtocolGuid gQcomChargerExProtocolGuid gEfiLimitsProtocolGuid + gEfiQcomVerifiedBootProtocolGuid [FixedPcd] gArmTokenSpaceGuid.PcdSystemMemoryBase diff --git a/QcomModulePkg/QcomModulePkg.dec b/QcomModulePkg/QcomModulePkg.dec index e95b00aab6..e44838f268 100644 --- a/QcomModulePkg/QcomModulePkg.dec +++ b/QcomModulePkg/QcomModulePkg.dec @@ -105,6 +105,9 @@ gQcomPmicPonProtocolGuid = { 0x97044b58, 0xfea4, 0x4ad0, { 0x9d, 0xb, 0xe4, 0x17, 0xd6, 0xf, 0x11, 0xa1 }} # Throttle limit Protocol gEfiLimitsProtocolGuid = { 0x79d6c879, 0x725e, 0x489e, { 0xa0, 0xa9, 0x27, 0xef, 0xa5, 0xdf, 0xcb, 0x35 } } + # VerifiedBoot Protocol + gEfiQcomVerifiedBootProtocolGuid = { 0x8e5eff91, 0x21b6, 0x47d3, { 0xaf, 0x2b, 0xc1, 0x5a, 0x1, 0xe0, 0x20, 0xec } } + [PcdsFixedAtBuild.common] # LinuxLoaderCommon gQcomTokenSpaceGuid.KernelLoadAddress|0x00080000|UINT32|0x00015000 |