ra4e2_pac/
lib.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.30.00, with svd2pac 0.6.0 on Thu, 24 Jul 2025 04:48:35 +0000
19#![cfg_attr(not(feature = "tracing"), no_std)]
20#![allow(non_camel_case_types)]
21#![doc = "Arm Cortex-M33 based Microcontroller RA4E2 group"]
22pub mod common;
23pub use common::*;
24
25#[cfg(feature = "tracing")]
26pub mod reg_name;
27#[cfg(feature = "tracing")]
28pub mod tracing;
29
30#[cfg(feature = "adc120")]
31pub mod adc120;
32#[cfg(feature = "agtw0")]
33pub mod agtw0;
34#[cfg(feature = "bus")]
35pub mod bus;
36#[cfg(feature = "cac")]
37pub mod cac;
38#[cfg(feature = "cache")]
39pub mod cache;
40#[cfg(feature = "canfd_b")]
41pub mod canfd_b;
42#[cfg(feature = "cec")]
43pub mod cec;
44#[cfg(feature = "cpscu")]
45pub mod cpscu;
46#[cfg(feature = "crc")]
47pub mod crc;
48#[cfg(feature = "dac12")]
49pub mod dac12;
50#[cfg(feature = "dbg")]
51pub mod dbg;
52#[cfg(feature = "dma")]
53pub mod dma;
54#[cfg(feature = "dmac0")]
55pub mod dmac0;
56#[cfg(feature = "doc")]
57pub mod doc;
58#[cfg(feature = "dtc")]
59pub mod dtc;
60#[cfg(feature = "eccmb")]
61pub mod eccmb;
62#[cfg(feature = "elc")]
63pub mod elc;
64#[cfg(feature = "faci")]
65pub mod faci;
66#[cfg(feature = "fcache")]
67pub mod fcache;
68#[cfg(feature = "flad")]
69pub mod flad;
70#[cfg(feature = "gpt16e0")]
71pub mod gpt16e0;
72#[cfg(feature = "gpt_ops")]
73pub mod gpt_ops;
74#[cfg(feature = "i3c")]
75pub mod i3c;
76#[cfg(feature = "icu")]
77pub mod icu;
78#[cfg(feature = "iwdt")]
79pub mod iwdt;
80#[cfg(feature = "mstp")]
81pub mod mstp;
82#[cfg(feature = "pfs")]
83pub mod pfs;
84#[cfg(feature = "poeg")]
85pub mod poeg;
86#[cfg(feature = "port0")]
87pub mod port0;
88#[cfg(feature = "port1")]
89pub mod port1;
90#[cfg(feature = "pscu")]
91pub mod pscu;
92#[cfg(feature = "rmpu")]
93pub mod rmpu;
94#[cfg(feature = "rtc")]
95pub mod rtc;
96#[cfg(feature = "sci0")]
97pub mod sci0;
98#[cfg(feature = "spi0")]
99pub mod spi0;
100#[cfg(feature = "sram")]
101pub mod sram;
102#[cfg(feature = "ssie0")]
103pub mod ssie0;
104#[cfg(feature = "sysc")]
105pub mod sysc;
106#[cfg(feature = "tsd")]
107pub mod tsd;
108#[cfg(feature = "tsn")]
109pub mod tsn;
110#[cfg(feature = "tzf")]
111pub mod tzf;
112#[cfg(feature = "usbfs")]
113pub mod usbfs;
114#[cfg(feature = "wdt")]
115pub mod wdt;
116
117#[cfg(feature = "rmpu")]
118#[derive(Copy, Clone, Eq, PartialEq)]
119pub struct Rmpu {
120    ptr: *mut u8,
121}
122#[cfg(feature = "rmpu")]
123pub const RMPU: self::Rmpu = self::Rmpu {
124    ptr: 0x40000000u32 as _,
125};
126#[cfg(feature = "tzf")]
127#[derive(Copy, Clone, Eq, PartialEq)]
128pub struct Tzf {
129    ptr: *mut u8,
130}
131#[cfg(feature = "tzf")]
132pub const TZF: self::Tzf = self::Tzf {
133    ptr: 0x40000e00u32 as _,
134};
135#[cfg(feature = "sram")]
136#[derive(Copy, Clone, Eq, PartialEq)]
137pub struct Sram {
138    ptr: *mut u8,
139}
140#[cfg(feature = "sram")]
141pub const SRAM: self::Sram = self::Sram {
142    ptr: 0x40002000u32 as _,
143};
144#[cfg(feature = "bus")]
145#[derive(Copy, Clone, Eq, PartialEq)]
146pub struct Bus {
147    ptr: *mut u8,
148}
149#[cfg(feature = "bus")]
150pub const BUS: self::Bus = self::Bus {
151    ptr: 0x40003000u32 as _,
152};
153#[cfg(feature = "dmac0")]
154#[derive(Copy, Clone, Eq, PartialEq)]
155pub struct Dmac0 {
156    ptr: *mut u8,
157}
158#[cfg(feature = "dmac0")]
159pub const DMAC0: self::Dmac0 = self::Dmac0 {
160    ptr: 0x40005000u32 as _,
161};
162#[cfg(feature = "dmac1")]
163pub const DMAC1: self::Dmac0 = self::Dmac0 {
164    ptr: 0x40005040u32 as _,
165};
166#[cfg(feature = "dmac2")]
167pub const DMAC2: self::Dmac0 = self::Dmac0 {
168    ptr: 0x40005080u32 as _,
169};
170#[cfg(feature = "dmac3")]
171pub const DMAC3: self::Dmac0 = self::Dmac0 {
172    ptr: 0x400050c0u32 as _,
173};
174#[cfg(feature = "dmac4")]
175pub const DMAC4: self::Dmac0 = self::Dmac0 {
176    ptr: 0x40005100u32 as _,
177};
178#[cfg(feature = "dmac5")]
179pub const DMAC5: self::Dmac0 = self::Dmac0 {
180    ptr: 0x40005140u32 as _,
181};
182#[cfg(feature = "dmac6")]
183pub const DMAC6: self::Dmac0 = self::Dmac0 {
184    ptr: 0x40005180u32 as _,
185};
186#[cfg(feature = "dmac7")]
187pub const DMAC7: self::Dmac0 = self::Dmac0 {
188    ptr: 0x400051c0u32 as _,
189};
190#[cfg(feature = "dma")]
191#[derive(Copy, Clone, Eq, PartialEq)]
192pub struct Dma {
193    ptr: *mut u8,
194}
195#[cfg(feature = "dma")]
196pub const DMA: self::Dma = self::Dma {
197    ptr: 0x40005200u32 as _,
198};
199#[cfg(feature = "dtc")]
200#[derive(Copy, Clone, Eq, PartialEq)]
201pub struct Dtc {
202    ptr: *mut u8,
203}
204#[cfg(feature = "dtc")]
205pub const DTC: self::Dtc = self::Dtc {
206    ptr: 0x40005400u32 as _,
207};
208#[cfg(feature = "icu")]
209#[derive(Copy, Clone, Eq, PartialEq)]
210pub struct Icu {
211    ptr: *mut u8,
212}
213#[cfg(feature = "icu")]
214pub const ICU: self::Icu = self::Icu {
215    ptr: 0x40006000u32 as _,
216};
217#[cfg(feature = "cache")]
218#[derive(Copy, Clone, Eq, PartialEq)]
219pub struct Cache {
220    ptr: *mut u8,
221}
222#[cfg(feature = "cache")]
223pub const CACHE: self::Cache = self::Cache {
224    ptr: 0x40007000u32 as _,
225};
226#[cfg(feature = "cpscu")]
227#[derive(Copy, Clone, Eq, PartialEq)]
228pub struct Cpscu {
229    ptr: *mut u8,
230}
231#[cfg(feature = "cpscu")]
232pub const CPSCU: self::Cpscu = self::Cpscu {
233    ptr: 0x40008000u32 as _,
234};
235#[cfg(feature = "dbg")]
236#[derive(Copy, Clone, Eq, PartialEq)]
237pub struct Dbg {
238    ptr: *mut u8,
239}
240#[cfg(feature = "dbg")]
241pub const DBG: self::Dbg = self::Dbg {
242    ptr: 0x4001b000u32 as _,
243};
244#[cfg(feature = "fcache")]
245#[derive(Copy, Clone, Eq, PartialEq)]
246pub struct Fcache {
247    ptr: *mut u8,
248}
249#[cfg(feature = "fcache")]
250pub const FCACHE: self::Fcache = self::Fcache {
251    ptr: 0x4001c100u32 as _,
252};
253#[cfg(feature = "sysc")]
254#[derive(Copy, Clone, Eq, PartialEq)]
255pub struct Sysc {
256    ptr: *mut u8,
257}
258#[cfg(feature = "sysc")]
259pub const SYSC: self::Sysc = self::Sysc {
260    ptr: 0x4001e000u32 as _,
261};
262#[cfg(feature = "port0")]
263#[derive(Copy, Clone, Eq, PartialEq)]
264pub struct Port0 {
265    ptr: *mut u8,
266}
267#[cfg(feature = "port0")]
268pub const PORT0: self::Port0 = self::Port0 {
269    ptr: 0x40080000u32 as _,
270};
271#[cfg(feature = "port1")]
272#[derive(Copy, Clone, Eq, PartialEq)]
273pub struct Port1 {
274    ptr: *mut u8,
275}
276#[cfg(feature = "port1")]
277pub const PORT1: self::Port1 = self::Port1 {
278    ptr: 0x40080020u32 as _,
279};
280#[cfg(feature = "port2")]
281pub const PORT2: self::Port1 = self::Port1 {
282    ptr: 0x40080040u32 as _,
283};
284#[cfg(feature = "port3")]
285pub const PORT3: self::Port1 = self::Port1 {
286    ptr: 0x40080060u32 as _,
287};
288#[cfg(feature = "port4")]
289pub const PORT4: self::Port1 = self::Port1 {
290    ptr: 0x40080080u32 as _,
291};
292#[cfg(feature = "port5")]
293pub const PORT5: self::Port0 = self::Port0 {
294    ptr: 0x400800a0u32 as _,
295};
296#[cfg(feature = "port8")]
297pub const PORT8: self::Port0 = self::Port0 {
298    ptr: 0x40080100u32 as _,
299};
300#[cfg(feature = "pfs")]
301#[derive(Copy, Clone, Eq, PartialEq)]
302pub struct Pfs {
303    ptr: *mut u8,
304}
305#[cfg(feature = "pfs")]
306pub const PFS: self::Pfs = self::Pfs {
307    ptr: 0x40080800u32 as _,
308};
309#[cfg(feature = "elc")]
310#[derive(Copy, Clone, Eq, PartialEq)]
311pub struct Elc {
312    ptr: *mut u8,
313}
314#[cfg(feature = "elc")]
315pub const ELC: self::Elc = self::Elc {
316    ptr: 0x40082000u32 as _,
317};
318#[cfg(feature = "rtc")]
319#[derive(Copy, Clone, Eq, PartialEq)]
320pub struct Rtc {
321    ptr: *mut u8,
322}
323#[cfg(feature = "rtc")]
324pub const RTC: self::Rtc = self::Rtc {
325    ptr: 0x40083000u32 as _,
326};
327#[cfg(feature = "iwdt")]
328#[derive(Copy, Clone, Eq, PartialEq)]
329pub struct Iwdt {
330    ptr: *mut u8,
331}
332#[cfg(feature = "iwdt")]
333pub const IWDT: self::Iwdt = self::Iwdt {
334    ptr: 0x40083200u32 as _,
335};
336#[cfg(feature = "wdt")]
337#[derive(Copy, Clone, Eq, PartialEq)]
338pub struct Wdt {
339    ptr: *mut u8,
340}
341#[cfg(feature = "wdt")]
342pub const WDT: self::Wdt = self::Wdt {
343    ptr: 0x40083400u32 as _,
344};
345#[cfg(feature = "cac")]
346#[derive(Copy, Clone, Eq, PartialEq)]
347pub struct Cac {
348    ptr: *mut u8,
349}
350#[cfg(feature = "cac")]
351pub const CAC: self::Cac = self::Cac {
352    ptr: 0x40083600u32 as _,
353};
354#[cfg(feature = "mstp")]
355#[derive(Copy, Clone, Eq, PartialEq)]
356pub struct Mstp {
357    ptr: *mut u8,
358}
359#[cfg(feature = "mstp")]
360pub const MSTP: self::Mstp = self::Mstp {
361    ptr: 0x40084000u32 as _,
362};
363#[cfg(feature = "poeg")]
364#[derive(Copy, Clone, Eq, PartialEq)]
365pub struct Poeg {
366    ptr: *mut u8,
367}
368#[cfg(feature = "poeg")]
369pub const POEG: self::Poeg = self::Poeg {
370    ptr: 0x4008a000u32 as _,
371};
372#[cfg(feature = "usbfs")]
373#[derive(Copy, Clone, Eq, PartialEq)]
374pub struct Usbfs {
375    ptr: *mut u8,
376}
377#[cfg(feature = "usbfs")]
378pub const USBFS: self::Usbfs = self::Usbfs {
379    ptr: 0x40090000u32 as _,
380};
381#[cfg(feature = "ssie0")]
382#[derive(Copy, Clone, Eq, PartialEq)]
383pub struct Ssie0 {
384    ptr: *mut u8,
385}
386#[cfg(feature = "ssie0")]
387pub const SSIE0: self::Ssie0 = self::Ssie0 {
388    ptr: 0x4009d000u32 as _,
389};
390#[cfg(feature = "cec")]
391#[derive(Copy, Clone, Eq, PartialEq)]
392pub struct Cec {
393    ptr: *mut u8,
394}
395#[cfg(feature = "cec")]
396pub const CEC: self::Cec = self::Cec {
397    ptr: 0x400ac000u32 as _,
398};
399#[cfg(feature = "canfd_b")]
400#[derive(Copy, Clone, Eq, PartialEq)]
401pub struct CanfdB {
402    ptr: *mut u8,
403}
404#[cfg(feature = "canfd_b")]
405pub const CANFD_B: self::CanfdB = self::CanfdB {
406    ptr: 0x400b0000u32 as _,
407};
408#[cfg(feature = "pscu")]
409#[derive(Copy, Clone, Eq, PartialEq)]
410pub struct Pscu {
411    ptr: *mut u8,
412}
413#[cfg(feature = "pscu")]
414pub const PSCU: self::Pscu = self::Pscu {
415    ptr: 0x400e0000u32 as _,
416};
417#[cfg(feature = "agtw0")]
418#[derive(Copy, Clone, Eq, PartialEq)]
419pub struct Agtw0 {
420    ptr: *mut u8,
421}
422#[cfg(feature = "agtw0")]
423pub const AGTW0: self::Agtw0 = self::Agtw0 {
424    ptr: 0x400e8000u32 as _,
425};
426#[cfg(feature = "agtw1")]
427pub const AGTW1: self::Agtw0 = self::Agtw0 {
428    ptr: 0x400e8100u32 as _,
429};
430#[cfg(feature = "tsn")]
431#[derive(Copy, Clone, Eq, PartialEq)]
432pub struct Tsn {
433    ptr: *mut u8,
434}
435#[cfg(feature = "tsn")]
436pub const TSN: self::Tsn = self::Tsn {
437    ptr: 0x400f3000u32 as _,
438};
439#[cfg(feature = "crc")]
440#[derive(Copy, Clone, Eq, PartialEq)]
441pub struct Crc {
442    ptr: *mut u8,
443}
444#[cfg(feature = "crc")]
445pub const CRC: self::Crc = self::Crc {
446    ptr: 0x40108000u32 as _,
447};
448#[cfg(feature = "doc")]
449#[derive(Copy, Clone, Eq, PartialEq)]
450pub struct Doc {
451    ptr: *mut u8,
452}
453#[cfg(feature = "doc")]
454pub const DOC: self::Doc = self::Doc {
455    ptr: 0x40109000u32 as _,
456};
457#[cfg(feature = "sci0")]
458#[derive(Copy, Clone, Eq, PartialEq)]
459pub struct Sci0 {
460    ptr: *mut u8,
461}
462#[cfg(feature = "sci0")]
463pub const SCI0: self::Sci0 = self::Sci0 {
464    ptr: 0x40118000u32 as _,
465};
466#[cfg(feature = "sci9")]
467pub const SCI9: self::Sci0 = self::Sci0 {
468    ptr: 0x40118900u32 as _,
469};
470#[cfg(feature = "spi0")]
471#[derive(Copy, Clone, Eq, PartialEq)]
472pub struct Spi0 {
473    ptr: *mut u8,
474}
475#[cfg(feature = "spi0")]
476pub const SPI0: self::Spi0 = self::Spi0 {
477    ptr: 0x4011a000u32 as _,
478};
479#[cfg(feature = "spi1")]
480pub const SPI1: self::Spi0 = self::Spi0 {
481    ptr: 0x4011a100u32 as _,
482};
483#[cfg(feature = "i3c")]
484#[derive(Copy, Clone, Eq, PartialEq)]
485pub struct I3C {
486    ptr: *mut u8,
487}
488#[cfg(feature = "i3c")]
489pub const I3C: self::I3C = self::I3C {
490    ptr: 0x4011f000u32 as _,
491};
492#[cfg(feature = "eccmb")]
493#[derive(Copy, Clone, Eq, PartialEq)]
494pub struct Eccmb {
495    ptr: *mut u8,
496}
497#[cfg(feature = "eccmb")]
498pub const ECCMB: self::Eccmb = self::Eccmb {
499    ptr: 0x4012f200u32 as _,
500};
501#[cfg(feature = "gpt16e0")]
502#[derive(Copy, Clone, Eq, PartialEq)]
503pub struct Gpt16E0 {
504    ptr: *mut u8,
505}
506#[cfg(feature = "gpt16e0")]
507pub const GPT16E0: self::Gpt16E0 = self::Gpt16E0 {
508    ptr: 0x40169000u32 as _,
509};
510#[cfg(feature = "gpt16e1")]
511pub const GPT16E1: self::Gpt16E0 = self::Gpt16E0 {
512    ptr: 0x40169100u32 as _,
513};
514#[cfg(feature = "gpt16e4")]
515pub const GPT16E4: self::Gpt16E0 = self::Gpt16E0 {
516    ptr: 0x40169400u32 as _,
517};
518#[cfg(feature = "gpt16e5")]
519pub const GPT16E5: self::Gpt16E0 = self::Gpt16E0 {
520    ptr: 0x40169500u32 as _,
521};
522#[cfg(feature = "gpt_ops")]
523#[derive(Copy, Clone, Eq, PartialEq)]
524pub struct GptOps {
525    ptr: *mut u8,
526}
527#[cfg(feature = "gpt_ops")]
528pub const GPT_OPS: self::GptOps = self::GptOps {
529    ptr: 0x40169a00u32 as _,
530};
531#[cfg(feature = "adc120")]
532#[derive(Copy, Clone, Eq, PartialEq)]
533pub struct Adc120 {
534    ptr: *mut u8,
535}
536#[cfg(feature = "adc120")]
537pub const ADC120: self::Adc120 = self::Adc120 {
538    ptr: 0x40170000u32 as _,
539};
540#[cfg(feature = "dac12")]
541#[derive(Copy, Clone, Eq, PartialEq)]
542pub struct Dac12 {
543    ptr: *mut u8,
544}
545#[cfg(feature = "dac12")]
546pub const DAC12: self::Dac12 = self::Dac12 {
547    ptr: 0x40171000u32 as _,
548};
549#[cfg(feature = "tsd")]
550#[derive(Copy, Clone, Eq, PartialEq)]
551pub struct Tsd {
552    ptr: *mut u8,
553}
554#[cfg(feature = "tsd")]
555pub const TSD: self::Tsd = self::Tsd {
556    ptr: 0x407fb000u32 as _,
557};
558#[cfg(feature = "flad")]
559#[derive(Copy, Clone, Eq, PartialEq)]
560pub struct Flad {
561    ptr: *mut u8,
562}
563#[cfg(feature = "flad")]
564pub const FLAD: self::Flad = self::Flad {
565    ptr: 0x407fc000u32 as _,
566};
567#[cfg(feature = "faci")]
568#[derive(Copy, Clone, Eq, PartialEq)]
569pub struct Faci {
570    ptr: *mut u8,
571}
572#[cfg(feature = "faci")]
573pub const FACI: self::Faci = self::Faci {
574    ptr: 0x407fe000u32 as _,
575};
576
577pub use cortex_m::peripheral::Peripherals as CorePeripherals;
578pub use cortex_m::peripheral::{CBP, CPUID, DCB, DWT, FPB, FPU, ITM, MPU, NVIC, SCB, SYST, TPIU};
579#[doc = "Number available in the NVIC for configuring priority"]
580pub const NVIC_PRIO_BITS: u8 = 4;
581#[doc(hidden)]
582pub union Vector {
583    _handler: unsafe extern "C" fn(),
584    _reserved: u32,
585}
586#[cfg(feature = "rt")]
587pub use self::Interrupt as interrupt;
588#[cfg(feature = "rt")]
589pub use cortex_m_rt::interrupt;
590#[cfg(feature = "rt")]
591pub mod interrupt_handlers {
592    unsafe extern "C" {
593        pub fn IEL0();
594        pub fn IEL1();
595        pub fn IEL2();
596        pub fn IEL3();
597        pub fn IEL4();
598        pub fn IEL5();
599        pub fn IEL6();
600        pub fn IEL7();
601        pub fn IEL8();
602        pub fn IEL9();
603        pub fn IEL10();
604        pub fn IEL11();
605        pub fn IEL12();
606        pub fn IEL13();
607        pub fn IEL14();
608        pub fn IEL15();
609        pub fn IEL16();
610        pub fn IEL17();
611        pub fn IEL18();
612        pub fn IEL19();
613        pub fn IEL20();
614        pub fn IEL21();
615        pub fn IEL22();
616        pub fn IEL23();
617        pub fn IEL24();
618        pub fn IEL25();
619        pub fn IEL26();
620        pub fn IEL27();
621        pub fn IEL28();
622        pub fn IEL29();
623        pub fn IEL30();
624        pub fn IEL31();
625        pub fn IEL32();
626        pub fn IEL33();
627        pub fn IEL34();
628        pub fn IEL35();
629        pub fn IEL36();
630        pub fn IEL37();
631        pub fn IEL38();
632        pub fn IEL39();
633        pub fn IEL40();
634        pub fn IEL41();
635        pub fn IEL42();
636        pub fn IEL43();
637        pub fn IEL44();
638        pub fn IEL45();
639        pub fn IEL46();
640        pub fn IEL47();
641        pub fn IEL48();
642        pub fn IEL49();
643        pub fn IEL50();
644        pub fn IEL51();
645        pub fn IEL52();
646        pub fn IEL53();
647        pub fn IEL54();
648        pub fn IEL55();
649        pub fn IEL56();
650        pub fn IEL57();
651        pub fn IEL58();
652        pub fn IEL59();
653        pub fn IEL60();
654        pub fn IEL61();
655        pub fn IEL62();
656        pub fn IEL63();
657        pub fn IEL64();
658        pub fn IEL65();
659        pub fn IEL66();
660        pub fn IEL67();
661        pub fn IEL68();
662        pub fn IEL69();
663        pub fn IEL70();
664        pub fn IEL71();
665        pub fn IEL72();
666        pub fn IEL73();
667        pub fn IEL74();
668        pub fn IEL75();
669        pub fn IEL76();
670        pub fn IEL77();
671        pub fn IEL78();
672        pub fn IEL79();
673        pub fn IEL80();
674        pub fn IEL81();
675        pub fn IEL82();
676        pub fn IEL83();
677        pub fn IEL84();
678        pub fn IEL85();
679        pub fn IEL86();
680        pub fn IEL87();
681        pub fn IEL88();
682        pub fn IEL89();
683        pub fn IEL90();
684        pub fn IEL91();
685        pub fn IEL92();
686        pub fn IEL93();
687        pub fn IEL94();
688        pub fn IEL95();
689    }
690}
691#[cfg(feature = "rt")]
692#[doc(hidden)]
693#[unsafe(link_section = ".vector_table.interrupts")]
694#[unsafe(no_mangle)]
695pub static __INTERRUPTS: [Vector; 96] = [
696    Vector {
697        _handler: interrupt_handlers::IEL0,
698    },
699    Vector {
700        _handler: interrupt_handlers::IEL1,
701    },
702    Vector {
703        _handler: interrupt_handlers::IEL2,
704    },
705    Vector {
706        _handler: interrupt_handlers::IEL3,
707    },
708    Vector {
709        _handler: interrupt_handlers::IEL4,
710    },
711    Vector {
712        _handler: interrupt_handlers::IEL5,
713    },
714    Vector {
715        _handler: interrupt_handlers::IEL6,
716    },
717    Vector {
718        _handler: interrupt_handlers::IEL7,
719    },
720    Vector {
721        _handler: interrupt_handlers::IEL8,
722    },
723    Vector {
724        _handler: interrupt_handlers::IEL9,
725    },
726    Vector {
727        _handler: interrupt_handlers::IEL10,
728    },
729    Vector {
730        _handler: interrupt_handlers::IEL11,
731    },
732    Vector {
733        _handler: interrupt_handlers::IEL12,
734    },
735    Vector {
736        _handler: interrupt_handlers::IEL13,
737    },
738    Vector {
739        _handler: interrupt_handlers::IEL14,
740    },
741    Vector {
742        _handler: interrupt_handlers::IEL15,
743    },
744    Vector {
745        _handler: interrupt_handlers::IEL16,
746    },
747    Vector {
748        _handler: interrupt_handlers::IEL17,
749    },
750    Vector {
751        _handler: interrupt_handlers::IEL18,
752    },
753    Vector {
754        _handler: interrupt_handlers::IEL19,
755    },
756    Vector {
757        _handler: interrupt_handlers::IEL20,
758    },
759    Vector {
760        _handler: interrupt_handlers::IEL21,
761    },
762    Vector {
763        _handler: interrupt_handlers::IEL22,
764    },
765    Vector {
766        _handler: interrupt_handlers::IEL23,
767    },
768    Vector {
769        _handler: interrupt_handlers::IEL24,
770    },
771    Vector {
772        _handler: interrupt_handlers::IEL25,
773    },
774    Vector {
775        _handler: interrupt_handlers::IEL26,
776    },
777    Vector {
778        _handler: interrupt_handlers::IEL27,
779    },
780    Vector {
781        _handler: interrupt_handlers::IEL28,
782    },
783    Vector {
784        _handler: interrupt_handlers::IEL29,
785    },
786    Vector {
787        _handler: interrupt_handlers::IEL30,
788    },
789    Vector {
790        _handler: interrupt_handlers::IEL31,
791    },
792    Vector {
793        _handler: interrupt_handlers::IEL32,
794    },
795    Vector {
796        _handler: interrupt_handlers::IEL33,
797    },
798    Vector {
799        _handler: interrupt_handlers::IEL34,
800    },
801    Vector {
802        _handler: interrupt_handlers::IEL35,
803    },
804    Vector {
805        _handler: interrupt_handlers::IEL36,
806    },
807    Vector {
808        _handler: interrupt_handlers::IEL37,
809    },
810    Vector {
811        _handler: interrupt_handlers::IEL38,
812    },
813    Vector {
814        _handler: interrupt_handlers::IEL39,
815    },
816    Vector {
817        _handler: interrupt_handlers::IEL40,
818    },
819    Vector {
820        _handler: interrupt_handlers::IEL41,
821    },
822    Vector {
823        _handler: interrupt_handlers::IEL42,
824    },
825    Vector {
826        _handler: interrupt_handlers::IEL43,
827    },
828    Vector {
829        _handler: interrupt_handlers::IEL44,
830    },
831    Vector {
832        _handler: interrupt_handlers::IEL45,
833    },
834    Vector {
835        _handler: interrupt_handlers::IEL46,
836    },
837    Vector {
838        _handler: interrupt_handlers::IEL47,
839    },
840    Vector {
841        _handler: interrupt_handlers::IEL48,
842    },
843    Vector {
844        _handler: interrupt_handlers::IEL49,
845    },
846    Vector {
847        _handler: interrupt_handlers::IEL50,
848    },
849    Vector {
850        _handler: interrupt_handlers::IEL51,
851    },
852    Vector {
853        _handler: interrupt_handlers::IEL52,
854    },
855    Vector {
856        _handler: interrupt_handlers::IEL53,
857    },
858    Vector {
859        _handler: interrupt_handlers::IEL54,
860    },
861    Vector {
862        _handler: interrupt_handlers::IEL55,
863    },
864    Vector {
865        _handler: interrupt_handlers::IEL56,
866    },
867    Vector {
868        _handler: interrupt_handlers::IEL57,
869    },
870    Vector {
871        _handler: interrupt_handlers::IEL58,
872    },
873    Vector {
874        _handler: interrupt_handlers::IEL59,
875    },
876    Vector {
877        _handler: interrupt_handlers::IEL60,
878    },
879    Vector {
880        _handler: interrupt_handlers::IEL61,
881    },
882    Vector {
883        _handler: interrupt_handlers::IEL62,
884    },
885    Vector {
886        _handler: interrupt_handlers::IEL63,
887    },
888    Vector {
889        _handler: interrupt_handlers::IEL64,
890    },
891    Vector {
892        _handler: interrupt_handlers::IEL65,
893    },
894    Vector {
895        _handler: interrupt_handlers::IEL66,
896    },
897    Vector {
898        _handler: interrupt_handlers::IEL67,
899    },
900    Vector {
901        _handler: interrupt_handlers::IEL68,
902    },
903    Vector {
904        _handler: interrupt_handlers::IEL69,
905    },
906    Vector {
907        _handler: interrupt_handlers::IEL70,
908    },
909    Vector {
910        _handler: interrupt_handlers::IEL71,
911    },
912    Vector {
913        _handler: interrupt_handlers::IEL72,
914    },
915    Vector {
916        _handler: interrupt_handlers::IEL73,
917    },
918    Vector {
919        _handler: interrupt_handlers::IEL74,
920    },
921    Vector {
922        _handler: interrupt_handlers::IEL75,
923    },
924    Vector {
925        _handler: interrupt_handlers::IEL76,
926    },
927    Vector {
928        _handler: interrupt_handlers::IEL77,
929    },
930    Vector {
931        _handler: interrupt_handlers::IEL78,
932    },
933    Vector {
934        _handler: interrupt_handlers::IEL79,
935    },
936    Vector {
937        _handler: interrupt_handlers::IEL80,
938    },
939    Vector {
940        _handler: interrupt_handlers::IEL81,
941    },
942    Vector {
943        _handler: interrupt_handlers::IEL82,
944    },
945    Vector {
946        _handler: interrupt_handlers::IEL83,
947    },
948    Vector {
949        _handler: interrupt_handlers::IEL84,
950    },
951    Vector {
952        _handler: interrupt_handlers::IEL85,
953    },
954    Vector {
955        _handler: interrupt_handlers::IEL86,
956    },
957    Vector {
958        _handler: interrupt_handlers::IEL87,
959    },
960    Vector {
961        _handler: interrupt_handlers::IEL88,
962    },
963    Vector {
964        _handler: interrupt_handlers::IEL89,
965    },
966    Vector {
967        _handler: interrupt_handlers::IEL90,
968    },
969    Vector {
970        _handler: interrupt_handlers::IEL91,
971    },
972    Vector {
973        _handler: interrupt_handlers::IEL92,
974    },
975    Vector {
976        _handler: interrupt_handlers::IEL93,
977    },
978    Vector {
979        _handler: interrupt_handlers::IEL94,
980    },
981    Vector {
982        _handler: interrupt_handlers::IEL95,
983    },
984];
985#[doc = "Enumeration of all the interrupts."]
986#[derive(Copy, Clone, Debug, PartialEq, Eq)]
987#[repr(u16)]
988pub enum Interrupt {
989    #[doc = "ICU Interrupt 0"]
990    IEL0 = 0,
991
992    #[doc = "ICU Interrupt 1"]
993    IEL1 = 1,
994
995    #[doc = "ICU Interrupt 2"]
996    IEL2 = 2,
997
998    #[doc = "ICU Interrupt 3"]
999    IEL3 = 3,
1000
1001    #[doc = "ICU Interrupt 4"]
1002    IEL4 = 4,
1003
1004    #[doc = "ICU Interrupt 5"]
1005    IEL5 = 5,
1006
1007    #[doc = "ICU Interrupt 6"]
1008    IEL6 = 6,
1009
1010    #[doc = "ICU Interrupt 7"]
1011    IEL7 = 7,
1012
1013    #[doc = "ICU Interrupt 8"]
1014    IEL8 = 8,
1015
1016    #[doc = "ICU Interrupt 9"]
1017    IEL9 = 9,
1018
1019    #[doc = "ICU Interrupt 10"]
1020    IEL10 = 10,
1021
1022    #[doc = "ICU Interrupt 11"]
1023    IEL11 = 11,
1024
1025    #[doc = "ICU Interrupt 12"]
1026    IEL12 = 12,
1027
1028    #[doc = "ICU Interrupt 13"]
1029    IEL13 = 13,
1030
1031    #[doc = "ICU Interrupt 14"]
1032    IEL14 = 14,
1033
1034    #[doc = "ICU Interrupt 15"]
1035    IEL15 = 15,
1036
1037    #[doc = "ICU Interrupt 16"]
1038    IEL16 = 16,
1039
1040    #[doc = "ICU Interrupt 17"]
1041    IEL17 = 17,
1042
1043    #[doc = "ICU Interrupt 18"]
1044    IEL18 = 18,
1045
1046    #[doc = "ICU Interrupt 19"]
1047    IEL19 = 19,
1048
1049    #[doc = "ICU Interrupt 20"]
1050    IEL20 = 20,
1051
1052    #[doc = "ICU Interrupt 21"]
1053    IEL21 = 21,
1054
1055    #[doc = "ICU Interrupt 22"]
1056    IEL22 = 22,
1057
1058    #[doc = "ICU Interrupt 23"]
1059    IEL23 = 23,
1060
1061    #[doc = "ICU Interrupt 24"]
1062    IEL24 = 24,
1063
1064    #[doc = "ICU Interrupt 25"]
1065    IEL25 = 25,
1066
1067    #[doc = "ICU Interrupt 26"]
1068    IEL26 = 26,
1069
1070    #[doc = "ICU Interrupt 27"]
1071    IEL27 = 27,
1072
1073    #[doc = "ICU Interrupt 28"]
1074    IEL28 = 28,
1075
1076    #[doc = "ICU Interrupt 29"]
1077    IEL29 = 29,
1078
1079    #[doc = "ICU Interrupt 30"]
1080    IEL30 = 30,
1081
1082    #[doc = "ICU Interrupt 31"]
1083    IEL31 = 31,
1084
1085    #[doc = "ICU Interrupt 32"]
1086    IEL32 = 32,
1087
1088    #[doc = "ICU Interrupt 33"]
1089    IEL33 = 33,
1090
1091    #[doc = "ICU Interrupt 34"]
1092    IEL34 = 34,
1093
1094    #[doc = "ICU Interrupt 35"]
1095    IEL35 = 35,
1096
1097    #[doc = "ICU Interrupt 36"]
1098    IEL36 = 36,
1099
1100    #[doc = "ICU Interrupt 37"]
1101    IEL37 = 37,
1102
1103    #[doc = "ICU Interrupt 38"]
1104    IEL38 = 38,
1105
1106    #[doc = "ICU Interrupt 39"]
1107    IEL39 = 39,
1108
1109    #[doc = "ICU Interrupt 40"]
1110    IEL40 = 40,
1111
1112    #[doc = "ICU Interrupt 41"]
1113    IEL41 = 41,
1114
1115    #[doc = "ICU Interrupt 42"]
1116    IEL42 = 42,
1117
1118    #[doc = "ICU Interrupt 43"]
1119    IEL43 = 43,
1120
1121    #[doc = "ICU Interrupt 44"]
1122    IEL44 = 44,
1123
1124    #[doc = "ICU Interrupt 45"]
1125    IEL45 = 45,
1126
1127    #[doc = "ICU Interrupt 46"]
1128    IEL46 = 46,
1129
1130    #[doc = "ICU Interrupt 47"]
1131    IEL47 = 47,
1132
1133    #[doc = "ICU Interrupt 48"]
1134    IEL48 = 48,
1135
1136    #[doc = "ICU Interrupt 49"]
1137    IEL49 = 49,
1138
1139    #[doc = "ICU Interrupt 50"]
1140    IEL50 = 50,
1141
1142    #[doc = "ICU Interrupt 51"]
1143    IEL51 = 51,
1144
1145    #[doc = "ICU Interrupt 52"]
1146    IEL52 = 52,
1147
1148    #[doc = "ICU Interrupt 53"]
1149    IEL53 = 53,
1150
1151    #[doc = "ICU Interrupt 54"]
1152    IEL54 = 54,
1153
1154    #[doc = "ICU Interrupt 55"]
1155    IEL55 = 55,
1156
1157    #[doc = "ICU Interrupt 56"]
1158    IEL56 = 56,
1159
1160    #[doc = "ICU Interrupt 57"]
1161    IEL57 = 57,
1162
1163    #[doc = "ICU Interrupt 58"]
1164    IEL58 = 58,
1165
1166    #[doc = "ICU Interrupt 59"]
1167    IEL59 = 59,
1168
1169    #[doc = "ICU Interrupt 60"]
1170    IEL60 = 60,
1171
1172    #[doc = "ICU Interrupt 61"]
1173    IEL61 = 61,
1174
1175    #[doc = "ICU Interrupt 62"]
1176    IEL62 = 62,
1177
1178    #[doc = "ICU Interrupt 63"]
1179    IEL63 = 63,
1180
1181    #[doc = "ICU Interrupt 64"]
1182    IEL64 = 64,
1183
1184    #[doc = "ICU Interrupt 65"]
1185    IEL65 = 65,
1186
1187    #[doc = "ICU Interrupt 66"]
1188    IEL66 = 66,
1189
1190    #[doc = "ICU Interrupt 67"]
1191    IEL67 = 67,
1192
1193    #[doc = "ICU Interrupt 68"]
1194    IEL68 = 68,
1195
1196    #[doc = "ICU Interrupt 69"]
1197    IEL69 = 69,
1198
1199    #[doc = "ICU Interrupt 70"]
1200    IEL70 = 70,
1201
1202    #[doc = "ICU Interrupt 71"]
1203    IEL71 = 71,
1204
1205    #[doc = "ICU Interrupt 72"]
1206    IEL72 = 72,
1207
1208    #[doc = "ICU Interrupt 73"]
1209    IEL73 = 73,
1210
1211    #[doc = "ICU Interrupt 74"]
1212    IEL74 = 74,
1213
1214    #[doc = "ICU Interrupt 75"]
1215    IEL75 = 75,
1216
1217    #[doc = "ICU Interrupt 76"]
1218    IEL76 = 76,
1219
1220    #[doc = "ICU Interrupt 77"]
1221    IEL77 = 77,
1222
1223    #[doc = "ICU Interrupt 78"]
1224    IEL78 = 78,
1225
1226    #[doc = "ICU Interrupt 79"]
1227    IEL79 = 79,
1228
1229    #[doc = "ICU Interrupt 80"]
1230    IEL80 = 80,
1231
1232    #[doc = "ICU Interrupt 81"]
1233    IEL81 = 81,
1234
1235    #[doc = "ICU Interrupt 82"]
1236    IEL82 = 82,
1237
1238    #[doc = "ICU Interrupt 83"]
1239    IEL83 = 83,
1240
1241    #[doc = "ICU Interrupt 84"]
1242    IEL84 = 84,
1243
1244    #[doc = "ICU Interrupt 85"]
1245    IEL85 = 85,
1246
1247    #[doc = "ICU Interrupt 86"]
1248    IEL86 = 86,
1249
1250    #[doc = "ICU Interrupt 87"]
1251    IEL87 = 87,
1252
1253    #[doc = "ICU Interrupt 88"]
1254    IEL88 = 88,
1255
1256    #[doc = "ICU Interrupt 89"]
1257    IEL89 = 89,
1258
1259    #[doc = "ICU Interrupt 90"]
1260    IEL90 = 90,
1261
1262    #[doc = "ICU Interrupt 91"]
1263    IEL91 = 91,
1264
1265    #[doc = "ICU Interrupt 92"]
1266    IEL92 = 92,
1267
1268    #[doc = "ICU Interrupt 93"]
1269    IEL93 = 93,
1270
1271    #[doc = "ICU Interrupt 94"]
1272    IEL94 = 94,
1273
1274    #[doc = "ICU Interrupt 95"]
1275    IEL95 = 95,
1276}
1277unsafe impl cortex_m::interrupt::InterruptNumber for Interrupt {
1278    #[inline(always)]
1279    fn number(self) -> u16 {
1280        self as u16
1281    }
1282}
1283#[allow(non_snake_case)]
1284/// Required for compatibility with RTIC and other frameworks
1285pub struct Peripherals {
1286    #[cfg(feature = "rmpu")]
1287    pub RMPU: self::Rmpu,
1288    #[cfg(feature = "tzf")]
1289    pub TZF: self::Tzf,
1290    #[cfg(feature = "sram")]
1291    pub SRAM: self::Sram,
1292    #[cfg(feature = "bus")]
1293    pub BUS: self::Bus,
1294    #[cfg(feature = "dmac0")]
1295    pub DMAC0: self::Dmac0,
1296    #[cfg(feature = "dmac1")]
1297    pub DMAC1: self::Dmac0,
1298    #[cfg(feature = "dmac2")]
1299    pub DMAC2: self::Dmac0,
1300    #[cfg(feature = "dmac3")]
1301    pub DMAC3: self::Dmac0,
1302    #[cfg(feature = "dmac4")]
1303    pub DMAC4: self::Dmac0,
1304    #[cfg(feature = "dmac5")]
1305    pub DMAC5: self::Dmac0,
1306    #[cfg(feature = "dmac6")]
1307    pub DMAC6: self::Dmac0,
1308    #[cfg(feature = "dmac7")]
1309    pub DMAC7: self::Dmac0,
1310    #[cfg(feature = "dma")]
1311    pub DMA: self::Dma,
1312    #[cfg(feature = "dtc")]
1313    pub DTC: self::Dtc,
1314    #[cfg(feature = "icu")]
1315    pub ICU: self::Icu,
1316    #[cfg(feature = "cache")]
1317    pub CACHE: self::Cache,
1318    #[cfg(feature = "cpscu")]
1319    pub CPSCU: self::Cpscu,
1320    #[cfg(feature = "dbg")]
1321    pub DBG: self::Dbg,
1322    #[cfg(feature = "fcache")]
1323    pub FCACHE: self::Fcache,
1324    #[cfg(feature = "sysc")]
1325    pub SYSC: self::Sysc,
1326    #[cfg(feature = "port0")]
1327    pub PORT0: self::Port0,
1328    #[cfg(feature = "port1")]
1329    pub PORT1: self::Port1,
1330    #[cfg(feature = "port2")]
1331    pub PORT2: self::Port1,
1332    #[cfg(feature = "port3")]
1333    pub PORT3: self::Port1,
1334    #[cfg(feature = "port4")]
1335    pub PORT4: self::Port1,
1336    #[cfg(feature = "port5")]
1337    pub PORT5: self::Port0,
1338    #[cfg(feature = "port8")]
1339    pub PORT8: self::Port0,
1340    #[cfg(feature = "pfs")]
1341    pub PFS: self::Pfs,
1342    #[cfg(feature = "elc")]
1343    pub ELC: self::Elc,
1344    #[cfg(feature = "rtc")]
1345    pub RTC: self::Rtc,
1346    #[cfg(feature = "iwdt")]
1347    pub IWDT: self::Iwdt,
1348    #[cfg(feature = "wdt")]
1349    pub WDT: self::Wdt,
1350    #[cfg(feature = "cac")]
1351    pub CAC: self::Cac,
1352    #[cfg(feature = "mstp")]
1353    pub MSTP: self::Mstp,
1354    #[cfg(feature = "poeg")]
1355    pub POEG: self::Poeg,
1356    #[cfg(feature = "usbfs")]
1357    pub USBFS: self::Usbfs,
1358    #[cfg(feature = "ssie0")]
1359    pub SSIE0: self::Ssie0,
1360    #[cfg(feature = "cec")]
1361    pub CEC: self::Cec,
1362    #[cfg(feature = "canfd_b")]
1363    pub CANFD_B: self::CanfdB,
1364    #[cfg(feature = "pscu")]
1365    pub PSCU: self::Pscu,
1366    #[cfg(feature = "agtw0")]
1367    pub AGTW0: self::Agtw0,
1368    #[cfg(feature = "agtw1")]
1369    pub AGTW1: self::Agtw0,
1370    #[cfg(feature = "tsn")]
1371    pub TSN: self::Tsn,
1372    #[cfg(feature = "crc")]
1373    pub CRC: self::Crc,
1374    #[cfg(feature = "doc")]
1375    pub DOC: self::Doc,
1376    #[cfg(feature = "sci0")]
1377    pub SCI0: self::Sci0,
1378    #[cfg(feature = "sci9")]
1379    pub SCI9: self::Sci0,
1380    #[cfg(feature = "spi0")]
1381    pub SPI0: self::Spi0,
1382    #[cfg(feature = "spi1")]
1383    pub SPI1: self::Spi0,
1384    #[cfg(feature = "i3c")]
1385    pub I3C: self::I3C,
1386    #[cfg(feature = "eccmb")]
1387    pub ECCMB: self::Eccmb,
1388    #[cfg(feature = "gpt16e0")]
1389    pub GPT16E0: self::Gpt16E0,
1390    #[cfg(feature = "gpt16e1")]
1391    pub GPT16E1: self::Gpt16E0,
1392    #[cfg(feature = "gpt16e4")]
1393    pub GPT16E4: self::Gpt16E0,
1394    #[cfg(feature = "gpt16e5")]
1395    pub GPT16E5: self::Gpt16E0,
1396    #[cfg(feature = "gpt_ops")]
1397    pub GPT_OPS: self::GptOps,
1398    #[cfg(feature = "adc120")]
1399    pub ADC120: self::Adc120,
1400    #[cfg(feature = "dac12")]
1401    pub DAC12: self::Dac12,
1402    #[cfg(feature = "tsd")]
1403    pub TSD: self::Tsd,
1404    #[cfg(feature = "flad")]
1405    pub FLAD: self::Flad,
1406    #[cfg(feature = "faci")]
1407    pub FACI: self::Faci,
1408}
1409
1410impl Peripherals {
1411    /// Returns Peripheral struct multiple times
1412    /// Required for compatibility with RTIC and other frameworks
1413    #[inline]
1414    pub fn take() -> Option<Self> {
1415        Some(Self::steal())
1416    }
1417
1418    /// Returns Peripheral struct multiple times
1419    /// Required for compatibility with RTIC and other frameworks
1420    #[inline]
1421    pub fn steal() -> Self {
1422        Peripherals {
1423            #[cfg(feature = "rmpu")]
1424            RMPU: crate::RMPU,
1425            #[cfg(feature = "tzf")]
1426            TZF: crate::TZF,
1427            #[cfg(feature = "sram")]
1428            SRAM: crate::SRAM,
1429            #[cfg(feature = "bus")]
1430            BUS: crate::BUS,
1431            #[cfg(feature = "dmac0")]
1432            DMAC0: crate::DMAC0,
1433            #[cfg(feature = "dmac1")]
1434            DMAC1: crate::DMAC1,
1435            #[cfg(feature = "dmac2")]
1436            DMAC2: crate::DMAC2,
1437            #[cfg(feature = "dmac3")]
1438            DMAC3: crate::DMAC3,
1439            #[cfg(feature = "dmac4")]
1440            DMAC4: crate::DMAC4,
1441            #[cfg(feature = "dmac5")]
1442            DMAC5: crate::DMAC5,
1443            #[cfg(feature = "dmac6")]
1444            DMAC6: crate::DMAC6,
1445            #[cfg(feature = "dmac7")]
1446            DMAC7: crate::DMAC7,
1447            #[cfg(feature = "dma")]
1448            DMA: crate::DMA,
1449            #[cfg(feature = "dtc")]
1450            DTC: crate::DTC,
1451            #[cfg(feature = "icu")]
1452            ICU: crate::ICU,
1453            #[cfg(feature = "cache")]
1454            CACHE: crate::CACHE,
1455            #[cfg(feature = "cpscu")]
1456            CPSCU: crate::CPSCU,
1457            #[cfg(feature = "dbg")]
1458            DBG: crate::DBG,
1459            #[cfg(feature = "fcache")]
1460            FCACHE: crate::FCACHE,
1461            #[cfg(feature = "sysc")]
1462            SYSC: crate::SYSC,
1463            #[cfg(feature = "port0")]
1464            PORT0: crate::PORT0,
1465            #[cfg(feature = "port1")]
1466            PORT1: crate::PORT1,
1467            #[cfg(feature = "port2")]
1468            PORT2: crate::PORT2,
1469            #[cfg(feature = "port3")]
1470            PORT3: crate::PORT3,
1471            #[cfg(feature = "port4")]
1472            PORT4: crate::PORT4,
1473            #[cfg(feature = "port5")]
1474            PORT5: crate::PORT5,
1475            #[cfg(feature = "port8")]
1476            PORT8: crate::PORT8,
1477            #[cfg(feature = "pfs")]
1478            PFS: crate::PFS,
1479            #[cfg(feature = "elc")]
1480            ELC: crate::ELC,
1481            #[cfg(feature = "rtc")]
1482            RTC: crate::RTC,
1483            #[cfg(feature = "iwdt")]
1484            IWDT: crate::IWDT,
1485            #[cfg(feature = "wdt")]
1486            WDT: crate::WDT,
1487            #[cfg(feature = "cac")]
1488            CAC: crate::CAC,
1489            #[cfg(feature = "mstp")]
1490            MSTP: crate::MSTP,
1491            #[cfg(feature = "poeg")]
1492            POEG: crate::POEG,
1493            #[cfg(feature = "usbfs")]
1494            USBFS: crate::USBFS,
1495            #[cfg(feature = "ssie0")]
1496            SSIE0: crate::SSIE0,
1497            #[cfg(feature = "cec")]
1498            CEC: crate::CEC,
1499            #[cfg(feature = "canfd_b")]
1500            CANFD_B: crate::CANFD_B,
1501            #[cfg(feature = "pscu")]
1502            PSCU: crate::PSCU,
1503            #[cfg(feature = "agtw0")]
1504            AGTW0: crate::AGTW0,
1505            #[cfg(feature = "agtw1")]
1506            AGTW1: crate::AGTW1,
1507            #[cfg(feature = "tsn")]
1508            TSN: crate::TSN,
1509            #[cfg(feature = "crc")]
1510            CRC: crate::CRC,
1511            #[cfg(feature = "doc")]
1512            DOC: crate::DOC,
1513            #[cfg(feature = "sci0")]
1514            SCI0: crate::SCI0,
1515            #[cfg(feature = "sci9")]
1516            SCI9: crate::SCI9,
1517            #[cfg(feature = "spi0")]
1518            SPI0: crate::SPI0,
1519            #[cfg(feature = "spi1")]
1520            SPI1: crate::SPI1,
1521            #[cfg(feature = "i3c")]
1522            I3C: crate::I3C,
1523            #[cfg(feature = "eccmb")]
1524            ECCMB: crate::ECCMB,
1525            #[cfg(feature = "gpt16e0")]
1526            GPT16E0: crate::GPT16E0,
1527            #[cfg(feature = "gpt16e1")]
1528            GPT16E1: crate::GPT16E1,
1529            #[cfg(feature = "gpt16e4")]
1530            GPT16E4: crate::GPT16E4,
1531            #[cfg(feature = "gpt16e5")]
1532            GPT16E5: crate::GPT16E5,
1533            #[cfg(feature = "gpt_ops")]
1534            GPT_OPS: crate::GPT_OPS,
1535            #[cfg(feature = "adc120")]
1536            ADC120: crate::ADC120,
1537            #[cfg(feature = "dac12")]
1538            DAC12: crate::DAC12,
1539            #[cfg(feature = "tsd")]
1540            TSD: crate::TSD,
1541            #[cfg(feature = "flad")]
1542            FLAD: crate::FLAD,
1543            #[cfg(feature = "faci")]
1544            FACI: crate::FACI,
1545        }
1546    }
1547}