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