1 /***************************************************************************//**
2  * @file
3  * @brief EFM32GG12B_TRNG register and bit field definitions
4  *******************************************************************************
5  * # License
6  * <b>Copyright 2022 Silicon Laboratories Inc. www.silabs.com</b>
7  *******************************************************************************
8  *
9  * SPDX-License-Identifier: Zlib
10  *
11  * The licensor of this software is Silicon Laboratories Inc.
12  *
13  * This software is provided 'as-is', without any express or implied
14  * warranty. In no event will the authors be held liable for any damages
15  * arising from the use of this software.
16  *
17  * Permission is granted to anyone to use this software for any purpose,
18  * including commercial applications, and to alter it and redistribute it
19  * freely, subject to the following restrictions:
20  *
21  * 1. The origin of this software must not be misrepresented; you must not
22  *    claim that you wrote the original software. If you use this software
23  *    in a product, an acknowledgment in the product documentation would be
24  *    appreciated but is not required.
25  * 2. Altered source versions must be plainly marked as such, and must not be
26  *    misrepresented as being the original software.
27  * 3. This notice may not be removed or altered from any source distribution.
28  *
29  ******************************************************************************/
30 
31 #if defined(__ICCARM__)
32 #pragma system_include       /* Treat file as system include file. */
33 #elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
34 #pragma clang system_header  /* Treat file as system include file. */
35 #endif
36 
37 /***************************************************************************//**
38  * @addtogroup Parts
39  * @{
40  ******************************************************************************/
41 /***************************************************************************//**
42  * @defgroup EFM32GG12B_TRNG TRNG
43  * @{
44  * @brief EFM32GG12B_TRNG Register Declaration
45  ******************************************************************************/
46 /** TRNG Register Declaration */
47 typedef struct {
48   __IOM uint32_t CONTROL;         /**< Main Control Register  */
49   __IM uint32_t  FIFOLEVEL;       /**< FIFO Level Register  */
50   uint32_t       RESERVED0[1U];   /**< Reserved for future use **/
51   __IM uint32_t  FIFODEPTH;       /**< FIFO Depth Register  */
52   __IOM uint32_t KEY0;            /**< Key Register 0  */
53   __IOM uint32_t KEY1;            /**< Key Register 1  */
54   __IOM uint32_t KEY2;            /**< Key Register 2  */
55   __IOM uint32_t KEY3;            /**< Key Register 3  */
56   __IOM uint32_t TESTDATA;        /**< Test Data Register  */
57 
58   uint32_t       RESERVED1[3U];   /**< Reserved for future use **/
59   __IOM uint32_t STATUS;          /**< Status Register  */
60   __IOM uint32_t INITWAITVAL;     /**< Initial Wait Counter  */
61   uint32_t       RESERVED2[50U];  /**< Reserved for future use **/
62   __IM uint32_t  FIFO;            /**< FIFO Data  */
63 
64   uint32_t       RESERVED3[127U]; /**< Reserved for future use **/
65   __IOM uint32_t CORECLKCONTROL;  /**< Core Clock Control Register  */
66 } TRNG_TypeDef;                   /** @} */
67 
68 /***************************************************************************//**
69  * @addtogroup EFM32GG12B_TRNG
70  * @{
71  * @defgroup EFM32GG12B_TRNG_BitFields  TRNG Bit Fields
72  * @{
73  ******************************************************************************/
74 
75 /* Bit fields for TRNG CONTROL */
76 #define _TRNG_CONTROL_RESETVALUE                     0x00000000UL                             /**< Default value for TRNG_CONTROL */
77 #define _TRNG_CONTROL_MASK                           0x00003FFDUL                             /**< Mask for TRNG_CONTROL */
78 #define TRNG_CONTROL_ENABLE                          (0x1UL << 0)                             /**< TRNG Module Enable */
79 #define _TRNG_CONTROL_ENABLE_SHIFT                   0                                        /**< Shift value for TRNG_ENABLE */
80 #define _TRNG_CONTROL_ENABLE_MASK                    0x1UL                                    /**< Bit mask for TRNG_ENABLE */
81 #define _TRNG_CONTROL_ENABLE_DEFAULT                 0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
82 #define _TRNG_CONTROL_ENABLE_DISABLED                0x00000000UL                             /**< Mode DISABLED for TRNG_CONTROL */
83 #define _TRNG_CONTROL_ENABLE_ENABLED                 0x00000001UL                             /**< Mode ENABLED for TRNG_CONTROL */
84 #define TRNG_CONTROL_ENABLE_DEFAULT                  (_TRNG_CONTROL_ENABLE_DEFAULT << 0)      /**< Shifted mode DEFAULT for TRNG_CONTROL */
85 #define TRNG_CONTROL_ENABLE_DISABLED                 (_TRNG_CONTROL_ENABLE_DISABLED << 0)     /**< Shifted mode DISABLED for TRNG_CONTROL */
86 #define TRNG_CONTROL_ENABLE_ENABLED                  (_TRNG_CONTROL_ENABLE_ENABLED << 0)      /**< Shifted mode ENABLED for TRNG_CONTROL */
87 #define TRNG_CONTROL_TESTEN                          (0x1UL << 2)                             /**< Test Enable */
88 #define _TRNG_CONTROL_TESTEN_SHIFT                   2                                        /**< Shift value for TRNG_TESTEN */
89 #define _TRNG_CONTROL_TESTEN_MASK                    0x4UL                                    /**< Bit mask for TRNG_TESTEN */
90 #define _TRNG_CONTROL_TESTEN_DEFAULT                 0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
91 #define _TRNG_CONTROL_TESTEN_NOISE                   0x00000000UL                             /**< Mode NOISE for TRNG_CONTROL */
92 #define _TRNG_CONTROL_TESTEN_TESTDATA                0x00000001UL                             /**< Mode TESTDATA for TRNG_CONTROL */
93 #define TRNG_CONTROL_TESTEN_DEFAULT                  (_TRNG_CONTROL_TESTEN_DEFAULT << 2)      /**< Shifted mode DEFAULT for TRNG_CONTROL */
94 #define TRNG_CONTROL_TESTEN_NOISE                    (_TRNG_CONTROL_TESTEN_NOISE << 2)        /**< Shifted mode NOISE for TRNG_CONTROL */
95 #define TRNG_CONTROL_TESTEN_TESTDATA                 (_TRNG_CONTROL_TESTEN_TESTDATA << 2)     /**< Shifted mode TESTDATA for TRNG_CONTROL */
96 #define TRNG_CONTROL_CONDBYPASS                      (0x1UL << 3)                             /**< Conditioning Bypass */
97 #define _TRNG_CONTROL_CONDBYPASS_SHIFT               3                                        /**< Shift value for TRNG_CONDBYPASS */
98 #define _TRNG_CONTROL_CONDBYPASS_MASK                0x8UL                                    /**< Bit mask for TRNG_CONDBYPASS */
99 #define _TRNG_CONTROL_CONDBYPASS_DEFAULT             0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
100 #define _TRNG_CONTROL_CONDBYPASS_NORMAL              0x00000000UL                             /**< Mode NORMAL for TRNG_CONTROL */
101 #define _TRNG_CONTROL_CONDBYPASS_BYPASS              0x00000001UL                             /**< Mode BYPASS for TRNG_CONTROL */
102 #define TRNG_CONTROL_CONDBYPASS_DEFAULT              (_TRNG_CONTROL_CONDBYPASS_DEFAULT << 3)  /**< Shifted mode DEFAULT for TRNG_CONTROL */
103 #define TRNG_CONTROL_CONDBYPASS_NORMAL               (_TRNG_CONTROL_CONDBYPASS_NORMAL << 3)   /**< Shifted mode NORMAL for TRNG_CONTROL */
104 #define TRNG_CONTROL_CONDBYPASS_BYPASS               (_TRNG_CONTROL_CONDBYPASS_BYPASS << 3)   /**< Shifted mode BYPASS for TRNG_CONTROL */
105 #define TRNG_CONTROL_REPCOUNTIEN                     (0x1UL << 4)                             /**< Interrupt Enable for Repetition Count Test Failure */
106 #define _TRNG_CONTROL_REPCOUNTIEN_SHIFT              4                                        /**< Shift value for TRNG_REPCOUNTIEN */
107 #define _TRNG_CONTROL_REPCOUNTIEN_MASK               0x10UL                                   /**< Bit mask for TRNG_REPCOUNTIEN */
108 #define _TRNG_CONTROL_REPCOUNTIEN_DEFAULT            0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
109 #define TRNG_CONTROL_REPCOUNTIEN_DEFAULT             (_TRNG_CONTROL_REPCOUNTIEN_DEFAULT << 4) /**< Shifted mode DEFAULT for TRNG_CONTROL */
110 #define TRNG_CONTROL_APT64IEN                        (0x1UL << 5)                             /**< Interrupt Enable for Adaptive Proportion Test Failure (64-sample Window) */
111 #define _TRNG_CONTROL_APT64IEN_SHIFT                 5                                        /**< Shift value for TRNG_APT64IEN */
112 #define _TRNG_CONTROL_APT64IEN_MASK                  0x20UL                                   /**< Bit mask for TRNG_APT64IEN */
113 #define _TRNG_CONTROL_APT64IEN_DEFAULT               0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
114 #define TRNG_CONTROL_APT64IEN_DEFAULT                (_TRNG_CONTROL_APT64IEN_DEFAULT << 5)    /**< Shifted mode DEFAULT for TRNG_CONTROL */
115 #define TRNG_CONTROL_APT4096IEN                      (0x1UL << 6)                             /**< Interrupt Enable for Adaptive Proportion Test Failure (4096-sample Window) */
116 #define _TRNG_CONTROL_APT4096IEN_SHIFT               6                                        /**< Shift value for TRNG_APT4096IEN */
117 #define _TRNG_CONTROL_APT4096IEN_MASK                0x40UL                                   /**< Bit mask for TRNG_APT4096IEN */
118 #define _TRNG_CONTROL_APT4096IEN_DEFAULT             0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
119 #define TRNG_CONTROL_APT4096IEN_DEFAULT              (_TRNG_CONTROL_APT4096IEN_DEFAULT << 6)  /**< Shifted mode DEFAULT for TRNG_CONTROL */
120 #define TRNG_CONTROL_FULLIEN                         (0x1UL << 7)                             /**< Interrupt Enable for FIFO Full */
121 #define _TRNG_CONTROL_FULLIEN_SHIFT                  7                                        /**< Shift value for TRNG_FULLIEN */
122 #define _TRNG_CONTROL_FULLIEN_MASK                   0x80UL                                   /**< Bit mask for TRNG_FULLIEN */
123 #define _TRNG_CONTROL_FULLIEN_DEFAULT                0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
124 #define TRNG_CONTROL_FULLIEN_DEFAULT                 (_TRNG_CONTROL_FULLIEN_DEFAULT << 7)     /**< Shifted mode DEFAULT for TRNG_CONTROL */
125 #define TRNG_CONTROL_SOFTRESET                       (0x1UL << 8)                             /**< Software Reset */
126 #define _TRNG_CONTROL_SOFTRESET_SHIFT                8                                        /**< Shift value for TRNG_SOFTRESET */
127 #define _TRNG_CONTROL_SOFTRESET_MASK                 0x100UL                                  /**< Bit mask for TRNG_SOFTRESET */
128 #define _TRNG_CONTROL_SOFTRESET_DEFAULT              0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
129 #define _TRNG_CONTROL_SOFTRESET_NORMAL               0x00000000UL                             /**< Mode NORMAL for TRNG_CONTROL */
130 #define _TRNG_CONTROL_SOFTRESET_RESET                0x00000001UL                             /**< Mode RESET for TRNG_CONTROL */
131 #define TRNG_CONTROL_SOFTRESET_DEFAULT               (_TRNG_CONTROL_SOFTRESET_DEFAULT << 8)   /**< Shifted mode DEFAULT for TRNG_CONTROL */
132 #define TRNG_CONTROL_SOFTRESET_NORMAL                (_TRNG_CONTROL_SOFTRESET_NORMAL << 8)    /**< Shifted mode NORMAL for TRNG_CONTROL */
133 #define TRNG_CONTROL_SOFTRESET_RESET                 (_TRNG_CONTROL_SOFTRESET_RESET << 8)     /**< Shifted mode RESET for TRNG_CONTROL */
134 #define TRNG_CONTROL_PREIEN                          (0x1UL << 9)                             /**< Interrupt enable for AIS31 preliminary noise alarm */
135 #define _TRNG_CONTROL_PREIEN_SHIFT                   9                                        /**< Shift value for TRNG_PREIEN */
136 #define _TRNG_CONTROL_PREIEN_MASK                    0x200UL                                  /**< Bit mask for TRNG_PREIEN */
137 #define _TRNG_CONTROL_PREIEN_DEFAULT                 0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
138 #define TRNG_CONTROL_PREIEN_DEFAULT                  (_TRNG_CONTROL_PREIEN_DEFAULT << 9)      /**< Shifted mode DEFAULT for TRNG_CONTROL */
139 #define TRNG_CONTROL_ALMIEN                          (0x1UL << 10)                            /**< Interrupt enable for AIS31 noise alarm */
140 #define _TRNG_CONTROL_ALMIEN_SHIFT                   10                                       /**< Shift value for TRNG_ALMIEN */
141 #define _TRNG_CONTROL_ALMIEN_MASK                    0x400UL                                  /**< Bit mask for TRNG_ALMIEN */
142 #define _TRNG_CONTROL_ALMIEN_DEFAULT                 0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
143 #define TRNG_CONTROL_ALMIEN_DEFAULT                  (_TRNG_CONTROL_ALMIEN_DEFAULT << 10)     /**< Shifted mode DEFAULT for TRNG_CONTROL */
144 #define TRNG_CONTROL_FORCERUN                        (0x1UL << 11)                            /**< Oscillator Force Run */
145 #define _TRNG_CONTROL_FORCERUN_SHIFT                 11                                       /**< Shift value for TRNG_FORCERUN */
146 #define _TRNG_CONTROL_FORCERUN_MASK                  0x800UL                                  /**< Bit mask for TRNG_FORCERUN */
147 #define _TRNG_CONTROL_FORCERUN_DEFAULT               0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
148 #define _TRNG_CONTROL_FORCERUN_NORMAL                0x00000000UL                             /**< Mode NORMAL for TRNG_CONTROL */
149 #define _TRNG_CONTROL_FORCERUN_RUN                   0x00000001UL                             /**< Mode RUN for TRNG_CONTROL */
150 #define TRNG_CONTROL_FORCERUN_DEFAULT                (_TRNG_CONTROL_FORCERUN_DEFAULT << 11)   /**< Shifted mode DEFAULT for TRNG_CONTROL */
151 #define TRNG_CONTROL_FORCERUN_NORMAL                 (_TRNG_CONTROL_FORCERUN_NORMAL << 11)    /**< Shifted mode NORMAL for TRNG_CONTROL */
152 #define TRNG_CONTROL_FORCERUN_RUN                    (_TRNG_CONTROL_FORCERUN_RUN << 11)       /**< Shifted mode RUN for TRNG_CONTROL */
153 #define TRNG_CONTROL_BYPNIST                         (0x1UL << 12)                            /**< NIST Start-up Test Bypass. */
154 #define _TRNG_CONTROL_BYPNIST_SHIFT                  12                                       /**< Shift value for TRNG_BYPNIST */
155 #define _TRNG_CONTROL_BYPNIST_MASK                   0x1000UL                                 /**< Bit mask for TRNG_BYPNIST */
156 #define _TRNG_CONTROL_BYPNIST_DEFAULT                0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
157 #define _TRNG_CONTROL_BYPNIST_NORMAL                 0x00000000UL                             /**< Mode NORMAL for TRNG_CONTROL */
158 #define _TRNG_CONTROL_BYPNIST_BYPASS                 0x00000001UL                             /**< Mode BYPASS for TRNG_CONTROL */
159 #define TRNG_CONTROL_BYPNIST_DEFAULT                 (_TRNG_CONTROL_BYPNIST_DEFAULT << 12)    /**< Shifted mode DEFAULT for TRNG_CONTROL */
160 #define TRNG_CONTROL_BYPNIST_NORMAL                  (_TRNG_CONTROL_BYPNIST_NORMAL << 12)     /**< Shifted mode NORMAL for TRNG_CONTROL */
161 #define TRNG_CONTROL_BYPNIST_BYPASS                  (_TRNG_CONTROL_BYPNIST_BYPASS << 12)     /**< Shifted mode BYPASS for TRNG_CONTROL */
162 #define TRNG_CONTROL_BYPAIS31                        (0x1UL << 13)                            /**< AIS31 Start-up Test Bypass. */
163 #define _TRNG_CONTROL_BYPAIS31_SHIFT                 13                                       /**< Shift value for TRNG_BYPAIS31 */
164 #define _TRNG_CONTROL_BYPAIS31_MASK                  0x2000UL                                 /**< Bit mask for TRNG_BYPAIS31 */
165 #define _TRNG_CONTROL_BYPAIS31_DEFAULT               0x00000000UL                             /**< Mode DEFAULT for TRNG_CONTROL */
166 #define _TRNG_CONTROL_BYPAIS31_NORMAL                0x00000000UL                             /**< Mode NORMAL for TRNG_CONTROL */
167 #define _TRNG_CONTROL_BYPAIS31_BYPASS                0x00000001UL                             /**< Mode BYPASS for TRNG_CONTROL */
168 #define TRNG_CONTROL_BYPAIS31_DEFAULT                (_TRNG_CONTROL_BYPAIS31_DEFAULT << 13)   /**< Shifted mode DEFAULT for TRNG_CONTROL */
169 #define TRNG_CONTROL_BYPAIS31_NORMAL                 (_TRNG_CONTROL_BYPAIS31_NORMAL << 13)    /**< Shifted mode NORMAL for TRNG_CONTROL */
170 #define TRNG_CONTROL_BYPAIS31_BYPASS                 (_TRNG_CONTROL_BYPAIS31_BYPASS << 13)    /**< Shifted mode BYPASS for TRNG_CONTROL */
171 
172 /* Bit fields for TRNG FIFOLEVEL */
173 #define _TRNG_FIFOLEVEL_RESETVALUE                   0x00000000UL                         /**< Default value for TRNG_FIFOLEVEL */
174 #define _TRNG_FIFOLEVEL_MASK                         0xFFFFFFFFUL                         /**< Mask for TRNG_FIFOLEVEL */
175 #define _TRNG_FIFOLEVEL_VALUE_SHIFT                  0                                    /**< Shift value for TRNG_VALUE */
176 #define _TRNG_FIFOLEVEL_VALUE_MASK                   0xFFFFFFFFUL                         /**< Bit mask for TRNG_VALUE */
177 #define _TRNG_FIFOLEVEL_VALUE_DEFAULT                0x00000000UL                         /**< Mode DEFAULT for TRNG_FIFOLEVEL */
178 #define TRNG_FIFOLEVEL_VALUE_DEFAULT                 (_TRNG_FIFOLEVEL_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_FIFOLEVEL */
179 
180 /* Bit fields for TRNG FIFODEPTH */
181 #define _TRNG_FIFODEPTH_RESETVALUE                   0x00000040UL                         /**< Default value for TRNG_FIFODEPTH */
182 #define _TRNG_FIFODEPTH_MASK                         0xFFFFFFFFUL                         /**< Mask for TRNG_FIFODEPTH */
183 #define _TRNG_FIFODEPTH_VALUE_SHIFT                  0                                    /**< Shift value for TRNG_VALUE */
184 #define _TRNG_FIFODEPTH_VALUE_MASK                   0xFFFFFFFFUL                         /**< Bit mask for TRNG_VALUE */
185 #define _TRNG_FIFODEPTH_VALUE_DEFAULT                0x00000040UL                         /**< Mode DEFAULT for TRNG_FIFODEPTH */
186 #define TRNG_FIFODEPTH_VALUE_DEFAULT                 (_TRNG_FIFODEPTH_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_FIFODEPTH */
187 
188 /* Bit fields for TRNG KEY0 */
189 #define _TRNG_KEY0_RESETVALUE                        0x00000000UL                    /**< Default value for TRNG_KEY0 */
190 #define _TRNG_KEY0_MASK                              0xFFFFFFFFUL                    /**< Mask for TRNG_KEY0 */
191 #define _TRNG_KEY0_VALUE_SHIFT                       0                               /**< Shift value for TRNG_VALUE */
192 #define _TRNG_KEY0_VALUE_MASK                        0xFFFFFFFFUL                    /**< Bit mask for TRNG_VALUE */
193 #define _TRNG_KEY0_VALUE_DEFAULT                     0x00000000UL                    /**< Mode DEFAULT for TRNG_KEY0 */
194 #define TRNG_KEY0_VALUE_DEFAULT                      (_TRNG_KEY0_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_KEY0 */
195 
196 /* Bit fields for TRNG KEY1 */
197 #define _TRNG_KEY1_RESETVALUE                        0x00000000UL                    /**< Default value for TRNG_KEY1 */
198 #define _TRNG_KEY1_MASK                              0xFFFFFFFFUL                    /**< Mask for TRNG_KEY1 */
199 #define _TRNG_KEY1_VALUE_SHIFT                       0                               /**< Shift value for TRNG_VALUE */
200 #define _TRNG_KEY1_VALUE_MASK                        0xFFFFFFFFUL                    /**< Bit mask for TRNG_VALUE */
201 #define _TRNG_KEY1_VALUE_DEFAULT                     0x00000000UL                    /**< Mode DEFAULT for TRNG_KEY1 */
202 #define TRNG_KEY1_VALUE_DEFAULT                      (_TRNG_KEY1_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_KEY1 */
203 
204 /* Bit fields for TRNG KEY2 */
205 #define _TRNG_KEY2_RESETVALUE                        0x00000000UL                    /**< Default value for TRNG_KEY2 */
206 #define _TRNG_KEY2_MASK                              0xFFFFFFFFUL                    /**< Mask for TRNG_KEY2 */
207 #define _TRNG_KEY2_VALUE_SHIFT                       0                               /**< Shift value for TRNG_VALUE */
208 #define _TRNG_KEY2_VALUE_MASK                        0xFFFFFFFFUL                    /**< Bit mask for TRNG_VALUE */
209 #define _TRNG_KEY2_VALUE_DEFAULT                     0x00000000UL                    /**< Mode DEFAULT for TRNG_KEY2 */
210 #define TRNG_KEY2_VALUE_DEFAULT                      (_TRNG_KEY2_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_KEY2 */
211 
212 /* Bit fields for TRNG KEY3 */
213 #define _TRNG_KEY3_RESETVALUE                        0x00000000UL                    /**< Default value for TRNG_KEY3 */
214 #define _TRNG_KEY3_MASK                              0xFFFFFFFFUL                    /**< Mask for TRNG_KEY3 */
215 #define _TRNG_KEY3_VALUE_SHIFT                       0                               /**< Shift value for TRNG_VALUE */
216 #define _TRNG_KEY3_VALUE_MASK                        0xFFFFFFFFUL                    /**< Bit mask for TRNG_VALUE */
217 #define _TRNG_KEY3_VALUE_DEFAULT                     0x00000000UL                    /**< Mode DEFAULT for TRNG_KEY3 */
218 #define TRNG_KEY3_VALUE_DEFAULT                      (_TRNG_KEY3_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_KEY3 */
219 
220 /* Bit fields for TRNG TESTDATA */
221 #define _TRNG_TESTDATA_RESETVALUE                    0x00000000UL                        /**< Default value for TRNG_TESTDATA */
222 #define _TRNG_TESTDATA_MASK                          0xFFFFFFFFUL                        /**< Mask for TRNG_TESTDATA */
223 #define _TRNG_TESTDATA_VALUE_SHIFT                   0                                   /**< Shift value for TRNG_VALUE */
224 #define _TRNG_TESTDATA_VALUE_MASK                    0xFFFFFFFFUL                        /**< Bit mask for TRNG_VALUE */
225 #define _TRNG_TESTDATA_VALUE_DEFAULT                 0x00000000UL                        /**< Mode DEFAULT for TRNG_TESTDATA */
226 #define TRNG_TESTDATA_VALUE_DEFAULT                  (_TRNG_TESTDATA_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_TESTDATA */
227 
228 /* Bit fields for TRNG STATUS */
229 #define _TRNG_STATUS_RESETVALUE                      0x00000000UL                             /**< Default value for TRNG_STATUS */
230 #define _TRNG_STATUS_MASK                            0x000003F1UL                             /**< Mask for TRNG_STATUS */
231 #define TRNG_STATUS_TESTDATABUSY                     (0x1UL << 0)                             /**< Test Data Busy */
232 #define _TRNG_STATUS_TESTDATABUSY_SHIFT              0                                        /**< Shift value for TRNG_TESTDATABUSY */
233 #define _TRNG_STATUS_TESTDATABUSY_MASK               0x1UL                                    /**< Bit mask for TRNG_TESTDATABUSY */
234 #define _TRNG_STATUS_TESTDATABUSY_DEFAULT            0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
235 #define _TRNG_STATUS_TESTDATABUSY_IDLE               0x00000000UL                             /**< Mode IDLE for TRNG_STATUS */
236 #define _TRNG_STATUS_TESTDATABUSY_BUSY               0x00000001UL                             /**< Mode BUSY for TRNG_STATUS */
237 #define TRNG_STATUS_TESTDATABUSY_DEFAULT             (_TRNG_STATUS_TESTDATABUSY_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_STATUS */
238 #define TRNG_STATUS_TESTDATABUSY_IDLE                (_TRNG_STATUS_TESTDATABUSY_IDLE << 0)    /**< Shifted mode IDLE for TRNG_STATUS */
239 #define TRNG_STATUS_TESTDATABUSY_BUSY                (_TRNG_STATUS_TESTDATABUSY_BUSY << 0)    /**< Shifted mode BUSY for TRNG_STATUS */
240 #define TRNG_STATUS_REPCOUNTIF                       (0x1UL << 4)                             /**< Repetition Count Test Interrupt Status */
241 #define _TRNG_STATUS_REPCOUNTIF_SHIFT                4                                        /**< Shift value for TRNG_REPCOUNTIF */
242 #define _TRNG_STATUS_REPCOUNTIF_MASK                 0x10UL                                   /**< Bit mask for TRNG_REPCOUNTIF */
243 #define _TRNG_STATUS_REPCOUNTIF_DEFAULT              0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
244 #define TRNG_STATUS_REPCOUNTIF_DEFAULT               (_TRNG_STATUS_REPCOUNTIF_DEFAULT << 4)   /**< Shifted mode DEFAULT for TRNG_STATUS */
245 #define TRNG_STATUS_APT64IF                          (0x1UL << 5)                             /**< Adaptive Proportion test failure (64-sample window) interrupt status */
246 #define _TRNG_STATUS_APT64IF_SHIFT                   5                                        /**< Shift value for TRNG_APT64IF */
247 #define _TRNG_STATUS_APT64IF_MASK                    0x20UL                                   /**< Bit mask for TRNG_APT64IF */
248 #define _TRNG_STATUS_APT64IF_DEFAULT                 0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
249 #define TRNG_STATUS_APT64IF_DEFAULT                  (_TRNG_STATUS_APT64IF_DEFAULT << 5)      /**< Shifted mode DEFAULT for TRNG_STATUS */
250 #define TRNG_STATUS_APT4096IF                        (0x1UL << 6)                             /**< Adaptive Proportion test failure (4096-sample window) interrupt status */
251 #define _TRNG_STATUS_APT4096IF_SHIFT                 6                                        /**< Shift value for TRNG_APT4096IF */
252 #define _TRNG_STATUS_APT4096IF_MASK                  0x40UL                                   /**< Bit mask for TRNG_APT4096IF */
253 #define _TRNG_STATUS_APT4096IF_DEFAULT               0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
254 #define TRNG_STATUS_APT4096IF_DEFAULT                (_TRNG_STATUS_APT4096IF_DEFAULT << 6)    /**< Shifted mode DEFAULT for TRNG_STATUS */
255 #define TRNG_STATUS_FULLIF                           (0x1UL << 7)                             /**< FIFO Full Interrupt Status */
256 #define _TRNG_STATUS_FULLIF_SHIFT                    7                                        /**< Shift value for TRNG_FULLIF */
257 #define _TRNG_STATUS_FULLIF_MASK                     0x80UL                                   /**< Bit mask for TRNG_FULLIF */
258 #define _TRNG_STATUS_FULLIF_DEFAULT                  0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
259 #define TRNG_STATUS_FULLIF_DEFAULT                   (_TRNG_STATUS_FULLIF_DEFAULT << 7)       /**< Shifted mode DEFAULT for TRNG_STATUS */
260 #define TRNG_STATUS_PREIF                            (0x1UL << 8)                             /**< AIS31 Preliminary Noise Alarm interrupt status */
261 #define _TRNG_STATUS_PREIF_SHIFT                     8                                        /**< Shift value for TRNG_PREIF */
262 #define _TRNG_STATUS_PREIF_MASK                      0x100UL                                  /**< Bit mask for TRNG_PREIF */
263 #define _TRNG_STATUS_PREIF_DEFAULT                   0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
264 #define TRNG_STATUS_PREIF_DEFAULT                    (_TRNG_STATUS_PREIF_DEFAULT << 8)        /**< Shifted mode DEFAULT for TRNG_STATUS */
265 #define TRNG_STATUS_ALMIF                            (0x1UL << 9)                             /**< AIS31 Noise Alarm interrupt status */
266 #define _TRNG_STATUS_ALMIF_SHIFT                     9                                        /**< Shift value for TRNG_ALMIF */
267 #define _TRNG_STATUS_ALMIF_MASK                      0x200UL                                  /**< Bit mask for TRNG_ALMIF */
268 #define _TRNG_STATUS_ALMIF_DEFAULT                   0x00000000UL                             /**< Mode DEFAULT for TRNG_STATUS */
269 #define TRNG_STATUS_ALMIF_DEFAULT                    (_TRNG_STATUS_ALMIF_DEFAULT << 9)        /**< Shifted mode DEFAULT for TRNG_STATUS */
270 
271 /* Bit fields for TRNG INITWAITVAL */
272 #define _TRNG_INITWAITVAL_RESETVALUE                 0x000003FFUL                           /**< Default value for TRNG_INITWAITVAL */
273 #define _TRNG_INITWAITVAL_MASK                       0x000003FFUL                           /**< Mask for TRNG_INITWAITVAL */
274 #define _TRNG_INITWAITVAL_VALUE_SHIFT                0                                      /**< Shift value for TRNG_VALUE */
275 #define _TRNG_INITWAITVAL_VALUE_MASK                 0x3FFUL                                /**< Bit mask for TRNG_VALUE */
276 #define _TRNG_INITWAITVAL_VALUE_DEFAULT              0x000003FFUL                           /**< Mode DEFAULT for TRNG_INITWAITVAL */
277 #define TRNG_INITWAITVAL_VALUE_DEFAULT               (_TRNG_INITWAITVAL_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_INITWAITVAL */
278 
279 /* Bit fields for TRNG FIFO */
280 #define _TRNG_FIFO_RESETVALUE                        0x00000000UL                    /**< Default value for TRNG_FIFO */
281 #define _TRNG_FIFO_MASK                              0xFFFFFFFFUL                    /**< Mask for TRNG_FIFO */
282 #define _TRNG_FIFO_VALUE_SHIFT                       0                               /**< Shift value for TRNG_VALUE */
283 #define _TRNG_FIFO_VALUE_MASK                        0xFFFFFFFFUL                    /**< Bit mask for TRNG_VALUE */
284 #define _TRNG_FIFO_VALUE_DEFAULT                     0x00000000UL                    /**< Mode DEFAULT for TRNG_FIFO */
285 #define TRNG_FIFO_VALUE_DEFAULT                      (_TRNG_FIFO_VALUE_DEFAULT << 0) /**< Shifted mode DEFAULT for TRNG_FIFO */
286 
287 /* Bit fields for TRNG CORECLKCONTROL */
288 #define _TRNG_CORECLKCONTROL_RESETVALUE              0x00000000UL                                     /**< Default value for TRNG_CORECLKCONTROL */
289 #define _TRNG_CORECLKCONTROL_MASK                    0x00000071UL                                     /**< Mask for TRNG_CORECLKCONTROL */
290 #define TRNG_CORECLKCONTROL_CORECLKDIS               (0x1UL << 0)                                     /**< Core Clock Disable */
291 #define _TRNG_CORECLKCONTROL_CORECLKDIS_SHIFT        0                                                /**< Shift value for TRNG_CORECLKDIS */
292 #define _TRNG_CORECLKCONTROL_CORECLKDIS_MASK         0x1UL                                            /**< Bit mask for TRNG_CORECLKDIS */
293 #define _TRNG_CORECLKCONTROL_CORECLKDIS_DEFAULT      0x00000000UL                                     /**< Mode DEFAULT for TRNG_CORECLKCONTROL */
294 #define _TRNG_CORECLKCONTROL_CORECLKDIS_ENABLED      0x00000000UL                                     /**< Mode ENABLED for TRNG_CORECLKCONTROL */
295 #define _TRNG_CORECLKCONTROL_CORECLKDIS_DISABLED     0x00000001UL                                     /**< Mode DISABLED for TRNG_CORECLKCONTROL */
296 #define TRNG_CORECLKCONTROL_CORECLKDIS_DEFAULT       (_TRNG_CORECLKCONTROL_CORECLKDIS_DEFAULT << 0)   /**< Shifted mode DEFAULT for TRNG_CORECLKCONTROL */
297 #define TRNG_CORECLKCONTROL_CORECLKDIS_ENABLED       (_TRNG_CORECLKCONTROL_CORECLKDIS_ENABLED << 0)   /**< Shifted mode ENABLED for TRNG_CORECLKCONTROL */
298 #define TRNG_CORECLKCONTROL_CORECLKDIS_DISABLED      (_TRNG_CORECLKCONTROL_CORECLKDIS_DISABLED << 0)  /**< Shifted mode DISABLED for TRNG_CORECLKCONTROL */
299 #define _TRNG_CORECLKCONTROL_CORECLKPRESC_SHIFT      4                                                /**< Shift value for TRNG_CORECLKPRESC */
300 #define _TRNG_CORECLKCONTROL_CORECLKPRESC_MASK       0x70UL                                           /**< Bit mask for TRNG_CORECLKPRESC */
301 #define _TRNG_CORECLKCONTROL_CORECLKPRESC_DEFAULT    0x00000000UL                                     /**< Mode DEFAULT for TRNG_CORECLKCONTROL */
302 #define TRNG_CORECLKCONTROL_CORECLKPRESC_DEFAULT     (_TRNG_CORECLKCONTROL_CORECLKPRESC_DEFAULT << 4) /**< Shifted mode DEFAULT for TRNG_CORECLKCONTROL */
303 
304 /** @} */
305 /** @} End of group EFM32GG12B_TRNG */
306 /** @} End of group Parts */
307