1 /*
2  * Copyright 2018-2021 NXP
3  * All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 #ifndef FSL_SSCP_CONFIG_ELEMU_H
8 #define FSL_SSCP_CONFIG_ELEMU_H
9 
10 #define SSCP_COMMAND_ENUM_ALT
11 typedef uint8_t sscp_command_t;
12 #define kSSCP_CMD_SSS_OpenSession                  ((sscp_command_t)0x13)
13 #define kSSCP_CMD_SSS_CloseSession                 ((sscp_command_t)0x14)
14 #define kSSCP_CMD_SSS_Ping                         ((sscp_command_t)0x11)
15 #define kSSCP_CMD_SSS_ContextFree                  ((sscp_command_t)0x15)
16 #define kSSCP_CMD_SSS_SymmetricContextInit         ((sscp_command_t)0x25)
17 #define kSSCP_CMD_SSS_SymmetricCipherOneGo         ((sscp_command_t)0x23)
18 #define kSSCP_CMD_SSS_SymmetricCipherInit          ((sscp_command_t)0x22)
19 #define kSSCP_CMD_SSS_SymmetricCipherUpdate        ((sscp_command_t)0x24)
20 #define kSSCP_CMD_SSS_SymmetricCipherFinish        ((sscp_command_t)0x21)
21 #define kSSCP_CMD_SSS_SymmetricCryptCtr            ((sscp_command_t)0x20)
22 #define kSSCP_CMD_SSS_AeadContextInit              ((sscp_command_t)0x26)
23 #define kSSCP_CMD_SSS_AeadOneGo                    ((sscp_command_t)0x29)
24 #define kSSCP_CMD_SSS_AeadInit                     ((sscp_command_t)0x28)
25 #define kSSCP_CMD_SSS_AeadUpdateAead               ((sscp_command_t)0x2b)
26 #define kSSCP_CMD_SSS_AeadUpdate                   ((sscp_command_t)0x2a)
27 #define kSSCP_CMD_SSS_AeadFinish                   ((sscp_command_t)0x27)
28 #define kSSCP_CMD_SSS_DigestContextInit            ((sscp_command_t)0x2c)
29 #define kSSCP_CMD_SSS_DigestOneGo                  ((sscp_command_t)0x2f)
30 #define kSSCP_CMD_SSS_DigestInit                   ((sscp_command_t)0x2e)
31 #define kSSCP_CMD_SSS_DigestUpdate                 ((sscp_command_t)0x30)
32 #define kSSCP_CMD_SSS_DigestFinish                 ((sscp_command_t)0x2d)
33 #define kSSCP_CMD_SSS_MacContextInit               ((sscp_command_t)0x32)
34 #define kSSCP_CMD_SSS_MacOneGo                     ((sscp_command_t)0x35)
35 #define kSSCP_CMD_SSS_MacInit                      ((sscp_command_t)0x34)
36 #define kSSCP_CMD_SSS_MacUpdate                    ((sscp_command_t)0x36)
37 #define kSSCP_CMD_SSS_MacFinish                    ((sscp_command_t)0x33)
38 #define kSSCP_CMD_SSS_AsymetricContextInit         ((sscp_command_t)0x37)
39 #define kSSCP_CMD_SSS_AsymmetricEncrypt            ((sscp_command_t)0x39)
40 #define kSSCP_CMD_SSS_AsymmetricDecrypt            ((sscp_command_t)0x38)
41 #define kSSCP_CMD_SSS_AsymmetricSignDigest         ((sscp_command_t)0x3a)
42 #define kSSCP_CMD_SSS_AsymmetricVerifyDigest       ((sscp_command_t)0x3b)
43 #define kSSCP_CMD_SSS_TunnelContextInit            ((sscp_command_t)0x3d)
44 #define kSSCP_CMD_SSS_Tunnel                       ((sscp_command_t)0x3e)
45 #define kSSCP_CMD_SSS_DeriveKeyContextInit         ((sscp_command_t)0x40)
46 #define kSSCP_CMD_SSS_DeriveKey                    ((sscp_command_t)0x3f)
47 #define kSSCP_CMD_SSS_AsymmetricDeriveKey          ((sscp_command_t)0x3c)
48 #define kSSCP_CMD_SSS_KeyObjectContextInit         ((sscp_command_t)0x41)
49 #define kSSCP_CMD_SSS_KeyObjectAllocateHandle      ((sscp_command_t)0x42)
50 #define kSSCP_CMD_SSS_KeyObjectGetHandle           ((sscp_command_t)0x43)
51 #define kSSCP_CMD_SSS_KeyObjectSetProperties       ((sscp_command_t)0x44)
52 #define kSSCP_CMD_SSS_KeyObjectGetProperties       ((sscp_command_t)0x45)
53 #define kSSCP_CMD_SSS_KeyObjectContextFree         ((sscp_command_t)0x47)
54 #define kSSCP_CMD_SSS_KeyStoreContextInit          ((sscp_command_t)0x49)
55 #define kSSCP_CMD_SSS_KeyStoreContextFree          ((sscp_command_t)0x76)
56 #define kSSCP_CMD_SSS_KeyStoreAllocate             ((sscp_command_t)0x48)
57 #define kSSCP_CMD_SSS_KeyStoreSave                 ((sscp_command_t)0x4a)
58 #define kSSCP_CMD_SSS_KeyStoreLoad                 ((sscp_command_t)0x4b)
59 #define kSSCP_CMD_SSS_KeyStoreSetKey               ((sscp_command_t)0x4c)
60 #define kSSCP_CMD_SSS_KeyStoreGenerateKey          ((sscp_command_t)0x4d)
61 #define kSSCP_CMD_SSS_KeyStoreGetKey               ((sscp_command_t)0x4e)
62 #define kSSCP_CMD_SSS_KeyStoreOpenKey              ((sscp_command_t)0x4f)
63 #define kSSCP_CMD_SSS_KeyStoreFreezeKey            ((sscp_command_t)0x50)
64 #define kSSCP_CMD_SSS_KeyStoreEraseKey             ((sscp_command_t)0x51)
65 #define kSSCP_CMD_SSS_KeyStoreGetProperty          ((sscp_command_t)0x77)
66 #define KSSCP_CMD_SSS_RngGet                       ((sscp_command_t)0x73)
67 #define kSSCP_CMD_SSS_MGMT_ContextInit             ((sscp_command_t)0x65)
68 #define kSSCP_CMD_SSS_MGMT_FuseRead                ((sscp_command_t)0x68)
69 #define kSSCP_CMD_SSS_MGMT_FuseShadowRegisterRead  ((sscp_command_t)0x6a)
70 #define kSSCP_CMD_SSS_MGMT_FuseProgram             ((sscp_command_t)0x67)
71 #define kSSCP_CMD_SSS_MGMT_PropertyGet             ((sscp_command_t)0x6c)
72 #define kSSCP_CMD_SSS_MGMT_LifeCycleGet            ((sscp_command_t)0x6b)
73 #define kSSCP_CMD_SSS_MGMT_PropertySet             ((sscp_command_t)0x71)
74 #define kSSCP_CMD_SSS_MGMT_AdvanceLifecycle        ((sscp_command_t)0x60)
75 #define kSSCP_CMD_SSS_MGMT_SecretImport            ((sscp_command_t)0x6e)
76 #define kSSCP_CMD_SSS_MGMT_SecretExport            ((sscp_command_t)0x66)
77 #define kSSCP_CMD_SSS_MGMT_Attest                  ((sscp_command_t)0x61)
78 #define kSSCP_CMD_SSS_MGMT_SecretBlobLoad          ((sscp_command_t)0x64)
79 #define kSSCP_CMD_SSS_MGMT_SecretBlobExport        ((sscp_command_t)0x62)
80 #define kSSCP_CMD_SSS_MGMT_SecretBlobImport        ((sscp_command_t)0x63)
81 #define kSSCP_CMD_SSS_MGMT_SoftwareVersionGet      ((sscp_command_t)0x6d)
82 #define kSSCP_CMD_SSS_MGMT_ReturnFaSet             ((sscp_command_t)0x72)
83 #define kSSCP_CMD_SSS_MGMT_HostAccessPermissionSet ((sscp_command_t)0x70)
84 #define kSSCP_CMD_SSS_MGMT_IntegrityCheckEnable    ((sscp_command_t)0x6f)
85 #define kSSCP_CMD_SSS_MGMT_ClearAllKeys            ((sscp_command_t)0x74)
86 #define kSSCP_CMD_SSS_KeyStoreImportKey            ((sscp_command_t)0x78)
87 #define kSSCP_CMD_SSS_KeyStoreExportKey            ((sscp_command_t)0x79)
88 /* kSSCP_CMD_SSS_KeyStoreEraseAll command ID have to be updated once value will be defined in elke specification */
89 #define kSSCP_CMD_SSS_KeyStoreEraseAll ((sscp_command_t)0xff)
90 
91 #define SSCP_PARAMCONTEXTTYPE_ENUM_ALT
92 /*! @brief SSCP ParamContextType list */
93 #define kSSCP_ParamContextType_SSS_Session    (0x1u)
94 #define kSSCP_ParamContextType_SSS_Symmetric  (0x2u)
95 #define kSSCP_ParamContextType_SSS_Aead       (0x3u)
96 #define kSSCP_ParamContextType_SSS_Digest     (0x4u)
97 #define kSSCP_ParamContextType_SSS_Mac        (0x5u)
98 #define kSSCP_ParamContextType_SSS_Asymmetric (0x6u)
99 #define kSSCP_ParamContextType_SSS_Tunnel     (0x7u)
100 #define kSSCP_ParamContextType_SSS_DeriveKey  (0x8u)
101 #define kSSCP_ParamContextType_SSS_Object     (0x9u)
102 #define kSSCP_ParamContextType_SSS_KeyStore   (0xau)
103 /*#define kSSCP_ParamContextType_SSS_KeyStoreCtx (0xbu)*/
104 #define kSSCP_ParamContextType_SSS_Mgmt (0xcu)
105 #define kSSCP_ParamContextType_SSS_Rng  (0xdu)
106 
107 #endif /* FSL_SSCP_CONFIG_ELEMU */
108