Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to
https://svn.code.sf.net/p/edk2/code/trunk/edk2/, which are for MinnowBoard MAX open source project. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Wei <david.wei@intel.com> Reviewed-by: Mike Wu <mike.wu@intel.com> Reviewed-by: Hot Tian <hot.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16599 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
141
Vlv2TbltDevicePkg/Include/Protocol/TpmMp.h
Normal file
141
Vlv2TbltDevicePkg/Include/Protocol/TpmMp.h
Normal file
@@ -0,0 +1,141 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
|
||||
The full text of the license may be found at
|
||||
|
||||
http://opensource.org/licenses/bsd-license.php.
|
||||
|
||||
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Module Name:
|
||||
|
||||
Tpm.h
|
||||
|
||||
Abstract:
|
||||
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __EFI_TPM_MP_DRIVER_PROTOCOL_H__
|
||||
#define __EFI_TPM_MP_DRIVER_PROTOCOL_H__
|
||||
|
||||
|
||||
#define EFI_TPM_MP_DRIVER_PROTOCOL_GUID \
|
||||
{ 0xde161cfe, 0x1e60, 0x42a1, 0x8c, 0xc3, 0xee, 0x7e, 0xf0, 0x73, 0x52, 0x12 }
|
||||
|
||||
|
||||
EFI_FORWARD_DECLARATION (EFI_TPM_MP_DRIVER_PROTOCOL);
|
||||
|
||||
#define TPM_DRIVER_STATUS 0
|
||||
#define TPM_DEVICE_STATUS 1
|
||||
|
||||
#define TPM_DRIVER_OK 0
|
||||
#define TPM_DRIVER_FAILED 1
|
||||
#define TPM_DRIVER_NOT_OPENED 2
|
||||
#define TPM_DEVICE_OK 0
|
||||
#define TPM_DEVICE_UNRECOVERABLE 1
|
||||
#define TPM_DEVICE_RECOVERABLE 2
|
||||
#define TPM_DEVICE_NOT_FOUND 3
|
||||
|
||||
//
|
||||
// Prototypes for the TPM MP Driver Protocol
|
||||
//
|
||||
|
||||
/**
|
||||
This service Open the TPM interface
|
||||
|
||||
@param[in] This A pointer to the EFI_TPM_MP_DRIVER_PROTOCOL.
|
||||
|
||||
@retval EFI_SUCCESS Operation completed successfully
|
||||
@retval EFI_DEVICE_ERROR The command was unsuccessful
|
||||
@retval EFI_NOT_FOUND The component was not running
|
||||
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_TPM_MP_INIT) (
|
||||
IN EFI_TPM_MP_DRIVER_PROTOCOL *This
|
||||
);
|
||||
|
||||
/**
|
||||
This service close the TPM interface and deactivate TPM
|
||||
|
||||
@param[in] This A pointer to the EFI_TPM_MP_DRIVER_PROTOCOL.
|
||||
|
||||
@retval EFI_SUCCESS Operation completed successfully
|
||||
@retval EFI_DEVICE_ERROR The command was unsuccessful
|
||||
@retval EFI_NOT_FOUND The component was not running
|
||||
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_TPM_MP_CLOSE) (
|
||||
IN EFI_TPM_MP_DRIVER_PROTOCOL *This
|
||||
);
|
||||
|
||||
/**
|
||||
This service get the current status infomation of TPM
|
||||
|
||||
@param[in] This A pointer to the EFI_TPM_MP_DRIVER_PROTOCOL.
|
||||
@param[in] ReqStatusType Requested type of status information, driver or device.
|
||||
@param[in] Status Pointer to the returned status.
|
||||
|
||||
@retval EFI_SUCCESS Operation completed successfully
|
||||
@retval EFI_DEVICE_ERROR The command was unsuccessful
|
||||
@retval EFI_INVALID_PARAMETER One or more of the parameters are incorrect
|
||||
@retval EFI_BUFFER_TOO_SMALL The receive buffer is too small
|
||||
@retval EFI_NOT_FOUND The component was not running
|
||||
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_TPM_MP_GET_STATUS_INFO) (
|
||||
IN EFI_TPM_MP_DRIVER_PROTOCOL *This,
|
||||
IN UINT32 ReqStatusType,
|
||||
OUT UINT32 *Status
|
||||
);
|
||||
|
||||
/**
|
||||
This service transmit data to the TPM and get response from TPM
|
||||
|
||||
@param[in] This A pointer to the EFI_TPM_MP_DRIVER_PROTOCOL.
|
||||
@param[in] TransmitBuf Pointer to a buffer containing TPM transmit data.
|
||||
@param[in] TransmitBufLen Sizeof TPM input buffer in bytes.
|
||||
@param[in] ReceiveBuf Pointer to a buffer containing TPM receive data.
|
||||
@param[in] ReceiveBufLen On input, size of TPM receive buffer in bytes.
|
||||
On output, number of bytes written.
|
||||
|
||||
@retval EFI_SUCCESS Operation completed successfully
|
||||
@retval EFI_DEVICE_ERROR The command was unsuccessful
|
||||
@retval EFI_INVALID_PARAMETER One or more of the parameters are incorrect
|
||||
@retval EFI_BUFFER_TOO_SMALL The receive buffer is too small
|
||||
@retval EFI_NOT_FOUND The component was not running
|
||||
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_TPM_MP_TRANSMIT) (
|
||||
IN EFI_TPM_MP_DRIVER_PROTOCOL *This,
|
||||
IN UINT8 *TransmitBuffer,
|
||||
IN UINT32 TransmitBufferLen,
|
||||
OUT UINT8 *ReceiveBuf,
|
||||
IN OUT UINT32 *ReceiveBufLen
|
||||
);
|
||||
|
||||
|
||||
|
||||
typedef struct _EFI_TPM_MP_DRIVER_PROTOCOL {
|
Reference in New Issue
Block a user