1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - System Clock Enable Register"]
5    pub pmc_scer: PMC_SCER,
6    #[doc = "0x04 - System Clock Disable Register"]
7    pub pmc_scdr: PMC_SCDR,
8    #[doc = "0x08 - System Clock Status Register"]
9    pub pmc_scsr: PMC_SCSR,
10    _reserved3: [u8; 0x04],
11    #[doc = "0x10 - Peripheral Clock Enable Register 0"]
12    pub pmc_pcer0: PMC_PCER0,
13    #[doc = "0x14 - Peripheral Clock Disable Register 0"]
14    pub pmc_pcdr0: PMC_PCDR0,
15    #[doc = "0x18 - Peripheral Clock Status Register 0"]
16    pub pmc_pcsr0: PMC_PCSR0,
17    _reserved6: [u8; 0x04],
18    #[doc = "0x20 - Main Oscillator Register"]
19    pub ckgr_mor: CKGR_MOR,
20    #[doc = "0x24 - Main Clock Frequency Register"]
21    pub ckgr_mcfr: CKGR_MCFR,
22    #[doc = "0x28 - PLLA Register"]
23    pub ckgr_pllar: CKGR_PLLAR,
24    #[doc = "0x2c - PLLB Register"]
25    pub ckgr_pllbr: CKGR_PLLBR,
26    #[doc = "0x30 - Master Clock Register"]
27    pub pmc_mckr: PMC_MCKR,
28    _reserved11: [u8; 0x04],
29    #[doc = "0x38 - USB Clock Register"]
30    pub pmc_usb: PMC_USB,
31    _reserved12: [u8; 0x04],
32    #[doc = "0x40..0x4c - Programmable Clock 0 Register"]
33    pub pmc_pck: [PMC_PCK; 3],
34    _reserved13: [u8; 0x14],
35    #[doc = "0x60 - Interrupt Enable Register"]
36    pub pmc_ier: PMC_IER,
37    #[doc = "0x64 - Interrupt Disable Register"]
38    pub pmc_idr: PMC_IDR,
39    #[doc = "0x68 - Status Register"]
40    pub pmc_sr: PMC_SR,
41    #[doc = "0x6c - Interrupt Mask Register"]
42    pub pmc_imr: PMC_IMR,
43    #[doc = "0x70 - Fast Start-up Mode Register"]
44    pub pmc_fsmr: PMC_FSMR,
45    #[doc = "0x74 - Fast Start-up Polarity Register"]
46    pub pmc_fspr: PMC_FSPR,
47    #[doc = "0x78 - Fault Output Clear Register"]
48    pub pmc_focr: PMC_FOCR,
49    _reserved20: [u8; 0x68],
50    #[doc = "0xe4 - Write Protection Mode Register"]
51    pub pmc_wpmr: PMC_WPMR,
52    #[doc = "0xe8 - Write Protection Status Register"]
53    pub pmc_wpsr: PMC_WPSR,
54    _reserved22: [u8; 0x14],
55    #[doc = "0x100 - Peripheral Clock Enable Register 1"]
56    pub pmc_pcer1: PMC_PCER1,
57    #[doc = "0x104 - Peripheral Clock Disable Register 1"]
58    pub pmc_pcdr1: PMC_PCDR1,
59    #[doc = "0x108 - Peripheral Clock Status Register 1"]
60    pub pmc_pcsr1: PMC_PCSR1,
61    _reserved25: [u8; 0x04],
62    #[doc = "0x110 - Oscillator Calibration Register"]
63    pub pmc_ocr: PMC_OCR,
64}
65#[doc = "PMC_SCER (w) register accessor: an alias for `Reg<PMC_SCER_SPEC>`"]
66pub type PMC_SCER = crate::Reg<pmc_scer::PMC_SCER_SPEC>;
67#[doc = "System Clock Enable Register"]
68pub mod pmc_scer;
69#[doc = "PMC_SCDR (w) register accessor: an alias for `Reg<PMC_SCDR_SPEC>`"]
70pub type PMC_SCDR = crate::Reg<pmc_scdr::PMC_SCDR_SPEC>;
71#[doc = "System Clock Disable Register"]
72pub mod pmc_scdr;
73#[doc = "PMC_SCSR (r) register accessor: an alias for `Reg<PMC_SCSR_SPEC>`"]
74pub type PMC_SCSR = crate::Reg<pmc_scsr::PMC_SCSR_SPEC>;
75#[doc = "System Clock Status Register"]
76pub mod pmc_scsr;
77#[doc = "PMC_PCER0 (w) register accessor: an alias for `Reg<PMC_PCER0_SPEC>`"]
78pub type PMC_PCER0 = crate::Reg<pmc_pcer0::PMC_PCER0_SPEC>;
79#[doc = "Peripheral Clock Enable Register 0"]
80pub mod pmc_pcer0;
81#[doc = "PMC_PCDR0 (w) register accessor: an alias for `Reg<PMC_PCDR0_SPEC>`"]
82pub type PMC_PCDR0 = crate::Reg<pmc_pcdr0::PMC_PCDR0_SPEC>;
83#[doc = "Peripheral Clock Disable Register 0"]
84pub mod pmc_pcdr0;
85#[doc = "PMC_PCSR0 (r) register accessor: an alias for `Reg<PMC_PCSR0_SPEC>`"]
86pub type PMC_PCSR0 = crate::Reg<pmc_pcsr0::PMC_PCSR0_SPEC>;
87#[doc = "Peripheral Clock Status Register 0"]
88pub mod pmc_pcsr0;
89#[doc = "CKGR_MOR (rw) register accessor: an alias for `Reg<CKGR_MOR_SPEC>`"]
90pub type CKGR_MOR = crate::Reg<ckgr_mor::CKGR_MOR_SPEC>;
91#[doc = "Main Oscillator Register"]
92pub mod ckgr_mor;
93#[doc = "CKGR_MCFR (rw) register accessor: an alias for `Reg<CKGR_MCFR_SPEC>`"]
94pub type CKGR_MCFR = crate::Reg<ckgr_mcfr::CKGR_MCFR_SPEC>;
95#[doc = "Main Clock Frequency Register"]
96pub mod ckgr_mcfr;
97#[doc = "CKGR_PLLAR (rw) register accessor: an alias for `Reg<CKGR_PLLAR_SPEC>`"]
98pub type CKGR_PLLAR = crate::Reg<ckgr_pllar::CKGR_PLLAR_SPEC>;
99#[doc = "PLLA Register"]
100pub mod ckgr_pllar;
101#[doc = "CKGR_PLLBR (rw) register accessor: an alias for `Reg<CKGR_PLLBR_SPEC>`"]
102pub type CKGR_PLLBR = crate::Reg<ckgr_pllbr::CKGR_PLLBR_SPEC>;
103#[doc = "PLLB Register"]
104pub mod ckgr_pllbr;
105#[doc = "PMC_MCKR (rw) register accessor: an alias for `Reg<PMC_MCKR_SPEC>`"]
106pub type PMC_MCKR = crate::Reg<pmc_mckr::PMC_MCKR_SPEC>;
107#[doc = "Master Clock Register"]
108pub mod pmc_mckr;
109#[doc = "PMC_USB (rw) register accessor: an alias for `Reg<PMC_USB_SPEC>`"]
110pub type PMC_USB = crate::Reg<pmc_usb::PMC_USB_SPEC>;
111#[doc = "USB Clock Register"]
112pub mod pmc_usb;
113#[doc = "PMC_PCK (rw) register accessor: an alias for `Reg<PMC_PCK_SPEC>`"]
114pub type PMC_PCK = crate::Reg<pmc_pck::PMC_PCK_SPEC>;
115#[doc = "Programmable Clock 0 Register"]
116pub mod pmc_pck;
117#[doc = "PMC_IER (w) register accessor: an alias for `Reg<PMC_IER_SPEC>`"]
118pub type PMC_IER = crate::Reg<pmc_ier::PMC_IER_SPEC>;
119#[doc = "Interrupt Enable Register"]
120pub mod pmc_ier;
121#[doc = "PMC_IDR (w) register accessor: an alias for `Reg<PMC_IDR_SPEC>`"]
122pub type PMC_IDR = crate::Reg<pmc_idr::PMC_IDR_SPEC>;
123#[doc = "Interrupt Disable Register"]
124pub mod pmc_idr;
125#[doc = "PMC_SR (r) register accessor: an alias for `Reg<PMC_SR_SPEC>`"]
126pub type PMC_SR = crate::Reg<pmc_sr::PMC_SR_SPEC>;
127#[doc = "Status Register"]
128pub mod pmc_sr;
129#[doc = "PMC_IMR (r) register accessor: an alias for `Reg<PMC_IMR_SPEC>`"]
130pub type PMC_IMR = crate::Reg<pmc_imr::PMC_IMR_SPEC>;
131#[doc = "Interrupt Mask Register"]
132pub mod pmc_imr;
133#[doc = "PMC_FSMR (rw) register accessor: an alias for `Reg<PMC_FSMR_SPEC>`"]
134pub type PMC_FSMR = crate::Reg<pmc_fsmr::PMC_FSMR_SPEC>;
135#[doc = "Fast Start-up Mode Register"]
136pub mod pmc_fsmr;
137#[doc = "PMC_FSPR (rw) register accessor: an alias for `Reg<PMC_FSPR_SPEC>`"]
138pub type PMC_FSPR = crate::Reg<pmc_fspr::PMC_FSPR_SPEC>;
139#[doc = "Fast Start-up Polarity Register"]
140pub mod pmc_fspr;
141#[doc = "PMC_FOCR (w) register accessor: an alias for `Reg<PMC_FOCR_SPEC>`"]
142pub type PMC_FOCR = crate::Reg<pmc_focr::PMC_FOCR_SPEC>;
143#[doc = "Fault Output Clear Register"]
144pub mod pmc_focr;
145#[doc = "PMC_WPMR (rw) register accessor: an alias for `Reg<PMC_WPMR_SPEC>`"]
146pub type PMC_WPMR = crate::Reg<pmc_wpmr::PMC_WPMR_SPEC>;
147#[doc = "Write Protection Mode Register"]
148pub mod pmc_wpmr;
149#[doc = "PMC_WPSR (r) register accessor: an alias for `Reg<PMC_WPSR_SPEC>`"]
150pub type PMC_WPSR = crate::Reg<pmc_wpsr::PMC_WPSR_SPEC>;
151#[doc = "Write Protection Status Register"]
152pub mod pmc_wpsr;
153#[doc = "PMC_PCER1 (w) register accessor: an alias for `Reg<PMC_PCER1_SPEC>`"]
154pub type PMC_PCER1 = crate::Reg<pmc_pcer1::PMC_PCER1_SPEC>;
155#[doc = "Peripheral Clock Enable Register 1"]
156pub mod pmc_pcer1;
157#[doc = "PMC_PCDR1 (w) register accessor: an alias for `Reg<PMC_PCDR1_SPEC>`"]
158pub type PMC_PCDR1 = crate::Reg<pmc_pcdr1::PMC_PCDR1_SPEC>;
159#[doc = "Peripheral Clock Disable Register 1"]
160pub mod pmc_pcdr1;
161#[doc = "PMC_PCSR1 (r) register accessor: an alias for `Reg<PMC_PCSR1_SPEC>`"]
162pub type PMC_PCSR1 = crate::Reg<pmc_pcsr1::PMC_PCSR1_SPEC>;
163#[doc = "Peripheral Clock Status Register 1"]
164pub mod pmc_pcsr1;
165#[doc = "PMC_OCR (rw) register accessor: an alias for `Reg<PMC_OCR_SPEC>`"]
166pub type PMC_OCR = crate::Reg<pmc_ocr::PMC_OCR_SPEC>;
167#[doc = "Oscillator Calibration Register"]
168pub mod pmc_ocr;