summaryrefslogtreecommitdiff
path: root/Core/EM/TCG2/TisLib/TpmLib.h
blob: 1e98660baa6064c79723a9f6b79fe99749505831 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
/*++

   Copyright (c) 2005 Intel Corporation. All rights reserved
   This software and associated documentation (if any) is furnished
   under a license and may only be used or copied in accordance
   with the terms of the license. Except as permitted by such
   license, no part of this software or documentation may be
   reproduced, stored in a retrieval system, or transmitted in any
   form or by any means without the express written consent of
   Intel Corporation.


   Module Name:

   TpmLib.h

   Abstract:

   Header file for tpm device drivers

   --*/
//*************************************************************************
// $Header: /Alaska/SOURCE/Modules/TCG2/Libraries/TisLib/TpmLib.h 1     4/21/14 2:14p Fredericko $
//
// $Revision: 1 $
//
// $Date: 4/21/14 2:14p $
//*************************************************************************
// Revision History
// ----------------
// $Log: /Alaska/SOURCE/Modules/TCG2/Libraries/TisLib/TpmLib.h $
// 
// 1     4/21/14 2:14p Fredericko
// 
// 1     10/08/13 11:58a Fredericko
// Initial Check-In for Tpm-Next module
// 
// 1     7/10/13 5:50p Fredericko
// [TAG]  		EIP120969
// [Category]  	New Feature
// [Description]  	TCG (TPM20)
// [Files]  		TisLib.cif
// TisLib.mak
// TcgTpm12.h
// TpmLib.h
// TcgCommon.h
// ZTEICTcmOrdinals.h
// TpmLib.c
// TcgCommon.c
// TisLib.sdl
// sha1.h
// INTTcgAcpi.h
// TcgPc.h
// TcmPc.h
// TcgEfiTpm.h
// TcgEFI12.h
// 
// 3     5/19/10 5:11p Fredericko
// Included File Header
// Included File Revision History 
// EIP 37653
//
//*************************************************************************
//*************************************************************************
//<AMI_FHDR_START>
//
// Name:  TpmLib.c
//
// Description: 
//  Header file for TpmLib.c
//
//<AMI_FHDR_END>
//*************************************************************************

#ifndef _TPMLIB_H_
#define _TPMLIB_H_

#include "TcgPc.h"

#define TisCompleteCommand          TisPrepareSendCommand

extern
EFI_STATUS
__stdcall TisRequestLocality (
    IN TPM_1_2_REGISTERS_PTR TpmReg );

extern
EFI_STATUS
__stdcall TisReleaseLocality (
    IN TPM_1_2_REGISTERS_PTR TpmReg );

extern
EFI_STATUS
__stdcall TisPrepareSendCommand (
    IN TPM_1_2_REGISTERS_PTR TpmReg );

extern
EFI_STATUS
__stdcall TisSendCommand (
    IN TPM_1_2_REGISTERS_PTR TpmReg,
    IN const VOID            *CmdStream,
    IN UINTN                 Size,
    IN BOOLEAN               Last );

extern
EFI_STATUS
__stdcall TisWaitForResponse (
    IN TPM_1_2_REGISTERS_PTR TpmReg );

extern
EFI_STATUS
__stdcall TisReceiveResponse (
    IN TPM_1_2_REGISTERS_PTR TpmReg,
    OUT VOID                 *Buffer,
    OUT UINTN                *Size );

extern
EFI_STATUS
__stdcall IsTpmPresent (
    IN TPM_1_2_REGISTERS_PTR TpmReg );

extern
EFI_STATUS
__stdcall TpmLibPassThrough (
    IN TPM_1_2_REGISTERS_PTR   TpmReg,
    IN UINTN                   NoInputBuffers,
    IN TPM_TRANSMIT_BUFFER     *InputBuffers,
    IN UINTN                   NoOutputBuffers,
    IN OUT TPM_TRANSMIT_BUFFER *OutputBuffers );

extern
EFI_STATUS
__stdcall TpmLibStartup (
    IN UINT16 StartupType );

#endif