esp32/
aes.rs

1#[repr(C)]
2#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5    start: START,
6    idle: IDLE,
7    mode: MODE,
8    _reserved3: [u8; 0x04],
9    key: [KEY; 8],
10    text: [TEXT; 4],
11    endian: ENDIAN,
12}
13impl RegisterBlock {
14    #[doc = "0x00 - "]
15    #[inline(always)]
16    pub const fn start(&self) -> &START {
17        &self.start
18    }
19    #[doc = "0x04 - "]
20    #[inline(always)]
21    pub const fn idle(&self) -> &IDLE {
22        &self.idle
23    }
24    #[doc = "0x08 - "]
25    #[inline(always)]
26    pub const fn mode(&self) -> &MODE {
27        &self.mode
28    }
29    #[doc = "0x10..0x30 - "]
30    #[inline(always)]
31    pub const fn key(&self, n: usize) -> &KEY {
32        &self.key[n]
33    }
34    #[doc = "Iterator for array of:"]
35    #[doc = "0x10..0x30 - "]
36    #[inline(always)]
37    pub fn key_iter(&self) -> impl Iterator<Item = &KEY> {
38        self.key.iter()
39    }
40    #[doc = "0x30..0x40 - "]
41    #[inline(always)]
42    pub const fn text(&self, n: usize) -> &TEXT {
43        &self.text[n]
44    }
45    #[doc = "Iterator for array of:"]
46    #[doc = "0x30..0x40 - "]
47    #[inline(always)]
48    pub fn text_iter(&self) -> impl Iterator<Item = &TEXT> {
49        self.text.iter()
50    }
51    #[doc = "0x40 - "]
52    #[inline(always)]
53    pub const fn endian(&self) -> &ENDIAN {
54        &self.endian
55    }
56}
57#[doc = "START (w) register accessor: \n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`start::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@start`] module"]
58pub type START = crate::Reg<start::START_SPEC>;
59#[doc = ""]
60pub mod start;
61#[doc = "IDLE (r) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`idle::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@idle`] module"]
62pub type IDLE = crate::Reg<idle::IDLE_SPEC>;
63#[doc = ""]
64pub mod idle;
65#[doc = "MODE (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`mode::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`mode::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mode`] module"]
66pub type MODE = crate::Reg<mode::MODE_SPEC>;
67#[doc = ""]
68pub mod mode;
69#[doc = "KEY (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`key::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`key::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@key`] module"]
70pub type KEY = crate::Reg<key::KEY_SPEC>;
71#[doc = ""]
72pub mod key;
73#[doc = "TEXT (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`text::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`text::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@text`] module"]
74pub type TEXT = crate::Reg<text::TEXT_SPEC>;
75#[doc = ""]
76pub mod text;
77#[doc = "ENDIAN (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`endian::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`endian::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@endian`] module"]
78pub type ENDIAN = crate::Reg<endian::ENDIAN_SPEC>;
79#[doc = ""]
80pub mod endian;