1 /*
2 
3 Copyright (c) 2010 - 2025, Nordic Semiconductor ASA All rights reserved.
4 
5 SPDX-License-Identifier: BSD-3-Clause
6 
7 Redistribution and use in source and binary forms, with or without
8 modification, are permitted provided that the following conditions are met:
9 
10 1. Redistributions of source code must retain the above copyright notice, this
11    list of conditions and the following disclaimer.
12 
13 2. Redistributions in binary form must reproduce the above copyright
14    notice, this list of conditions and the following disclaimer in the
15    documentation and/or other materials provided with the distribution.
16 
17 3. Neither the name of Nordic Semiconductor ASA nor the names of its
18    contributors may be used to endorse or promote products derived from this
19    software without specific prior written permission.
20 
21 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 IMPLIED WARRANTIES OF MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE
24 ARE DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
25 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 POSSIBILITY OF SUCH DAMAGE.
32 
33 */
34 
35 #ifndef NRF54L09_ENGA_GLOBAL_H
36 #define NRF54L09_ENGA_GLOBAL_H
37 
38 #ifdef __cplusplus
39     extern "C" {
40 #endif
41 
42 
43 /* ========================================= Start of section using anonymous unions ========================================= */
44 
45 #include "compiler_abstraction.h"
46 
47 #if defined (__CC_ARM)
48   #pragma push
49   #pragma anon_unions
50 #elif defined (__ICCARM__)
51   #pragma language=extended
52 #elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
53   #pragma clang diagnostic push
54   #pragma clang diagnostic ignored "-Wc11-extensions"
55   #pragma clang diagnostic ignored "-Wreserved-id-macro"
56   #pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
57   #pragma clang diagnostic ignored "-Wnested-anon-types"
58 #elif defined (__GNUC__)
59   /* anonymous unions are enabled by default */
60 #elif defined (__TMS470__)
61   /* anonymous unions are enabled by default */
62 #elif defined (__TASKING__)
63   #pragma warning 586
64 #elif defined (__CSMC__)
65   /* anonymous unions are enabled by default */
66 #else
67   #warning Unsupported compiler type
68 #endif
69 
70 /* =========================================================================================================================== */
71 /* ================                                  Peripheral Address Map                                  ================ */
72 /* =========================================================================================================================== */
73 
74 #define NRF_FICR_NS_BASE                  0x00FFC000UL
75 #define NRF_UICR_S_BASE                   0x00FFD000UL
76 #define NRF_SICR_S_BASE                   0x00FFE000UL
77 #define NRF_CRACENCORE_S_BASE             0x50010000UL
78 #define NRF_SPU00_S_BASE                  0x50040000UL
79 #define NRF_MPC00_S_BASE                  0x50041000UL
80 #define NRF_DPPIC00_NS_BASE               0x40042000UL
81 #define NRF_DPPIC00_S_BASE                0x50042000UL
82 #define NRF_PPIB00_NS_BASE                0x40044000UL
83 #define NRF_PPIB00_S_BASE                 0x50044000UL
84 #define NRF_PPIB01_NS_BASE                0x40045000UL
85 #define NRF_PPIB01_S_BASE                 0x50045000UL
86 #define NRF_KMU_S_BASE                    0x50049000UL
87 #define NRF_AAR00_NS_BASE                 0x4004A000UL
88 #define NRF_CCM00_NS_BASE                 0x4004A000UL
89 #define NRF_AAR00_S_BASE                  0x5004A000UL
90 #define NRF_CCM00_S_BASE                  0x5004A000UL
91 #define NRF_ECB00_NS_BASE                 0x4004B000UL
92 #define NRF_ECB00_S_BASE                  0x5004B000UL
93 #define NRF_VPR00_NS_BASE                 0x4004C000UL
94 #define NRF_VPR00_S_BASE                  0x5004C000UL
95 #define NRF_GLITCHDET_S_BASE              0x5004E000UL
96 #define NRF_RRAMC_S_BASE                  0x5004E000UL
97 #define NRF_CTRLAP_NS_BASE                0x40052000UL
98 #define NRF_CTRLAP_S_BASE                 0x50052000UL
99 #define NRF_TAD_NS_BASE                   0x40053000UL
100 #define NRF_TAD_S_BASE                    0x50053000UL
101 #define NRF_TIMER00_NS_BASE               0x40055000UL
102 #define NRF_TIMER00_S_BASE                0x50055000UL
103 #define NRF_EGU00_NS_BASE                 0x40058000UL
104 #define NRF_EGU00_S_BASE                  0x50058000UL
105 #define NRF_CRACEN_S_BASE                 0x50059000UL
106 #define NRF_SPU10_S_BASE                  0x50080000UL
107 #define NRF_DPPIC10_NS_BASE               0x40082000UL
108 #define NRF_DPPIC10_S_BASE                0x50082000UL
109 #define NRF_PPIB10_NS_BASE                0x40083000UL
110 #define NRF_PPIB10_S_BASE                 0x50083000UL
111 #define NRF_PPIB11_NS_BASE                0x40084000UL
112 #define NRF_PPIB11_S_BASE                 0x50084000UL
113 #define NRF_TIMER10_NS_BASE               0x40085000UL
114 #define NRF_TIMER10_S_BASE                0x50085000UL
115 #define NRF_EGU10_NS_BASE                 0x40087000UL
116 #define NRF_EGU10_S_BASE                  0x50087000UL
117 #define NRF_RADIO_NS_BASE                 0x4008A000UL
118 #define NRF_RADIO_S_BASE                  0x5008A000UL
119 #define NRF_SPU20_S_BASE                  0x500C0000UL
120 #define NRF_DPPIC20_NS_BASE               0x400C2000UL
121 #define NRF_DPPIC20_S_BASE                0x500C2000UL
122 #define NRF_PPIB20_NS_BASE                0x400C3000UL
123 #define NRF_PPIB20_S_BASE                 0x500C3000UL
124 #define NRF_PPIB21_NS_BASE                0x400C4000UL
125 #define NRF_PPIB21_S_BASE                 0x500C4000UL
126 #define NRF_PPIB22_NS_BASE                0x400C5000UL
127 #define NRF_PPIB22_S_BASE                 0x500C5000UL
128 #define NRF_SPIM20_NS_BASE                0x400C6000UL
129 #define NRF_SPIS20_NS_BASE                0x400C6000UL
130 #define NRF_TWIM20_NS_BASE                0x400C6000UL
131 #define NRF_TWIS20_NS_BASE                0x400C6000UL
132 #define NRF_UARTE20_NS_BASE               0x400C6000UL
133 #define NRF_SPIM20_S_BASE                 0x500C6000UL
134 #define NRF_SPIS20_S_BASE                 0x500C6000UL
135 #define NRF_TWIM20_S_BASE                 0x500C6000UL
136 #define NRF_TWIS20_S_BASE                 0x500C6000UL
137 #define NRF_UARTE20_S_BASE                0x500C6000UL
138 #define NRF_SPIM21_NS_BASE                0x400C7000UL
139 #define NRF_SPIS21_NS_BASE                0x400C7000UL
140 #define NRF_TWIM21_NS_BASE                0x400C7000UL
141 #define NRF_TWIS21_NS_BASE                0x400C7000UL
142 #define NRF_UARTE21_NS_BASE               0x400C7000UL
143 #define NRF_SPIM21_S_BASE                 0x500C7000UL
144 #define NRF_SPIS21_S_BASE                 0x500C7000UL
145 #define NRF_TWIM21_S_BASE                 0x500C7000UL
146 #define NRF_TWIS21_S_BASE                 0x500C7000UL
147 #define NRF_UARTE21_S_BASE                0x500C7000UL
148 #define NRF_EGU20_NS_BASE                 0x400C9000UL
149 #define NRF_EGU20_S_BASE                  0x500C9000UL
150 #define NRF_TIMER20_NS_BASE               0x400CA000UL
151 #define NRF_TIMER20_S_BASE                0x500CA000UL
152 #define NRF_TIMER21_NS_BASE               0x400CB000UL
153 #define NRF_TIMER21_S_BASE                0x500CB000UL
154 #define NRF_TIMER22_NS_BASE               0x400CC000UL
155 #define NRF_TIMER22_S_BASE                0x500CC000UL
156 #define NRF_TIMER23_NS_BASE               0x400CD000UL
157 #define NRF_TIMER23_S_BASE                0x500CD000UL
158 #define NRF_TIMER24_NS_BASE               0x400CE000UL
159 #define NRF_TIMER24_S_BASE                0x500CE000UL
160 #define NRF_MEMCONF_NS_BASE               0x400CF000UL
161 #define NRF_MEMCONF_S_BASE                0x500CF000UL
162 #define NRF_SAADC_NS_BASE                 0x400D5000UL
163 #define NRF_SAADC_S_BASE                  0x500D5000UL
164 #define NRF_TEMP_NS_BASE                  0x400D7000UL
165 #define NRF_TEMP_S_BASE                   0x500D7000UL
166 #define NRF_P1_NS_BASE                    0x400D8200UL
167 #define NRF_P1_S_BASE                     0x500D8200UL
168 #define NRF_GPIOTE20_NS_BASE              0x400DA000UL
169 #define NRF_GPIOTE20_S_BASE               0x500DA000UL
170 #define NRF_GRTC_NS_BASE                  0x400E2000UL
171 #define NRF_GRTC_S_BASE                   0x500E2000UL
172 #define NRF_TAMPC_S_BASE                  0x500EF000UL
173 #define NRF_SPU30_S_BASE                  0x50100000UL
174 #define NRF_DPPIC30_NS_BASE               0x40102000UL
175 #define NRF_DPPIC30_S_BASE                0x50102000UL
176 #define NRF_PPIB30_NS_BASE                0x40103000UL
177 #define NRF_PPIB30_S_BASE                 0x50103000UL
178 #define NRF_SPIM30_NS_BASE                0x40104000UL
179 #define NRF_SPIS30_NS_BASE                0x40104000UL
180 #define NRF_TWIM30_NS_BASE                0x40104000UL
181 #define NRF_TWIS30_NS_BASE                0x40104000UL
182 #define NRF_UARTE30_NS_BASE               0x40104000UL
183 #define NRF_SPIM30_S_BASE                 0x50104000UL
184 #define NRF_SPIS30_S_BASE                 0x50104000UL
185 #define NRF_TWIM30_S_BASE                 0x50104000UL
186 #define NRF_TWIS30_S_BASE                 0x50104000UL
187 #define NRF_UARTE30_S_BASE                0x50104000UL
188 #define NRF_COMP_NS_BASE                  0x40106000UL
189 #define NRF_LPCOMP_NS_BASE                0x40106000UL
190 #define NRF_COMP_S_BASE                   0x50106000UL
191 #define NRF_LPCOMP_S_BASE                 0x50106000UL
192 #define NRF_WDT30_S_BASE                  0x50108000UL
193 #define NRF_WDT31_NS_BASE                 0x40109000UL
194 #define NRF_WDT31_S_BASE                  0x50109000UL
195 #define NRF_P0_NS_BASE                    0x4010A000UL
196 #define NRF_P0_S_BASE                     0x5010A000UL
197 #define NRF_GPIOTE30_NS_BASE              0x4010C000UL
198 #define NRF_GPIOTE30_S_BASE               0x5010C000UL
199 #define NRF_CLOCK_NS_BASE                 0x4010E000UL
200 #define NRF_POWER_NS_BASE                 0x4010E000UL
201 #define NRF_RESET_NS_BASE                 0x4010E000UL
202 #define NRF_CLOCK_S_BASE                  0x5010E000UL
203 #define NRF_POWER_S_BASE                  0x5010E000UL
204 #define NRF_RESET_S_BASE                  0x5010E000UL
205 #define NRF_OSCILLATORS_NS_BASE           0x40120000UL
206 #define NRF_REGULATORS_NS_BASE            0x40120000UL
207 #define NRF_OSCILLATORS_S_BASE            0x50120000UL
208 #define NRF_REGULATORS_S_BASE             0x50120000UL
209 
210 /* =========================================================================================================================== */
211 /* ================                                  Peripheral Declaration                                  ================ */
212 /* =========================================================================================================================== */
213 
214 #define NRF_FICR_NS                       ((NRF_FICR_Type*)                     NRF_FICR_NS_BASE)
215 #define NRF_UICR_S                        ((NRF_UICR_Type*)                     NRF_UICR_S_BASE)
216 #define NRF_SICR_S                        ((NRF_SICR_Type*)                     NRF_SICR_S_BASE)
217 #define NRF_CRACENCORE_S                  ((NRF_CRACENCORE_Type*)               NRF_CRACENCORE_S_BASE)
218 #define NRF_SPU00_S                       ((NRF_SPU_Type*)                      NRF_SPU00_S_BASE)
219 #define NRF_MPC00_S                       ((NRF_MPC_Type*)                      NRF_MPC00_S_BASE)
220 #define NRF_DPPIC00_NS                    ((NRF_DPPIC_Type*)                    NRF_DPPIC00_NS_BASE)
221 #define NRF_DPPIC00_S                     ((NRF_DPPIC_Type*)                    NRF_DPPIC00_S_BASE)
222 #define NRF_PPIB00_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB00_NS_BASE)
223 #define NRF_PPIB00_S                      ((NRF_PPIB_Type*)                     NRF_PPIB00_S_BASE)
224 #define NRF_PPIB01_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB01_NS_BASE)
225 #define NRF_PPIB01_S                      ((NRF_PPIB_Type*)                     NRF_PPIB01_S_BASE)
226 #define NRF_KMU_S                         ((NRF_KMU_Type*)                      NRF_KMU_S_BASE)
227 #define NRF_AAR00_NS                      ((NRF_AAR_Type*)                      NRF_AAR00_NS_BASE)
228 #define NRF_CCM00_NS                      ((NRF_CCM_Type*)                      NRF_CCM00_NS_BASE)
229 #define NRF_AAR00_S                       ((NRF_AAR_Type*)                      NRF_AAR00_S_BASE)
230 #define NRF_CCM00_S                       ((NRF_CCM_Type*)                      NRF_CCM00_S_BASE)
231 #define NRF_ECB00_NS                      ((NRF_ECB_Type*)                      NRF_ECB00_NS_BASE)
232 #define NRF_ECB00_S                       ((NRF_ECB_Type*)                      NRF_ECB00_S_BASE)
233 #define NRF_VPR00_NS                      ((NRF_VPR_Type*)                      NRF_VPR00_NS_BASE)
234 #define NRF_VPR00_S                       ((NRF_VPR_Type*)                      NRF_VPR00_S_BASE)
235 #define NRF_GLITCHDET_S                   ((NRF_GLITCHDET_Type*)                NRF_GLITCHDET_S_BASE)
236 #define NRF_RRAMC_S                       ((NRF_RRAMC_Type*)                    NRF_RRAMC_S_BASE)
237 #define NRF_CTRLAP_NS                     ((NRF_CTRLAPPERI_Type*)               NRF_CTRLAP_NS_BASE)
238 #define NRF_CTRLAP_S                      ((NRF_CTRLAPPERI_Type*)               NRF_CTRLAP_S_BASE)
239 #define NRF_TAD_NS                        ((NRF_TAD_Type*)                      NRF_TAD_NS_BASE)
240 #define NRF_TAD_S                         ((NRF_TAD_Type*)                      NRF_TAD_S_BASE)
241 #define NRF_TIMER00_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER00_NS_BASE)
242 #define NRF_TIMER00_S                     ((NRF_TIMER_Type*)                    NRF_TIMER00_S_BASE)
243 #define NRF_EGU00_NS                      ((NRF_EGU_Type*)                      NRF_EGU00_NS_BASE)
244 #define NRF_EGU00_S                       ((NRF_EGU_Type*)                      NRF_EGU00_S_BASE)
245 #define NRF_CRACEN_S                      ((NRF_CRACEN_Type*)                   NRF_CRACEN_S_BASE)
246 #define NRF_SPU10_S                       ((NRF_SPU_Type*)                      NRF_SPU10_S_BASE)
247 #define NRF_DPPIC10_NS                    ((NRF_DPPIC_Type*)                    NRF_DPPIC10_NS_BASE)
248 #define NRF_DPPIC10_S                     ((NRF_DPPIC_Type*)                    NRF_DPPIC10_S_BASE)
249 #define NRF_PPIB10_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB10_NS_BASE)
250 #define NRF_PPIB10_S                      ((NRF_PPIB_Type*)                     NRF_PPIB10_S_BASE)
251 #define NRF_PPIB11_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB11_NS_BASE)
252 #define NRF_PPIB11_S                      ((NRF_PPIB_Type*)                     NRF_PPIB11_S_BASE)
253 #define NRF_TIMER10_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER10_NS_BASE)
254 #define NRF_TIMER10_S                     ((NRF_TIMER_Type*)                    NRF_TIMER10_S_BASE)
255 #define NRF_EGU10_NS                      ((NRF_EGU_Type*)                      NRF_EGU10_NS_BASE)
256 #define NRF_EGU10_S                       ((NRF_EGU_Type*)                      NRF_EGU10_S_BASE)
257 #define NRF_RADIO_NS                      ((NRF_RADIO_Type*)                    NRF_RADIO_NS_BASE)
258 #define NRF_RADIO_S                       ((NRF_RADIO_Type*)                    NRF_RADIO_S_BASE)
259 #define NRF_SPU20_S                       ((NRF_SPU_Type*)                      NRF_SPU20_S_BASE)
260 #define NRF_DPPIC20_NS                    ((NRF_DPPIC_Type*)                    NRF_DPPIC20_NS_BASE)
261 #define NRF_DPPIC20_S                     ((NRF_DPPIC_Type*)                    NRF_DPPIC20_S_BASE)
262 #define NRF_PPIB20_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB20_NS_BASE)
263 #define NRF_PPIB20_S                      ((NRF_PPIB_Type*)                     NRF_PPIB20_S_BASE)
264 #define NRF_PPIB21_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB21_NS_BASE)
265 #define NRF_PPIB21_S                      ((NRF_PPIB_Type*)                     NRF_PPIB21_S_BASE)
266 #define NRF_PPIB22_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB22_NS_BASE)
267 #define NRF_PPIB22_S                      ((NRF_PPIB_Type*)                     NRF_PPIB22_S_BASE)
268 #define NRF_SPIM20_NS                     ((NRF_SPIM_Type*)                     NRF_SPIM20_NS_BASE)
269 #define NRF_SPIS20_NS                     ((NRF_SPIS_Type*)                     NRF_SPIS20_NS_BASE)
270 #define NRF_TWIM20_NS                     ((NRF_TWIM_Type*)                     NRF_TWIM20_NS_BASE)
271 #define NRF_TWIS20_NS                     ((NRF_TWIS_Type*)                     NRF_TWIS20_NS_BASE)
272 #define NRF_UARTE20_NS                    ((NRF_UARTE_Type*)                    NRF_UARTE20_NS_BASE)
273 #define NRF_SPIM20_S                      ((NRF_SPIM_Type*)                     NRF_SPIM20_S_BASE)
274 #define NRF_SPIS20_S                      ((NRF_SPIS_Type*)                     NRF_SPIS20_S_BASE)
275 #define NRF_TWIM20_S                      ((NRF_TWIM_Type*)                     NRF_TWIM20_S_BASE)
276 #define NRF_TWIS20_S                      ((NRF_TWIS_Type*)                     NRF_TWIS20_S_BASE)
277 #define NRF_UARTE20_S                     ((NRF_UARTE_Type*)                    NRF_UARTE20_S_BASE)
278 #define NRF_SPIM21_NS                     ((NRF_SPIM_Type*)                     NRF_SPIM21_NS_BASE)
279 #define NRF_SPIS21_NS                     ((NRF_SPIS_Type*)                     NRF_SPIS21_NS_BASE)
280 #define NRF_TWIM21_NS                     ((NRF_TWIM_Type*)                     NRF_TWIM21_NS_BASE)
281 #define NRF_TWIS21_NS                     ((NRF_TWIS_Type*)                     NRF_TWIS21_NS_BASE)
282 #define NRF_UARTE21_NS                    ((NRF_UARTE_Type*)                    NRF_UARTE21_NS_BASE)
283 #define NRF_SPIM21_S                      ((NRF_SPIM_Type*)                     NRF_SPIM21_S_BASE)
284 #define NRF_SPIS21_S                      ((NRF_SPIS_Type*)                     NRF_SPIS21_S_BASE)
285 #define NRF_TWIM21_S                      ((NRF_TWIM_Type*)                     NRF_TWIM21_S_BASE)
286 #define NRF_TWIS21_S                      ((NRF_TWIS_Type*)                     NRF_TWIS21_S_BASE)
287 #define NRF_UARTE21_S                     ((NRF_UARTE_Type*)                    NRF_UARTE21_S_BASE)
288 #define NRF_EGU20_NS                      ((NRF_EGU_Type*)                      NRF_EGU20_NS_BASE)
289 #define NRF_EGU20_S                       ((NRF_EGU_Type*)                      NRF_EGU20_S_BASE)
290 #define NRF_TIMER20_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER20_NS_BASE)
291 #define NRF_TIMER20_S                     ((NRF_TIMER_Type*)                    NRF_TIMER20_S_BASE)
292 #define NRF_TIMER21_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER21_NS_BASE)
293 #define NRF_TIMER21_S                     ((NRF_TIMER_Type*)                    NRF_TIMER21_S_BASE)
294 #define NRF_TIMER22_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER22_NS_BASE)
295 #define NRF_TIMER22_S                     ((NRF_TIMER_Type*)                    NRF_TIMER22_S_BASE)
296 #define NRF_TIMER23_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER23_NS_BASE)
297 #define NRF_TIMER23_S                     ((NRF_TIMER_Type*)                    NRF_TIMER23_S_BASE)
298 #define NRF_TIMER24_NS                    ((NRF_TIMER_Type*)                    NRF_TIMER24_NS_BASE)
299 #define NRF_TIMER24_S                     ((NRF_TIMER_Type*)                    NRF_TIMER24_S_BASE)
300 #define NRF_MEMCONF_NS                    ((NRF_MEMCONF_Type*)                  NRF_MEMCONF_NS_BASE)
301 #define NRF_MEMCONF_S                     ((NRF_MEMCONF_Type*)                  NRF_MEMCONF_S_BASE)
302 #define NRF_SAADC_NS                      ((NRF_SAADC_Type*)                    NRF_SAADC_NS_BASE)
303 #define NRF_SAADC_S                       ((NRF_SAADC_Type*)                    NRF_SAADC_S_BASE)
304 #define NRF_TEMP_NS                       ((NRF_TEMP_Type*)                     NRF_TEMP_NS_BASE)
305 #define NRF_TEMP_S                        ((NRF_TEMP_Type*)                     NRF_TEMP_S_BASE)
306 #define NRF_P1_NS                         ((NRF_GPIO_Type*)                     NRF_P1_NS_BASE)
307 #define NRF_P1_S                          ((NRF_GPIO_Type*)                     NRF_P1_S_BASE)
308 #define NRF_GPIOTE20_NS                   ((NRF_GPIOTE_Type*)                   NRF_GPIOTE20_NS_BASE)
309 #define NRF_GPIOTE20_S                    ((NRF_GPIOTE_Type*)                   NRF_GPIOTE20_S_BASE)
310 #define NRF_GRTC_NS                       ((NRF_GRTC_Type*)                     NRF_GRTC_NS_BASE)
311 #define NRF_GRTC_S                        ((NRF_GRTC_Type*)                     NRF_GRTC_S_BASE)
312 #define NRF_TAMPC_S                       ((NRF_TAMPC_Type*)                    NRF_TAMPC_S_BASE)
313 #define NRF_SPU30_S                       ((NRF_SPU_Type*)                      NRF_SPU30_S_BASE)
314 #define NRF_DPPIC30_NS                    ((NRF_DPPIC_Type*)                    NRF_DPPIC30_NS_BASE)
315 #define NRF_DPPIC30_S                     ((NRF_DPPIC_Type*)                    NRF_DPPIC30_S_BASE)
316 #define NRF_PPIB30_NS                     ((NRF_PPIB_Type*)                     NRF_PPIB30_NS_BASE)
317 #define NRF_PPIB30_S                      ((NRF_PPIB_Type*)                     NRF_PPIB30_S_BASE)
318 #define NRF_SPIM30_NS                     ((NRF_SPIM_Type*)                     NRF_SPIM30_NS_BASE)
319 #define NRF_SPIS30_NS                     ((NRF_SPIS_Type*)                     NRF_SPIS30_NS_BASE)
320 #define NRF_TWIM30_NS                     ((NRF_TWIM_Type*)                     NRF_TWIM30_NS_BASE)
321 #define NRF_TWIS30_NS                     ((NRF_TWIS_Type*)                     NRF_TWIS30_NS_BASE)
322 #define NRF_UARTE30_NS                    ((NRF_UARTE_Type*)                    NRF_UARTE30_NS_BASE)
323 #define NRF_SPIM30_S                      ((NRF_SPIM_Type*)                     NRF_SPIM30_S_BASE)
324 #define NRF_SPIS30_S                      ((NRF_SPIS_Type*)                     NRF_SPIS30_S_BASE)
325 #define NRF_TWIM30_S                      ((NRF_TWIM_Type*)                     NRF_TWIM30_S_BASE)
326 #define NRF_TWIS30_S                      ((NRF_TWIS_Type*)                     NRF_TWIS30_S_BASE)
327 #define NRF_UARTE30_S                     ((NRF_UARTE_Type*)                    NRF_UARTE30_S_BASE)
328 #define NRF_COMP_NS                       ((NRF_COMP_Type*)                     NRF_COMP_NS_BASE)
329 #define NRF_LPCOMP_NS                     ((NRF_LPCOMP_Type*)                   NRF_LPCOMP_NS_BASE)
330 #define NRF_COMP_S                        ((NRF_COMP_Type*)                     NRF_COMP_S_BASE)
331 #define NRF_LPCOMP_S                      ((NRF_LPCOMP_Type*)                   NRF_LPCOMP_S_BASE)
332 #define NRF_WDT30_S                       ((NRF_WDT_Type*)                      NRF_WDT30_S_BASE)
333 #define NRF_WDT31_NS                      ((NRF_WDT_Type*)                      NRF_WDT31_NS_BASE)
334 #define NRF_WDT31_S                       ((NRF_WDT_Type*)                      NRF_WDT31_S_BASE)
335 #define NRF_P0_NS                         ((NRF_GPIO_Type*)                     NRF_P0_NS_BASE)
336 #define NRF_P0_S                          ((NRF_GPIO_Type*)                     NRF_P0_S_BASE)
337 #define NRF_GPIOTE30_NS                   ((NRF_GPIOTE_Type*)                   NRF_GPIOTE30_NS_BASE)
338 #define NRF_GPIOTE30_S                    ((NRF_GPIOTE_Type*)                   NRF_GPIOTE30_S_BASE)
339 #define NRF_CLOCK_NS                      ((NRF_CLOCK_Type*)                    NRF_CLOCK_NS_BASE)
340 #define NRF_POWER_NS                      ((NRF_POWER_Type*)                    NRF_POWER_NS_BASE)
341 #define NRF_RESET_NS                      ((NRF_RESET_Type*)                    NRF_RESET_NS_BASE)
342 #define NRF_CLOCK_S                       ((NRF_CLOCK_Type*)                    NRF_CLOCK_S_BASE)
343 #define NRF_POWER_S                       ((NRF_POWER_Type*)                    NRF_POWER_S_BASE)
344 #define NRF_RESET_S                       ((NRF_RESET_Type*)                    NRF_RESET_S_BASE)
345 #define NRF_OSCILLATORS_NS                ((NRF_OSCILLATORS_Type*)              NRF_OSCILLATORS_NS_BASE)
346 #define NRF_REGULATORS_NS                 ((NRF_REGULATORS_Type*)               NRF_REGULATORS_NS_BASE)
347 #define NRF_OSCILLATORS_S                 ((NRF_OSCILLATORS_Type*)              NRF_OSCILLATORS_S_BASE)
348 #define NRF_REGULATORS_S                  ((NRF_REGULATORS_Type*)               NRF_REGULATORS_S_BASE)
349 
350 /* =========================================================================================================================== */
351 /* ================                                    TrustZone Remapping                                    ================ */
352 /* =========================================================================================================================== */
353 
354 #ifdef NRF_TRUSTZONE_NONSECURE                       /*!< Remap NRF_X_NS instances to NRF_X symbol for ease of use.            */
355   #define NRF_FICR                                NRF_FICR_NS
356   #define NRF_DPPIC00                             NRF_DPPIC00_NS
357   #define NRF_PPIB00                              NRF_PPIB00_NS
358   #define NRF_PPIB01                              NRF_PPIB01_NS
359   #define NRF_AAR00                               NRF_AAR00_NS
360   #define NRF_CCM00                               NRF_CCM00_NS
361   #define NRF_ECB00                               NRF_ECB00_NS
362   #define NRF_VPR00                               NRF_VPR00_NS
363   #define NRF_CTRLAP                              NRF_CTRLAP_NS
364   #define NRF_TAD                                 NRF_TAD_NS
365   #define NRF_TIMER00                             NRF_TIMER00_NS
366   #define NRF_EGU00                               NRF_EGU00_NS
367   #define NRF_DPPIC10                             NRF_DPPIC10_NS
368   #define NRF_PPIB10                              NRF_PPIB10_NS
369   #define NRF_PPIB11                              NRF_PPIB11_NS
370   #define NRF_TIMER10                             NRF_TIMER10_NS
371   #define NRF_EGU10                               NRF_EGU10_NS
372   #define NRF_RADIO                               NRF_RADIO_NS
373   #define NRF_DPPIC20                             NRF_DPPIC20_NS
374   #define NRF_PPIB20                              NRF_PPIB20_NS
375   #define NRF_PPIB21                              NRF_PPIB21_NS
376   #define NRF_PPIB22                              NRF_PPIB22_NS
377   #define NRF_SPIM20                              NRF_SPIM20_NS
378   #define NRF_SPIS20                              NRF_SPIS20_NS
379   #define NRF_TWIM20                              NRF_TWIM20_NS
380   #define NRF_TWIS20                              NRF_TWIS20_NS
381   #define NRF_UARTE20                             NRF_UARTE20_NS
382   #define NRF_SPIM21                              NRF_SPIM21_NS
383   #define NRF_SPIS21                              NRF_SPIS21_NS
384   #define NRF_TWIM21                              NRF_TWIM21_NS
385   #define NRF_TWIS21                              NRF_TWIS21_NS
386   #define NRF_UARTE21                             NRF_UARTE21_NS
387   #define NRF_EGU20                               NRF_EGU20_NS
388   #define NRF_TIMER20                             NRF_TIMER20_NS
389   #define NRF_TIMER21                             NRF_TIMER21_NS
390   #define NRF_TIMER22                             NRF_TIMER22_NS
391   #define NRF_TIMER23                             NRF_TIMER23_NS
392   #define NRF_TIMER24                             NRF_TIMER24_NS
393   #define NRF_MEMCONF                             NRF_MEMCONF_NS
394   #define NRF_SAADC                               NRF_SAADC_NS
395   #define NRF_TEMP                                NRF_TEMP_NS
396   #define NRF_P1                                  NRF_P1_NS
397   #define NRF_GPIOTE20                            NRF_GPIOTE20_NS
398   #define NRF_GRTC                                NRF_GRTC_NS
399   #define NRF_DPPIC30                             NRF_DPPIC30_NS
400   #define NRF_PPIB30                              NRF_PPIB30_NS
401   #define NRF_SPIM30                              NRF_SPIM30_NS
402   #define NRF_SPIS30                              NRF_SPIS30_NS
403   #define NRF_TWIM30                              NRF_TWIM30_NS
404   #define NRF_TWIS30                              NRF_TWIS30_NS
405   #define NRF_UARTE30                             NRF_UARTE30_NS
406   #define NRF_COMP                                NRF_COMP_NS
407   #define NRF_LPCOMP                              NRF_LPCOMP_NS
408   #define NRF_WDT31                               NRF_WDT31_NS
409   #define NRF_P0                                  NRF_P0_NS
410   #define NRF_GPIOTE30                            NRF_GPIOTE30_NS
411   #define NRF_CLOCK                               NRF_CLOCK_NS
412   #define NRF_POWER                               NRF_POWER_NS
413   #define NRF_RESET                               NRF_RESET_NS
414   #define NRF_OSCILLATORS                         NRF_OSCILLATORS_NS
415   #define NRF_REGULATORS                          NRF_REGULATORS_NS
416 #else                                                /*!< Remap NRF_X_S instances to NRF_X symbol for ease of use.             */
417   #define NRF_FICR                                NRF_FICR_NS
418   #define NRF_UICR                                NRF_UICR_S
419   #define NRF_SICR                                NRF_SICR_S
420   #define NRF_CRACENCORE                          NRF_CRACENCORE_S
421   #define NRF_SPU00                               NRF_SPU00_S
422   #define NRF_MPC00                               NRF_MPC00_S
423   #define NRF_DPPIC00                             NRF_DPPIC00_S
424   #define NRF_PPIB00                              NRF_PPIB00_S
425   #define NRF_PPIB01                              NRF_PPIB01_S
426   #define NRF_KMU                                 NRF_KMU_S
427   #define NRF_AAR00                               NRF_AAR00_S
428   #define NRF_CCM00                               NRF_CCM00_S
429   #define NRF_ECB00                               NRF_ECB00_S
430   #define NRF_VPR00                               NRF_VPR00_S
431   #define NRF_GLITCHDET                           NRF_GLITCHDET_S
432   #define NRF_RRAMC                               NRF_RRAMC_S
433   #define NRF_CTRLAP                              NRF_CTRLAP_S
434   #define NRF_TAD                                 NRF_TAD_S
435   #define NRF_TIMER00                             NRF_TIMER00_S
436   #define NRF_EGU00                               NRF_EGU00_S
437   #define NRF_CRACEN                              NRF_CRACEN_S
438   #define NRF_SPU10                               NRF_SPU10_S
439   #define NRF_DPPIC10                             NRF_DPPIC10_S
440   #define NRF_PPIB10                              NRF_PPIB10_S
441   #define NRF_PPIB11                              NRF_PPIB11_S
442   #define NRF_TIMER10                             NRF_TIMER10_S
443   #define NRF_EGU10                               NRF_EGU10_S
444   #define NRF_RADIO                               NRF_RADIO_S
445   #define NRF_SPU20                               NRF_SPU20_S
446   #define NRF_DPPIC20                             NRF_DPPIC20_S
447   #define NRF_PPIB20                              NRF_PPIB20_S
448   #define NRF_PPIB21                              NRF_PPIB21_S
449   #define NRF_PPIB22                              NRF_PPIB22_S
450   #define NRF_SPIM20                              NRF_SPIM20_S
451   #define NRF_SPIS20                              NRF_SPIS20_S
452   #define NRF_TWIM20                              NRF_TWIM20_S
453   #define NRF_TWIS20                              NRF_TWIS20_S
454   #define NRF_UARTE20                             NRF_UARTE20_S
455   #define NRF_SPIM21                              NRF_SPIM21_S
456   #define NRF_SPIS21                              NRF_SPIS21_S
457   #define NRF_TWIM21                              NRF_TWIM21_S
458   #define NRF_TWIS21                              NRF_TWIS21_S
459   #define NRF_UARTE21                             NRF_UARTE21_S
460   #define NRF_EGU20                               NRF_EGU20_S
461   #define NRF_TIMER20                             NRF_TIMER20_S
462   #define NRF_TIMER21                             NRF_TIMER21_S
463   #define NRF_TIMER22                             NRF_TIMER22_S
464   #define NRF_TIMER23                             NRF_TIMER23_S
465   #define NRF_TIMER24                             NRF_TIMER24_S
466   #define NRF_MEMCONF                             NRF_MEMCONF_S
467   #define NRF_SAADC                               NRF_SAADC_S
468   #define NRF_TEMP                                NRF_TEMP_S
469   #define NRF_P1                                  NRF_P1_S
470   #define NRF_GPIOTE20                            NRF_GPIOTE20_S
471   #define NRF_GRTC                                NRF_GRTC_S
472   #define NRF_TAMPC                               NRF_TAMPC_S
473   #define NRF_SPU30                               NRF_SPU30_S
474   #define NRF_DPPIC30                             NRF_DPPIC30_S
475   #define NRF_PPIB30                              NRF_PPIB30_S
476   #define NRF_SPIM30                              NRF_SPIM30_S
477   #define NRF_SPIS30                              NRF_SPIS30_S
478   #define NRF_TWIM30                              NRF_TWIM30_S
479   #define NRF_TWIS30                              NRF_TWIS30_S
480   #define NRF_UARTE30                             NRF_UARTE30_S
481   #define NRF_COMP                                NRF_COMP_S
482   #define NRF_LPCOMP                              NRF_LPCOMP_S
483   #define NRF_WDT30                               NRF_WDT30_S
484   #define NRF_WDT31                               NRF_WDT31_S
485   #define NRF_P0                                  NRF_P0_S
486   #define NRF_GPIOTE30                            NRF_GPIOTE30_S
487   #define NRF_CLOCK                               NRF_CLOCK_S
488   #define NRF_POWER                               NRF_POWER_S
489   #define NRF_RESET                               NRF_RESET_S
490   #define NRF_OSCILLATORS                         NRF_OSCILLATORS_S
491   #define NRF_REGULATORS                          NRF_REGULATORS_S
492 #endif                                               /*!< NRF_TRUSTZONE_NONSECURE                                              */
493 
494 /* ========================================== End of section using anonymous unions ========================================== */
495 
496 #if defined (__CC_ARM)
497   #pragma pop
498 #elif defined (__ICCARM__)
499   /* leave anonymous unions enabled */
500 #elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
501   #pragma clang diagnostic pop
502 #elif defined (__GNUC__)
503   /* anonymous unions are enabled by default */
504 #elif defined (__TMS470__)
505   /* anonymous unions are enabled by default */
506 #elif defined (__TASKING__)
507   #pragma warning restore
508 #elif defined (__CSMC__)
509   /* anonymous unions are enabled by default */
510 #endif
511 
512 
513 #ifdef __cplusplus
514 }
515 #endif
516 #endif /* NRF54L09_ENGA_GLOBAL_H */
517 
518