atsame70n20/
pmc.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - System Clock Enable Register"]
5    pub pmc_scer: crate::Reg<pmc_scer::PMC_SCER_SPEC>,
6    #[doc = "0x04 - System Clock Disable Register"]
7    pub pmc_scdr: crate::Reg<pmc_scdr::PMC_SCDR_SPEC>,
8    #[doc = "0x08 - System Clock Status Register"]
9    pub pmc_scsr: crate::Reg<pmc_scsr::PMC_SCSR_SPEC>,
10    _reserved3: [u8; 0x04],
11    #[doc = "0x10 - Peripheral Clock Enable Register 0"]
12    pub pmc_pcer0: crate::Reg<pmc_pcer0::PMC_PCER0_SPEC>,
13    #[doc = "0x14 - Peripheral Clock Disable Register 0"]
14    pub pmc_pcdr0: crate::Reg<pmc_pcdr0::PMC_PCDR0_SPEC>,
15    #[doc = "0x18 - Peripheral Clock Status Register 0"]
16    pub pmc_pcsr0: crate::Reg<pmc_pcsr0::PMC_PCSR0_SPEC>,
17    #[doc = "0x1c - UTMI Clock Register"]
18    pub ckgr_uckr: crate::Reg<ckgr_uckr::CKGR_UCKR_SPEC>,
19    #[doc = "0x20 - Main Oscillator Register"]
20    pub ckgr_mor: crate::Reg<ckgr_mor::CKGR_MOR_SPEC>,
21    #[doc = "0x24 - Main Clock Frequency Register"]
22    pub ckgr_mcfr: crate::Reg<ckgr_mcfr::CKGR_MCFR_SPEC>,
23    #[doc = "0x28 - PLLA Register"]
24    pub ckgr_pllar: crate::Reg<ckgr_pllar::CKGR_PLLAR_SPEC>,
25    _reserved10: [u8; 0x04],
26    #[doc = "0x30 - Master Clock Register"]
27    pub pmc_mckr: crate::Reg<pmc_mckr::PMC_MCKR_SPEC>,
28    _reserved11: [u8; 0x04],
29    #[doc = "0x38 - USB Clock Register"]
30    pub pmc_usb: crate::Reg<pmc_usb::PMC_USB_SPEC>,
31    _reserved12: [u8; 0x04],
32    #[doc = "0x40..0x60 - Programmable Clock Register"]
33    pub pmc_pck: [crate::Reg<pmc_pck::PMC_PCK_SPEC>; 8],
34    #[doc = "0x60 - Interrupt Enable Register"]
35    pub pmc_ier: crate::Reg<pmc_ier::PMC_IER_SPEC>,
36    #[doc = "0x64 - Interrupt Disable Register"]
37    pub pmc_idr: crate::Reg<pmc_idr::PMC_IDR_SPEC>,
38    #[doc = "0x68 - Status Register"]
39    pub pmc_sr: crate::Reg<pmc_sr::PMC_SR_SPEC>,
40    #[doc = "0x6c - Interrupt Mask Register"]
41    pub pmc_imr: crate::Reg<pmc_imr::PMC_IMR_SPEC>,
42    #[doc = "0x70 - Fast Startup Mode Register"]
43    pub pmc_fsmr: crate::Reg<pmc_fsmr::PMC_FSMR_SPEC>,
44    #[doc = "0x74 - Fast Startup Polarity Register"]
45    pub pmc_fspr: crate::Reg<pmc_fspr::PMC_FSPR_SPEC>,
46    #[doc = "0x78 - Fault Output Clear Register"]
47    pub pmc_focr: crate::Reg<pmc_focr::PMC_FOCR_SPEC>,
48    _reserved20: [u8; 0x68],
49    #[doc = "0xe4 - Write Protection Mode Register"]
50    pub pmc_wpmr: crate::Reg<pmc_wpmr::PMC_WPMR_SPEC>,
51    #[doc = "0xe8 - Write Protection Status Register"]
52    pub pmc_wpsr: crate::Reg<pmc_wpsr::PMC_WPSR_SPEC>,
53    _reserved22: [u8; 0x14],
54    #[doc = "0x100 - Peripheral Clock Enable Register 1"]
55    pub pmc_pcer1: crate::Reg<pmc_pcer1::PMC_PCER1_SPEC>,
56    #[doc = "0x104 - Peripheral Clock Disable Register 1"]
57    pub pmc_pcdr1: crate::Reg<pmc_pcdr1::PMC_PCDR1_SPEC>,
58    #[doc = "0x108 - Peripheral Clock Status Register 1"]
59    pub pmc_pcsr1: crate::Reg<pmc_pcsr1::PMC_PCSR1_SPEC>,
60    #[doc = "0x10c - Peripheral Control Register"]
61    pub pmc_pcr: crate::Reg<pmc_pcr::PMC_PCR_SPEC>,
62    #[doc = "0x110 - Oscillator Calibration Register"]
63    pub pmc_ocr: crate::Reg<pmc_ocr::PMC_OCR_SPEC>,
64    #[doc = "0x114 - SleepWalking Enable Register 0"]
65    pub pmc_slpwk_er0: crate::Reg<pmc_slpwk_er0::PMC_SLPWK_ER0_SPEC>,
66    #[doc = "0x118 - SleepWalking Disable Register 0"]
67    pub pmc_slpwk_dr0: crate::Reg<pmc_slpwk_dr0::PMC_SLPWK_DR0_SPEC>,
68    #[doc = "0x11c - SleepWalking Status Register 0"]
69    pub pmc_slpwk_sr0: crate::Reg<pmc_slpwk_sr0::PMC_SLPWK_SR0_SPEC>,
70    #[doc = "0x120 - SleepWalking Activity Status Register 0"]
71    pub pmc_slpwk_asr0: crate::Reg<pmc_slpwk_asr0::PMC_SLPWK_ASR0_SPEC>,
72    _reserved31: [u8; 0x0c],
73    #[doc = "0x130 - PLL Maximum Multiplier Value Register"]
74    pub pmc_pmmr: crate::Reg<pmc_pmmr::PMC_PMMR_SPEC>,
75    #[doc = "0x134 - SleepWalking Enable Register 1"]
76    pub pmc_slpwk_er1: crate::Reg<pmc_slpwk_er1::PMC_SLPWK_ER1_SPEC>,
77    #[doc = "0x138 - SleepWalking Disable Register 1"]
78    pub pmc_slpwk_dr1: crate::Reg<pmc_slpwk_dr1::PMC_SLPWK_DR1_SPEC>,
79    #[doc = "0x13c - SleepWalking Status Register 1"]
80    pub pmc_slpwk_sr1: crate::Reg<pmc_slpwk_sr1::PMC_SLPWK_SR1_SPEC>,
81    #[doc = "0x140 - SleepWalking Activity Status Register 1"]
82    pub pmc_slpwk_asr1: crate::Reg<pmc_slpwk_asr1::PMC_SLPWK_ASR1_SPEC>,
83    #[doc = "0x144 - SleepWalking Activity In Progress Register"]
84    pub pmc_slpwk_aipr: crate::Reg<pmc_slpwk_aipr::PMC_SLPWK_AIPR_SPEC>,
85}
86#[doc = "PMC_SCER register accessor: an alias for `Reg<PMC_SCER_SPEC>`"]
87pub type PMC_SCER = crate::Reg<pmc_scer::PMC_SCER_SPEC>;
88#[doc = "System Clock Enable Register"]
89pub mod pmc_scer;
90#[doc = "PMC_SCDR register accessor: an alias for `Reg<PMC_SCDR_SPEC>`"]
91pub type PMC_SCDR = crate::Reg<pmc_scdr::PMC_SCDR_SPEC>;
92#[doc = "System Clock Disable Register"]
93pub mod pmc_scdr;
94#[doc = "PMC_SCSR register accessor: an alias for `Reg<PMC_SCSR_SPEC>`"]
95pub type PMC_SCSR = crate::Reg<pmc_scsr::PMC_SCSR_SPEC>;
96#[doc = "System Clock Status Register"]
97pub mod pmc_scsr;
98#[doc = "PMC_PCER0 register accessor: an alias for `Reg<PMC_PCER0_SPEC>`"]
99pub type PMC_PCER0 = crate::Reg<pmc_pcer0::PMC_PCER0_SPEC>;
100#[doc = "Peripheral Clock Enable Register 0"]
101pub mod pmc_pcer0;
102#[doc = "PMC_PCDR0 register accessor: an alias for `Reg<PMC_PCDR0_SPEC>`"]
103pub type PMC_PCDR0 = crate::Reg<pmc_pcdr0::PMC_PCDR0_SPEC>;
104#[doc = "Peripheral Clock Disable Register 0"]
105pub mod pmc_pcdr0;
106#[doc = "PMC_PCSR0 register accessor: an alias for `Reg<PMC_PCSR0_SPEC>`"]
107pub type PMC_PCSR0 = crate::Reg<pmc_pcsr0::PMC_PCSR0_SPEC>;
108#[doc = "Peripheral Clock Status Register 0"]
109pub mod pmc_pcsr0;
110#[doc = "CKGR_UCKR register accessor: an alias for `Reg<CKGR_UCKR_SPEC>`"]
111pub type CKGR_UCKR = crate::Reg<ckgr_uckr::CKGR_UCKR_SPEC>;
112#[doc = "UTMI Clock Register"]
113pub mod ckgr_uckr;
114#[doc = "CKGR_MOR register accessor: an alias for `Reg<CKGR_MOR_SPEC>`"]
115pub type CKGR_MOR = crate::Reg<ckgr_mor::CKGR_MOR_SPEC>;
116#[doc = "Main Oscillator Register"]
117pub mod ckgr_mor;
118#[doc = "CKGR_MCFR register accessor: an alias for `Reg<CKGR_MCFR_SPEC>`"]
119pub type CKGR_MCFR = crate::Reg<ckgr_mcfr::CKGR_MCFR_SPEC>;
120#[doc = "Main Clock Frequency Register"]
121pub mod ckgr_mcfr;
122#[doc = "CKGR_PLLAR register accessor: an alias for `Reg<CKGR_PLLAR_SPEC>`"]
123pub type CKGR_PLLAR = crate::Reg<ckgr_pllar::CKGR_PLLAR_SPEC>;
124#[doc = "PLLA Register"]
125pub mod ckgr_pllar;
126#[doc = "PMC_MCKR register accessor: an alias for `Reg<PMC_MCKR_SPEC>`"]
127pub type PMC_MCKR = crate::Reg<pmc_mckr::PMC_MCKR_SPEC>;
128#[doc = "Master Clock Register"]
129pub mod pmc_mckr;
130#[doc = "PMC_USB register accessor: an alias for `Reg<PMC_USB_SPEC>`"]
131pub type PMC_USB = crate::Reg<pmc_usb::PMC_USB_SPEC>;
132#[doc = "USB Clock Register"]
133pub mod pmc_usb;
134#[doc = "PMC_PCK register accessor: an alias for `Reg<PMC_PCK_SPEC>`"]
135pub type PMC_PCK = crate::Reg<pmc_pck::PMC_PCK_SPEC>;
136#[doc = "Programmable Clock Register"]
137pub mod pmc_pck;
138#[doc = "PMC_IER register accessor: an alias for `Reg<PMC_IER_SPEC>`"]
139pub type PMC_IER = crate::Reg<pmc_ier::PMC_IER_SPEC>;
140#[doc = "Interrupt Enable Register"]
141pub mod pmc_ier;
142#[doc = "PMC_IDR register accessor: an alias for `Reg<PMC_IDR_SPEC>`"]
143pub type PMC_IDR = crate::Reg<pmc_idr::PMC_IDR_SPEC>;
144#[doc = "Interrupt Disable Register"]
145pub mod pmc_idr;
146#[doc = "PMC_SR register accessor: an alias for `Reg<PMC_SR_SPEC>`"]
147pub type PMC_SR = crate::Reg<pmc_sr::PMC_SR_SPEC>;
148#[doc = "Status Register"]
149pub mod pmc_sr;
150#[doc = "PMC_IMR register accessor: an alias for `Reg<PMC_IMR_SPEC>`"]
151pub type PMC_IMR = crate::Reg<pmc_imr::PMC_IMR_SPEC>;
152#[doc = "Interrupt Mask Register"]
153pub mod pmc_imr;
154#[doc = "PMC_FSMR register accessor: an alias for `Reg<PMC_FSMR_SPEC>`"]
155pub type PMC_FSMR = crate::Reg<pmc_fsmr::PMC_FSMR_SPEC>;
156#[doc = "Fast Startup Mode Register"]
157pub mod pmc_fsmr;
158#[doc = "PMC_FSPR register accessor: an alias for `Reg<PMC_FSPR_SPEC>`"]
159pub type PMC_FSPR = crate::Reg<pmc_fspr::PMC_FSPR_SPEC>;
160#[doc = "Fast Startup Polarity Register"]
161pub mod pmc_fspr;
162#[doc = "PMC_FOCR register accessor: an alias for `Reg<PMC_FOCR_SPEC>`"]
163pub type PMC_FOCR = crate::Reg<pmc_focr::PMC_FOCR_SPEC>;
164#[doc = "Fault Output Clear Register"]
165pub mod pmc_focr;
166#[doc = "PMC_WPMR register accessor: an alias for `Reg<PMC_WPMR_SPEC>`"]
167pub type PMC_WPMR = crate::Reg<pmc_wpmr::PMC_WPMR_SPEC>;
168#[doc = "Write Protection Mode Register"]
169pub mod pmc_wpmr;
170#[doc = "PMC_WPSR register accessor: an alias for `Reg<PMC_WPSR_SPEC>`"]
171pub type PMC_WPSR = crate::Reg<pmc_wpsr::PMC_WPSR_SPEC>;
172#[doc = "Write Protection Status Register"]
173pub mod pmc_wpsr;
174#[doc = "PMC_PCER1 register accessor: an alias for `Reg<PMC_PCER1_SPEC>`"]
175pub type PMC_PCER1 = crate::Reg<pmc_pcer1::PMC_PCER1_SPEC>;
176#[doc = "Peripheral Clock Enable Register 1"]
177pub mod pmc_pcer1;
178#[doc = "PMC_PCDR1 register accessor: an alias for `Reg<PMC_PCDR1_SPEC>`"]
179pub type PMC_PCDR1 = crate::Reg<pmc_pcdr1::PMC_PCDR1_SPEC>;
180#[doc = "Peripheral Clock Disable Register 1"]
181pub mod pmc_pcdr1;
182#[doc = "PMC_PCSR1 register accessor: an alias for `Reg<PMC_PCSR1_SPEC>`"]
183pub type PMC_PCSR1 = crate::Reg<pmc_pcsr1::PMC_PCSR1_SPEC>;
184#[doc = "Peripheral Clock Status Register 1"]
185pub mod pmc_pcsr1;
186#[doc = "PMC_PCR register accessor: an alias for `Reg<PMC_PCR_SPEC>`"]
187pub type PMC_PCR = crate::Reg<pmc_pcr::PMC_PCR_SPEC>;
188#[doc = "Peripheral Control Register"]
189pub mod pmc_pcr;
190#[doc = "PMC_OCR register accessor: an alias for `Reg<PMC_OCR_SPEC>`"]
191pub type PMC_OCR = crate::Reg<pmc_ocr::PMC_OCR_SPEC>;
192#[doc = "Oscillator Calibration Register"]
193pub mod pmc_ocr;
194#[doc = "PMC_SLPWK_ER0 register accessor: an alias for `Reg<PMC_SLPWK_ER0_SPEC>`"]
195pub type PMC_SLPWK_ER0 = crate::Reg<pmc_slpwk_er0::PMC_SLPWK_ER0_SPEC>;
196#[doc = "SleepWalking Enable Register 0"]
197pub mod pmc_slpwk_er0;
198#[doc = "PMC_SLPWK_DR0 register accessor: an alias for `Reg<PMC_SLPWK_DR0_SPEC>`"]
199pub type PMC_SLPWK_DR0 = crate::Reg<pmc_slpwk_dr0::PMC_SLPWK_DR0_SPEC>;
200#[doc = "SleepWalking Disable Register 0"]
201pub mod pmc_slpwk_dr0;
202#[doc = "PMC_SLPWK_SR0 register accessor: an alias for `Reg<PMC_SLPWK_SR0_SPEC>`"]
203pub type PMC_SLPWK_SR0 = crate::Reg<pmc_slpwk_sr0::PMC_SLPWK_SR0_SPEC>;
204#[doc = "SleepWalking Status Register 0"]
205pub mod pmc_slpwk_sr0;
206#[doc = "PMC_SLPWK_ASR0 register accessor: an alias for `Reg<PMC_SLPWK_ASR0_SPEC>`"]
207pub type PMC_SLPWK_ASR0 = crate::Reg<pmc_slpwk_asr0::PMC_SLPWK_ASR0_SPEC>;
208#[doc = "SleepWalking Activity Status Register 0"]
209pub mod pmc_slpwk_asr0;
210#[doc = "PMC_PMMR register accessor: an alias for `Reg<PMC_PMMR_SPEC>`"]
211pub type PMC_PMMR = crate::Reg<pmc_pmmr::PMC_PMMR_SPEC>;
212#[doc = "PLL Maximum Multiplier Value Register"]
213pub mod pmc_pmmr;
214#[doc = "PMC_SLPWK_ER1 register accessor: an alias for `Reg<PMC_SLPWK_ER1_SPEC>`"]
215pub type PMC_SLPWK_ER1 = crate::Reg<pmc_slpwk_er1::PMC_SLPWK_ER1_SPEC>;
216#[doc = "SleepWalking Enable Register 1"]
217pub mod pmc_slpwk_er1;
218#[doc = "PMC_SLPWK_DR1 register accessor: an alias for `Reg<PMC_SLPWK_DR1_SPEC>`"]
219pub type PMC_SLPWK_DR1 = crate::Reg<pmc_slpwk_dr1::PMC_SLPWK_DR1_SPEC>;
220#[doc = "SleepWalking Disable Register 1"]
221pub mod pmc_slpwk_dr1;
222#[doc = "PMC_SLPWK_SR1 register accessor: an alias for `Reg<PMC_SLPWK_SR1_SPEC>`"]
223pub type PMC_SLPWK_SR1 = crate::Reg<pmc_slpwk_sr1::PMC_SLPWK_SR1_SPEC>;
224#[doc = "SleepWalking Status Register 1"]
225pub mod pmc_slpwk_sr1;
226#[doc = "PMC_SLPWK_ASR1 register accessor: an alias for `Reg<PMC_SLPWK_ASR1_SPEC>`"]
227pub type PMC_SLPWK_ASR1 = crate::Reg<pmc_slpwk_asr1::PMC_SLPWK_ASR1_SPEC>;
228#[doc = "SleepWalking Activity Status Register 1"]
229pub mod pmc_slpwk_asr1;
230#[doc = "PMC_SLPWK_AIPR register accessor: an alias for `Reg<PMC_SLPWK_AIPR_SPEC>`"]
231pub type PMC_SLPWK_AIPR = crate::Reg<pmc_slpwk_aipr::PMC_SLPWK_AIPR_SPEC>;
232#[doc = "SleepWalking Activity In Progress Register"]
233pub mod pmc_slpwk_aipr;