stm32g0_staging/stm32g0c1/
aes.rs

1#[repr(C)]
2#[derive(Debug)]
3///Register block
4pub struct RegisterBlock {
5    cr: CR,
6    sr: SR,
7    dinr: DINR,
8    doutr: DOUTR,
9    keyr0: KEYR0,
10    keyr1: KEYR1,
11    keyr2: KEYR2,
12    keyr3: KEYR3,
13    ivr0: IVR0,
14    ivr1: IVR1,
15    ivr2: IVR2,
16    ivr3: IVR3,
17    keyr4: KEYR4,
18    keyr5: KEYR5,
19    keyr6: KEYR6,
20    keyr7: KEYR7,
21    susp0r: SUSP0R,
22    susp1r: SUSP1R,
23    susp2r: SUSP2R,
24    susp3r: SUSP3R,
25    susp4r: SUSP4R,
26    susp5r: SUSP5R,
27    susp6r: SUSP6R,
28    susp7r: SUSP7R,
29}
30impl RegisterBlock {
31    ///0x00 - AES control register
32    #[inline(always)]
33    pub const fn cr(&self) -> &CR {
34        &self.cr
35    }
36    ///0x04 - AES status register
37    #[inline(always)]
38    pub const fn sr(&self) -> &SR {
39        &self.sr
40    }
41    ///0x08 - AES data input register
42    #[inline(always)]
43    pub const fn dinr(&self) -> &DINR {
44        &self.dinr
45    }
46    ///0x0c - AES data output register
47    #[inline(always)]
48    pub const fn doutr(&self) -> &DOUTR {
49        &self.doutr
50    }
51    ///0x10 - AES key register 0
52    #[inline(always)]
53    pub const fn keyr0(&self) -> &KEYR0 {
54        &self.keyr0
55    }
56    ///0x14 - AES key register 1
57    #[inline(always)]
58    pub const fn keyr1(&self) -> &KEYR1 {
59        &self.keyr1
60    }
61    ///0x18 - AES key register 2
62    #[inline(always)]
63    pub const fn keyr2(&self) -> &KEYR2 {
64        &self.keyr2
65    }
66    ///0x1c - AES key register 3
67    #[inline(always)]
68    pub const fn keyr3(&self) -> &KEYR3 {
69        &self.keyr3
70    }
71    ///0x20 - AES initialization vector register 0
72    #[inline(always)]
73    pub const fn ivr0(&self) -> &IVR0 {
74        &self.ivr0
75    }
76    ///0x24 - AES initialization vector register 1
77    #[inline(always)]
78    pub const fn ivr1(&self) -> &IVR1 {
79        &self.ivr1
80    }
81    ///0x28 - AES initialization vector register 2
82    #[inline(always)]
83    pub const fn ivr2(&self) -> &IVR2 {
84        &self.ivr2
85    }
86    ///0x2c - AES initialization vector register 3
87    #[inline(always)]
88    pub const fn ivr3(&self) -> &IVR3 {
89        &self.ivr3
90    }
91    ///0x30 - AES key register 4
92    #[inline(always)]
93    pub const fn keyr4(&self) -> &KEYR4 {
94        &self.keyr4
95    }
96    ///0x34 - AES key register 5
97    #[inline(always)]
98    pub const fn keyr5(&self) -> &KEYR5 {
99        &self.keyr5
100    }
101    ///0x38 - AES key register 6
102    #[inline(always)]
103    pub const fn keyr6(&self) -> &KEYR6 {
104        &self.keyr6
105    }
106    ///0x3c - AES key register 7
107    #[inline(always)]
108    pub const fn keyr7(&self) -> &KEYR7 {
109        &self.keyr7
110    }
111    ///0x40 - AES suspend registers
112    #[inline(always)]
113    pub const fn susp0r(&self) -> &SUSP0R {
114        &self.susp0r
115    }
116    ///0x44 - AES suspend registers
117    #[inline(always)]
118    pub const fn susp1r(&self) -> &SUSP1R {
119        &self.susp1r
120    }
121    ///0x48 - AES suspend registers
122    #[inline(always)]
123    pub const fn susp2r(&self) -> &SUSP2R {
124        &self.susp2r
125    }
126    ///0x4c - AES suspend registers
127    #[inline(always)]
128    pub const fn susp3r(&self) -> &SUSP3R {
129        &self.susp3r
130    }
131    ///0x50 - AES suspend registers
132    #[inline(always)]
133    pub const fn susp4r(&self) -> &SUSP4R {
134        &self.susp4r
135    }
136    ///0x54 - AES suspend registers
137    #[inline(always)]
138    pub const fn susp5r(&self) -> &SUSP5R {
139        &self.susp5r
140    }
141    ///0x58 - AES suspend registers
142    #[inline(always)]
143    pub const fn susp6r(&self) -> &SUSP6R {
144        &self.susp6r
145    }
146    ///0x5c - AES suspend registers
147    #[inline(always)]
148    pub const fn susp7r(&self) -> &SUSP7R {
149        &self.susp7r
150    }
151}
152/**CR (rw) register accessor: AES control register
153
154You can [`read`](crate::Reg::read) this register and get [`cr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
155
156See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:CR)
157
158For information about available fields see [`mod@cr`]
159module*/
160pub type CR = crate::Reg<cr::CRrs>;
161///AES control register
162pub mod cr;
163/**SR (r) register accessor: AES status register
164
165You can [`read`](crate::Reg::read) this register and get [`sr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
166
167See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SR)
168
169For information about available fields see [`mod@sr`]
170module*/
171pub type SR = crate::Reg<sr::SRrs>;
172///AES status register
173pub mod sr;
174/**DINR (rw) register accessor: AES data input register
175
176You can [`read`](crate::Reg::read) this register and get [`dinr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dinr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
177
178See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:DINR)
179
180For information about available fields see [`mod@dinr`]
181module*/
182pub type DINR = crate::Reg<dinr::DINRrs>;
183///AES data input register
184pub mod dinr;
185/**DOUTR (r) register accessor: AES data output register
186
187You can [`read`](crate::Reg::read) this register and get [`doutr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
188
189See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:DOUTR)
190
191For information about available fields see [`mod@doutr`]
192module*/
193pub type DOUTR = crate::Reg<doutr::DOUTRrs>;
194///AES data output register
195pub mod doutr;
196/**KEYR0 (rw) register accessor: AES key register 0
197
198You can [`read`](crate::Reg::read) this register and get [`keyr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
199
200See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR0)
201
202For information about available fields see [`mod@keyr0`]
203module*/
204pub type KEYR0 = crate::Reg<keyr0::KEYR0rs>;
205///AES key register 0
206pub mod keyr0;
207/**KEYR1 (rw) register accessor: AES key register 1
208
209You can [`read`](crate::Reg::read) this register and get [`keyr1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
210
211See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR1)
212
213For information about available fields see [`mod@keyr1`]
214module*/
215pub type KEYR1 = crate::Reg<keyr1::KEYR1rs>;
216///AES key register 1
217pub mod keyr1;
218/**KEYR2 (rw) register accessor: AES key register 2
219
220You can [`read`](crate::Reg::read) this register and get [`keyr2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
221
222See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR2)
223
224For information about available fields see [`mod@keyr2`]
225module*/
226pub type KEYR2 = crate::Reg<keyr2::KEYR2rs>;
227///AES key register 2
228pub mod keyr2;
229/**KEYR3 (rw) register accessor: AES key register 3
230
231You can [`read`](crate::Reg::read) this register and get [`keyr3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
232
233See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR3)
234
235For information about available fields see [`mod@keyr3`]
236module*/
237pub type KEYR3 = crate::Reg<keyr3::KEYR3rs>;
238///AES key register 3
239pub mod keyr3;
240/**IVR0 (rw) register accessor: AES initialization vector register 0
241
242You can [`read`](crate::Reg::read) this register and get [`ivr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ivr0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
243
244See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:IVR0)
245
246For information about available fields see [`mod@ivr0`]
247module*/
248pub type IVR0 = crate::Reg<ivr0::IVR0rs>;
249///AES initialization vector register 0
250pub mod ivr0;
251/**IVR1 (rw) register accessor: AES initialization vector register 1
252
253You can [`read`](crate::Reg::read) this register and get [`ivr1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ivr1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
254
255See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:IVR1)
256
257For information about available fields see [`mod@ivr1`]
258module*/
259pub type IVR1 = crate::Reg<ivr1::IVR1rs>;
260///AES initialization vector register 1
261pub mod ivr1;
262/**IVR2 (rw) register accessor: AES initialization vector register 2
263
264You can [`read`](crate::Reg::read) this register and get [`ivr2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ivr2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
265
266See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:IVR2)
267
268For information about available fields see [`mod@ivr2`]
269module*/
270pub type IVR2 = crate::Reg<ivr2::IVR2rs>;
271///AES initialization vector register 2
272pub mod ivr2;
273/**IVR3 (rw) register accessor: AES initialization vector register 3
274
275You can [`read`](crate::Reg::read) this register and get [`ivr3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ivr3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
276
277See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:IVR3)
278
279For information about available fields see [`mod@ivr3`]
280module*/
281pub type IVR3 = crate::Reg<ivr3::IVR3rs>;
282///AES initialization vector register 3
283pub mod ivr3;
284/**KEYR4 (rw) register accessor: AES key register 4
285
286You can [`read`](crate::Reg::read) this register and get [`keyr4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
287
288See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR4)
289
290For information about available fields see [`mod@keyr4`]
291module*/
292pub type KEYR4 = crate::Reg<keyr4::KEYR4rs>;
293///AES key register 4
294pub mod keyr4;
295/**KEYR5 (rw) register accessor: AES key register 5
296
297You can [`read`](crate::Reg::read) this register and get [`keyr5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
298
299See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR5)
300
301For information about available fields see [`mod@keyr5`]
302module*/
303pub type KEYR5 = crate::Reg<keyr5::KEYR5rs>;
304///AES key register 5
305pub mod keyr5;
306/**KEYR6 (rw) register accessor: AES key register 6
307
308You can [`read`](crate::Reg::read) this register and get [`keyr6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
309
310See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR6)
311
312For information about available fields see [`mod@keyr6`]
313module*/
314pub type KEYR6 = crate::Reg<keyr6::KEYR6rs>;
315///AES key register 6
316pub mod keyr6;
317/**KEYR7 (rw) register accessor: AES key register 7
318
319You can [`read`](crate::Reg::read) this register and get [`keyr7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`keyr7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
320
321See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:KEYR7)
322
323For information about available fields see [`mod@keyr7`]
324module*/
325pub type KEYR7 = crate::Reg<keyr7::KEYR7rs>;
326///AES key register 7
327pub mod keyr7;
328/**SUSP0R (rw) register accessor: AES suspend registers
329
330You can [`read`](crate::Reg::read) this register and get [`susp0r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp0r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
331
332See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP0R)
333
334For information about available fields see [`mod@susp0r`]
335module*/
336pub type SUSP0R = crate::Reg<susp0r::SUSP0Rrs>;
337///AES suspend registers
338pub mod susp0r;
339/**SUSP1R (rw) register accessor: AES suspend registers
340
341You can [`read`](crate::Reg::read) this register and get [`susp1r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp1r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
342
343See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP1R)
344
345For information about available fields see [`mod@susp1r`]
346module*/
347pub type SUSP1R = crate::Reg<susp1r::SUSP1Rrs>;
348///AES suspend registers
349pub mod susp1r;
350/**SUSP2R (rw) register accessor: AES suspend registers
351
352You can [`read`](crate::Reg::read) this register and get [`susp2r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp2r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
353
354See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP2R)
355
356For information about available fields see [`mod@susp2r`]
357module*/
358pub type SUSP2R = crate::Reg<susp2r::SUSP2Rrs>;
359///AES suspend registers
360pub mod susp2r;
361/**SUSP3R (rw) register accessor: AES suspend registers
362
363You can [`read`](crate::Reg::read) this register and get [`susp3r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp3r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
364
365See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP3R)
366
367For information about available fields see [`mod@susp3r`]
368module*/
369pub type SUSP3R = crate::Reg<susp3r::SUSP3Rrs>;
370///AES suspend registers
371pub mod susp3r;
372/**SUSP4R (rw) register accessor: AES suspend registers
373
374You can [`read`](crate::Reg::read) this register and get [`susp4r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp4r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
375
376See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP4R)
377
378For information about available fields see [`mod@susp4r`]
379module*/
380pub type SUSP4R = crate::Reg<susp4r::SUSP4Rrs>;
381///AES suspend registers
382pub mod susp4r;
383/**SUSP5R (rw) register accessor: AES suspend registers
384
385You can [`read`](crate::Reg::read) this register and get [`susp5r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp5r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
386
387See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP5R)
388
389For information about available fields see [`mod@susp5r`]
390module*/
391pub type SUSP5R = crate::Reg<susp5r::SUSP5Rrs>;
392///AES suspend registers
393pub mod susp5r;
394/**SUSP6R (rw) register accessor: AES suspend registers
395
396You can [`read`](crate::Reg::read) this register and get [`susp6r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp6r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
397
398See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP6R)
399
400For information about available fields see [`mod@susp6r`]
401module*/
402pub type SUSP6R = crate::Reg<susp6r::SUSP6Rrs>;
403///AES suspend registers
404pub mod susp6r;
405/**SUSP7R (rw) register accessor: AES suspend registers
406
407You can [`read`](crate::Reg::read) this register and get [`susp7r::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`susp7r::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
408
409See register [structure](https://stm32-rs.github.io/stm32-rs/STM32G0C1.html#AES:SUSP7R)
410
411For information about available fields see [`mod@susp7r`]
412module*/
413pub type SUSP7R = crate::Reg<susp7r::SUSP7Rrs>;
414///AES suspend registers
415pub mod susp7r;