xref: /netbsd-src/crypto/external/cpl/trousers/dist/src/include/tss/tddlapi_error.h (revision 2d5f7628c5531eb583b9313ac2fd1cf8582b4479)
1 /*++
2 
3 TDDL error return codes for the TPM Device Driver Library Interface (TDDLI)
4 
5 --*/
6 
7 #ifndef __TDDLAPI_ERROR_H__
8 #define __TDDLAPI_ERROR_H__
9 
10 
11 //
12 // error coding scheme for a Microsoft Windows platform -
13 // refer to the TSS Specification Parts
14 //
15 //  Values are 32 bit values layed out as follows:
16 //
17 //   3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
18 //   1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
19 //  +---+-+-+-----------------------+-------+-----------------------+
20 //  |Lev|C|R|     Facility          | Layer |         Code          |
21 //  +---+-+-+-----------------------+-------+-----------------------+
22 //  | Platform specific coding      | TSS error coding system       |
23 //  +---+-+-+-----------------------+-------+-----------------------+
24 //
25 //      Lev - is the Level code
26 //
27 //          00 - Success
28 //          01 - Informational
29 //          10 - Warning
30 //          11 - Error
31 //
32 //      C - is the Customer code flag  (must actually be set)
33 //
34 //      R - is a reserved bit    (unused)
35 //
36 //      Facility - is the facility code: TCPA: proposal 0x028
37 //
38 //      Code - is the facility's status code
39 //
40 
41 
42 // no macros are used below intentionally
43 // for a better error code recognition by the reader
44 
45 // note that the values of TPM_E_BASE and TSS_E_BASE, TSS_W_BASE and TSS_I_BASE
46 // have to be adjusted for a platform other than Windows
47 
48 //
49 // TPM specific error codes (layer nibble set to TPM layer TSS_LAYER_TPM)
50 //
51 
52 
53 #endif // __TDDLAPI_ERROR_H__
54 
55