blob: ed6fc3d77c902a6040a69f795f19d3f4b622e623 [file] [log] [blame]
Philipp Deppenwiesec07f8fb2018-02-27 19:40:52 +01001/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
4 */
5
6/* TPM error codes.
7 *
8 * Copy-pasted and lightly edited from TCG TPM Main Part 2 TPM Structures
9 * Version 1.2 Level 2 Revision 103 26 October 2006 Draft.
10 */
11
12#ifndef TSS_ERRORS_H_
13#define TSS_ERRORS_H_
14
Elyes HAOUASc4e41932018-11-01 11:29:50 +010015#include <stdint.h>
16
Philipp Deppenwiesec07f8fb2018-02-27 19:40:52 +010017#define TPM_E_BASE 0x0
18#define TPM_E_NON_FATAL 0x800
19
20#define TPM_E_AREA_LOCKED ((uint32_t)0x0000003c)
21#define TPM_E_BADINDEX ((uint32_t)0x00000002)
22#define TPM_E_BAD_PRESENCE ((uint32_t)0x0000002d)
23#define TPM_E_IOERROR ((uint32_t)0x0000001f)
24#define TPM_E_INVALID_POSTINIT ((uint32_t)0x00000026)
25#define TPM_E_MAXNVWRITES ((uint32_t)0x00000048)
26#define TPM_E_OWNER_SET ((uint32_t)0x00000014)
27
28#define TPM_E_NEEDS_SELFTEST ((uint32_t)(TPM_E_NON_FATAL + 1))
29#define TPM_E_DOING_SELFTEST ((uint32_t)(TPM_E_NON_FATAL + 2))
30
31#define TPM_E_ALREADY_INITIALIZED ((uint32_t)0x00005000) /* vboot local */
32#define TPM_E_INTERNAL_INCONSISTENCY ((uint32_t)0x00005001) /* vboot local */
33#define TPM_E_MUST_REBOOT ((uint32_t)0x00005002) /* vboot local */
34#define TPM_E_CORRUPTED_STATE ((uint32_t)0x00005003) /* vboot local */
35#define TPM_E_COMMUNICATION_ERROR ((uint32_t)0x00005004) /* vboot local */
36#define TPM_E_RESPONSE_TOO_LARGE ((uint32_t)0x00005005) /* vboot local */
37#define TPM_E_NO_DEVICE ((uint32_t)0x00005006) /* vboot local */
38#define TPM_E_INPUT_TOO_SMALL ((uint32_t)0x00005007) /* vboot local */
39#define TPM_E_WRITE_FAILURE ((uint32_t)0x00005008) /* vboot local */
40#define TPM_E_READ_EMPTY ((uint32_t)0x00005009) /* vboot local */
41#define TPM_E_READ_FAILURE ((uint32_t)0x0000500a) /* vboot local */
42#define TPM_E_NV_DEFINED ((uint32_t)0x0000500b) /* vboot local */
Werner Zeh30cf14f2018-10-23 07:40:08 +020043#define TPM_E_INVALID_ARG ((uint32_t)0x0000500c)
44#define TPM_E_HASH_ERROR ((uint32_t)0x0000500d)
Keith Shorte0f34002019-02-05 16:15:10 -070045#define TPM_E_NO_SUCH_COMMAND ((uint32_t)0x0000500e)
Philipp Deppenwiesec07f8fb2018-02-27 19:40:52 +010046
47#endif /* TSS_ERRORS_H_ */