EFM32 Giant Gecko Software Documentation  efm32gg-doc-5.1.2
efm32gg_aes.h
Go to the documentation of this file.
1 /**************************************************************************/
32 /**************************************************************************/
36 /**************************************************************************/
41 typedef struct
42 {
43  __IOM uint32_t CTRL;
44  __IOM uint32_t CMD;
45  __IM uint32_t STATUS;
46  __IOM uint32_t IEN;
47  __IM uint32_t IF;
48  __IOM uint32_t IFS;
49  __IOM uint32_t IFC;
50  __IOM uint32_t DATA;
51  __IOM uint32_t XORDATA;
52  uint32_t RESERVED0[3];
53  __IOM uint32_t KEYLA;
54  __IOM uint32_t KEYLB;
55  __IOM uint32_t KEYLC;
56  __IOM uint32_t KEYLD;
57  __IOM uint32_t KEYHA;
58  __IOM uint32_t KEYHB;
59  __IOM uint32_t KEYHC;
60  __IOM uint32_t KEYHD;
61 } AES_TypeDef;
63 /**************************************************************************/
68 /* Bit fields for AES CTRL */
69 #define _AES_CTRL_RESETVALUE 0x00000000UL
70 #define _AES_CTRL_MASK 0x00000077UL
71 #define AES_CTRL_DECRYPT (0x1UL << 0)
72 #define _AES_CTRL_DECRYPT_SHIFT 0
73 #define _AES_CTRL_DECRYPT_MASK 0x1UL
74 #define _AES_CTRL_DECRYPT_DEFAULT 0x00000000UL
75 #define AES_CTRL_DECRYPT_DEFAULT (_AES_CTRL_DECRYPT_DEFAULT << 0)
76 #define AES_CTRL_AES256 (0x1UL << 1)
77 #define _AES_CTRL_AES256_SHIFT 1
78 #define _AES_CTRL_AES256_MASK 0x2UL
79 #define _AES_CTRL_AES256_DEFAULT 0x00000000UL
80 #define AES_CTRL_AES256_DEFAULT (_AES_CTRL_AES256_DEFAULT << 1)
81 #define AES_CTRL_KEYBUFEN (0x1UL << 2)
82 #define _AES_CTRL_KEYBUFEN_SHIFT 2
83 #define _AES_CTRL_KEYBUFEN_MASK 0x4UL
84 #define _AES_CTRL_KEYBUFEN_DEFAULT 0x00000000UL
85 #define AES_CTRL_KEYBUFEN_DEFAULT (_AES_CTRL_KEYBUFEN_DEFAULT << 2)
86 #define AES_CTRL_DATASTART (0x1UL << 4)
87 #define _AES_CTRL_DATASTART_SHIFT 4
88 #define _AES_CTRL_DATASTART_MASK 0x10UL
89 #define _AES_CTRL_DATASTART_DEFAULT 0x00000000UL
90 #define AES_CTRL_DATASTART_DEFAULT (_AES_CTRL_DATASTART_DEFAULT << 4)
91 #define AES_CTRL_XORSTART (0x1UL << 5)
92 #define _AES_CTRL_XORSTART_SHIFT 5
93 #define _AES_CTRL_XORSTART_MASK 0x20UL
94 #define _AES_CTRL_XORSTART_DEFAULT 0x00000000UL
95 #define AES_CTRL_XORSTART_DEFAULT (_AES_CTRL_XORSTART_DEFAULT << 5)
96 #define AES_CTRL_BYTEORDER (0x1UL << 6)
97 #define _AES_CTRL_BYTEORDER_SHIFT 6
98 #define _AES_CTRL_BYTEORDER_MASK 0x40UL
99 #define _AES_CTRL_BYTEORDER_DEFAULT 0x00000000UL
100 #define AES_CTRL_BYTEORDER_DEFAULT (_AES_CTRL_BYTEORDER_DEFAULT << 6)
102 /* Bit fields for AES CMD */
103 #define _AES_CMD_RESETVALUE 0x00000000UL
104 #define _AES_CMD_MASK 0x00000003UL
105 #define AES_CMD_START (0x1UL << 0)
106 #define _AES_CMD_START_SHIFT 0
107 #define _AES_CMD_START_MASK 0x1UL
108 #define _AES_CMD_START_DEFAULT 0x00000000UL
109 #define AES_CMD_START_DEFAULT (_AES_CMD_START_DEFAULT << 0)
110 #define AES_CMD_STOP (0x1UL << 1)
111 #define _AES_CMD_STOP_SHIFT 1
112 #define _AES_CMD_STOP_MASK 0x2UL
113 #define _AES_CMD_STOP_DEFAULT 0x00000000UL
114 #define AES_CMD_STOP_DEFAULT (_AES_CMD_STOP_DEFAULT << 1)
116 /* Bit fields for AES STATUS */
117 #define _AES_STATUS_RESETVALUE 0x00000000UL
118 #define _AES_STATUS_MASK 0x00000001UL
119 #define AES_STATUS_RUNNING (0x1UL << 0)
120 #define _AES_STATUS_RUNNING_SHIFT 0
121 #define _AES_STATUS_RUNNING_MASK 0x1UL
122 #define _AES_STATUS_RUNNING_DEFAULT 0x00000000UL
123 #define AES_STATUS_RUNNING_DEFAULT (_AES_STATUS_RUNNING_DEFAULT << 0)
125 /* Bit fields for AES IEN */
126 #define _AES_IEN_RESETVALUE 0x00000000UL
127 #define _AES_IEN_MASK 0x00000001UL
128 #define AES_IEN_DONE (0x1UL << 0)
129 #define _AES_IEN_DONE_SHIFT 0
130 #define _AES_IEN_DONE_MASK 0x1UL
131 #define _AES_IEN_DONE_DEFAULT 0x00000000UL
132 #define AES_IEN_DONE_DEFAULT (_AES_IEN_DONE_DEFAULT << 0)
134 /* Bit fields for AES IF */
135 #define _AES_IF_RESETVALUE 0x00000000UL
136 #define _AES_IF_MASK 0x00000001UL
137 #define AES_IF_DONE (0x1UL << 0)
138 #define _AES_IF_DONE_SHIFT 0
139 #define _AES_IF_DONE_MASK 0x1UL
140 #define _AES_IF_DONE_DEFAULT 0x00000000UL
141 #define AES_IF_DONE_DEFAULT (_AES_IF_DONE_DEFAULT << 0)
143 /* Bit fields for AES IFS */
144 #define _AES_IFS_RESETVALUE 0x00000000UL
145 #define _AES_IFS_MASK 0x00000001UL
146 #define AES_IFS_DONE (0x1UL << 0)
147 #define _AES_IFS_DONE_SHIFT 0
148 #define _AES_IFS_DONE_MASK 0x1UL
149 #define _AES_IFS_DONE_DEFAULT 0x00000000UL
150 #define AES_IFS_DONE_DEFAULT (_AES_IFS_DONE_DEFAULT << 0)
152 /* Bit fields for AES IFC */
153 #define _AES_IFC_RESETVALUE 0x00000000UL
154 #define _AES_IFC_MASK 0x00000001UL
155 #define AES_IFC_DONE (0x1UL << 0)
156 #define _AES_IFC_DONE_SHIFT 0
157 #define _AES_IFC_DONE_MASK 0x1UL
158 #define _AES_IFC_DONE_DEFAULT 0x00000000UL
159 #define AES_IFC_DONE_DEFAULT (_AES_IFC_DONE_DEFAULT << 0)
161 /* Bit fields for AES DATA */
162 #define _AES_DATA_RESETVALUE 0x00000000UL
163 #define _AES_DATA_MASK 0xFFFFFFFFUL
164 #define _AES_DATA_DATA_SHIFT 0
165 #define _AES_DATA_DATA_MASK 0xFFFFFFFFUL
166 #define _AES_DATA_DATA_DEFAULT 0x00000000UL
167 #define AES_DATA_DATA_DEFAULT (_AES_DATA_DATA_DEFAULT << 0)
169 /* Bit fields for AES XORDATA */
170 #define _AES_XORDATA_RESETVALUE 0x00000000UL
171 #define _AES_XORDATA_MASK 0xFFFFFFFFUL
172 #define _AES_XORDATA_XORDATA_SHIFT 0
173 #define _AES_XORDATA_XORDATA_MASK 0xFFFFFFFFUL
174 #define _AES_XORDATA_XORDATA_DEFAULT 0x00000000UL
175 #define AES_XORDATA_XORDATA_DEFAULT (_AES_XORDATA_XORDATA_DEFAULT << 0)
177 /* Bit fields for AES KEYLA */
178 #define _AES_KEYLA_RESETVALUE 0x00000000UL
179 #define _AES_KEYLA_MASK 0xFFFFFFFFUL
180 #define _AES_KEYLA_KEYLA_SHIFT 0
181 #define _AES_KEYLA_KEYLA_MASK 0xFFFFFFFFUL
182 #define _AES_KEYLA_KEYLA_DEFAULT 0x00000000UL
183 #define AES_KEYLA_KEYLA_DEFAULT (_AES_KEYLA_KEYLA_DEFAULT << 0)
185 /* Bit fields for AES KEYLB */
186 #define _AES_KEYLB_RESETVALUE 0x00000000UL
187 #define _AES_KEYLB_MASK 0xFFFFFFFFUL
188 #define _AES_KEYLB_KEYLB_SHIFT 0
189 #define _AES_KEYLB_KEYLB_MASK 0xFFFFFFFFUL
190 #define _AES_KEYLB_KEYLB_DEFAULT 0x00000000UL
191 #define AES_KEYLB_KEYLB_DEFAULT (_AES_KEYLB_KEYLB_DEFAULT << 0)
193 /* Bit fields for AES KEYLC */
194 #define _AES_KEYLC_RESETVALUE 0x00000000UL
195 #define _AES_KEYLC_MASK 0xFFFFFFFFUL
196 #define _AES_KEYLC_KEYLC_SHIFT 0
197 #define _AES_KEYLC_KEYLC_MASK 0xFFFFFFFFUL
198 #define _AES_KEYLC_KEYLC_DEFAULT 0x00000000UL
199 #define AES_KEYLC_KEYLC_DEFAULT (_AES_KEYLC_KEYLC_DEFAULT << 0)
201 /* Bit fields for AES KEYLD */
202 #define _AES_KEYLD_RESETVALUE 0x00000000UL
203 #define _AES_KEYLD_MASK 0xFFFFFFFFUL
204 #define _AES_KEYLD_KEYLD_SHIFT 0
205 #define _AES_KEYLD_KEYLD_MASK 0xFFFFFFFFUL
206 #define _AES_KEYLD_KEYLD_DEFAULT 0x00000000UL
207 #define AES_KEYLD_KEYLD_DEFAULT (_AES_KEYLD_KEYLD_DEFAULT << 0)
209 /* Bit fields for AES KEYHA */
210 #define _AES_KEYHA_RESETVALUE 0x00000000UL
211 #define _AES_KEYHA_MASK 0xFFFFFFFFUL
212 #define _AES_KEYHA_KEYHA_SHIFT 0
213 #define _AES_KEYHA_KEYHA_MASK 0xFFFFFFFFUL
214 #define _AES_KEYHA_KEYHA_DEFAULT 0x00000000UL
215 #define AES_KEYHA_KEYHA_DEFAULT (_AES_KEYHA_KEYHA_DEFAULT << 0)
217 /* Bit fields for AES KEYHB */
218 #define _AES_KEYHB_RESETVALUE 0x00000000UL
219 #define _AES_KEYHB_MASK 0xFFFFFFFFUL
220 #define _AES_KEYHB_KEYHB_SHIFT 0
221 #define _AES_KEYHB_KEYHB_MASK 0xFFFFFFFFUL
222 #define _AES_KEYHB_KEYHB_DEFAULT 0x00000000UL
223 #define AES_KEYHB_KEYHB_DEFAULT (_AES_KEYHB_KEYHB_DEFAULT << 0)
225 /* Bit fields for AES KEYHC */
226 #define _AES_KEYHC_RESETVALUE 0x00000000UL
227 #define _AES_KEYHC_MASK 0xFFFFFFFFUL
228 #define _AES_KEYHC_KEYHC_SHIFT 0
229 #define _AES_KEYHC_KEYHC_MASK 0xFFFFFFFFUL
230 #define _AES_KEYHC_KEYHC_DEFAULT 0x00000000UL
231 #define AES_KEYHC_KEYHC_DEFAULT (_AES_KEYHC_KEYHC_DEFAULT << 0)
233 /* Bit fields for AES KEYHD */
234 #define _AES_KEYHD_RESETVALUE 0x00000000UL
235 #define _AES_KEYHD_MASK 0xFFFFFFFFUL
236 #define _AES_KEYHD_KEYHD_SHIFT 0
237 #define _AES_KEYHD_KEYHD_MASK 0xFFFFFFFFUL
238 #define _AES_KEYHD_KEYHD_DEFAULT 0x00000000UL
239 #define AES_KEYHD_KEYHD_DEFAULT (_AES_KEYHD_KEYHD_DEFAULT << 0)
__IOM uint32_t KEYHA
Definition: efm32gg_aes.h:57
__IOM uint32_t KEYHB
Definition: efm32gg_aes.h:58
__IOM uint32_t IFC
Definition: efm32gg_aes.h:49
__IOM uint32_t KEYLD
Definition: efm32gg_aes.h:56
__IOM uint32_t CMD
Definition: efm32gg_aes.h:44
__IOM uint32_t IFS
Definition: efm32gg_aes.h:48
__IOM uint32_t KEYHC
Definition: efm32gg_aes.h:59
__IM uint32_t IF
Definition: efm32gg_aes.h:47
__IOM uint32_t KEYLC
Definition: efm32gg_aes.h:55
__IOM uint32_t KEYLA
Definition: efm32gg_aes.h:53
__IOM uint32_t DATA
Definition: efm32gg_aes.h:50
__IOM uint32_t IEN
Definition: efm32gg_aes.h:46
__IOM uint32_t KEYHD
Definition: efm32gg_aes.h:60
__IOM uint32_t KEYLB
Definition: efm32gg_aes.h:54
__IOM uint32_t CTRL
Definition: efm32gg_aes.h:43
__IOM uint32_t XORDATA
Definition: efm32gg_aes.h:51
__IM uint32_t STATUS
Definition: efm32gg_aes.h:45