xref: /aosp_15_r20/external/vboot_reference/tests/tpm_lite/startup.c (revision 8617a60d3594060b7ecbd21bc622a7c14f3cf2bc)
1*8617a60dSAndroid Build Coastguard Worker /* Copyright 2010 The ChromiumOS Authors
2*8617a60dSAndroid Build Coastguard Worker  * Use of this source code is governed by a BSD-style license that can be
3*8617a60dSAndroid Build Coastguard Worker  * found in the LICENSE file.
4*8617a60dSAndroid Build Coastguard Worker  */
5*8617a60dSAndroid Build Coastguard Worker 
6*8617a60dSAndroid Build Coastguard Worker /* Only perform a TPM_Startup command.
7*8617a60dSAndroid Build Coastguard Worker  */
8*8617a60dSAndroid Build Coastguard Worker 
9*8617a60dSAndroid Build Coastguard Worker #include <stdio.h>
10*8617a60dSAndroid Build Coastguard Worker 
11*8617a60dSAndroid Build Coastguard Worker #include "tlcl.h"
12*8617a60dSAndroid Build Coastguard Worker 
main(int argc,char ** argv)13*8617a60dSAndroid Build Coastguard Worker int main(int argc, char** argv) {
14*8617a60dSAndroid Build Coastguard Worker 	uint32_t result;
15*8617a60dSAndroid Build Coastguard Worker 	TlclLibInit();
16*8617a60dSAndroid Build Coastguard Worker 	result = TlclStartup();
17*8617a60dSAndroid Build Coastguard Worker 	if (result != 0) {
18*8617a60dSAndroid Build Coastguard Worker 		printf("tpm startup failed with %#x\n", result);
19*8617a60dSAndroid Build Coastguard Worker 	}
20*8617a60dSAndroid Build Coastguard Worker 	result = TlclGetFlags(NULL, NULL, NULL);
21*8617a60dSAndroid Build Coastguard Worker 	if (result != 0) {
22*8617a60dSAndroid Build Coastguard Worker 		printf("tpm getflags failed with %#x\n", result);
23*8617a60dSAndroid Build Coastguard Worker 	}
24*8617a60dSAndroid Build Coastguard Worker 	printf("executing SelfTestFull\n");
25*8617a60dSAndroid Build Coastguard Worker 	TlclSelfTestFull();
26*8617a60dSAndroid Build Coastguard Worker 	result = TlclGetFlags(NULL, NULL, NULL);
27*8617a60dSAndroid Build Coastguard Worker 	if (result != 0) {
28*8617a60dSAndroid Build Coastguard Worker 		printf("tpm getflags failed with %#x\n", result);
29*8617a60dSAndroid Build Coastguard Worker 	}
30*8617a60dSAndroid Build Coastguard Worker 	printf("TEST SUCCEEDED\n");
31*8617a60dSAndroid Build Coastguard Worker 	return 0;
32*8617a60dSAndroid Build Coastguard Worker }
33