#[repr(C)]
#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
#[doc = "Register block"]
pub struct RegisterBlock {
_reserved0: [u8; 0x0c],
int_raw: INT_RAW,
int_st: INT_ST,
int_ena: INT_ENA,
int_clr: INT_CLR,
mult_conf: MULT_CONF,
_reserved5: [u8; 0xdc],
date: DATE,
k_mem: [K_MEM; 12],
px_mem: [PX_MEM; 12],
py_mem: [PY_MEM; 12],
qx_mem: [QX_MEM; 12],
qy_mem: [QY_MEM; 12],
qz_mem: [QZ_MEM; 12],
}
impl RegisterBlock {
#[doc = "0x0c - ECC raw interrupt status register"]
#[inline(always)]
pub const fn int_raw(&self) -> &INT_RAW {
&self.int_raw
}
#[doc = "0x10 - ECC masked interrupt status register"]
#[inline(always)]
pub const fn int_st(&self) -> &INT_ST {
&self.int_st
}
#[doc = "0x14 - ECC interrupt enable register"]
#[inline(always)]
pub const fn int_ena(&self) -> &INT_ENA {
&self.int_ena
}
#[doc = "0x18 - ECC interrupt clear register"]
#[inline(always)]
pub const fn int_clr(&self) -> &INT_CLR {
&self.int_clr
}
#[doc = "0x1c - ECC configuration register"]
#[inline(always)]
pub const fn mult_conf(&self) -> &MULT_CONF {
&self.mult_conf
}
#[doc = "0xfc - Version control register"]
#[inline(always)]
pub const fn date(&self) -> &DATE {
&self.date
}
#[doc = "0x100..0x130 - The memory that stores k."]
#[inline(always)]
pub const fn k_mem(&self, n: usize) -> &K_MEM {
&self.k_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x100..0x130 - The memory that stores k."]
#[inline(always)]
pub fn k_mem_iter(&self) -> impl Iterator<Item = &K_MEM> {
self.k_mem.iter()
}
#[doc = "0x130..0x160 - The memory that stores Px."]
#[inline(always)]
pub const fn px_mem(&self, n: usize) -> &PX_MEM {
&self.px_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x130..0x160 - The memory that stores Px."]
#[inline(always)]
pub fn px_mem_iter(&self) -> impl Iterator<Item = &PX_MEM> {
self.px_mem.iter()
}
#[doc = "0x160..0x190 - The memory that stores Py."]
#[inline(always)]
pub const fn py_mem(&self, n: usize) -> &PY_MEM {
&self.py_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x160..0x190 - The memory that stores Py."]
#[inline(always)]
pub fn py_mem_iter(&self) -> impl Iterator<Item = &PY_MEM> {
self.py_mem.iter()
}
#[doc = "0x190..0x1c0 - The memory that stores Qx."]
#[inline(always)]
pub const fn qx_mem(&self, n: usize) -> &QX_MEM {
&self.qx_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x190..0x1c0 - The memory that stores Qx."]
#[inline(always)]
pub fn qx_mem_iter(&self) -> impl Iterator<Item = &QX_MEM> {
self.qx_mem.iter()
}
#[doc = "0x1c0..0x1f0 - The memory that stores Qy."]
#[inline(always)]
pub const fn qy_mem(&self, n: usize) -> &QY_MEM {
&self.qy_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x1c0..0x1f0 - The memory that stores Qy."]
#[inline(always)]
pub fn qy_mem_iter(&self) -> impl Iterator<Item = &QY_MEM> {
self.qy_mem.iter()
}
#[doc = "0x1f0..0x220 - The memory that stores Qz."]
#[inline(always)]
pub const fn qz_mem(&self, n: usize) -> &QZ_MEM {
&self.qz_mem[n]
}
#[doc = "Iterator for array of:"]
#[doc = "0x1f0..0x220 - The memory that stores Qz."]
#[inline(always)]
pub fn qz_mem_iter(&self) -> impl Iterator<Item = &QZ_MEM> {
self.qz_mem.iter()
}
}
#[doc = "INT_RAW (r) register accessor: ECC raw interrupt status register\n\nYou can [`read`](crate::Reg::read) this register and get [`int_raw::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int_raw`] module"]
pub type INT_RAW = crate::Reg<int_raw::INT_RAW_SPEC>;
#[doc = "ECC raw interrupt status register"]
pub mod int_raw;
#[doc = "INT_ST (r) register accessor: ECC masked interrupt status register\n\nYou can [`read`](crate::Reg::read) this register and get [`int_st::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int_st`] module"]
pub type INT_ST = crate::Reg<int_st::INT_ST_SPEC>;
#[doc = "ECC masked interrupt status register"]
pub mod int_st;
#[doc = "INT_ENA (rw) register accessor: ECC interrupt enable register\n\nYou can [`read`](crate::Reg::read) this register and get [`int_ena::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int_ena::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@int_ena`] module"]
pub type INT_ENA = crate::Reg<int_ena::INT_ENA_SPEC>;
#[doc = "ECC interrupt enable register"]
pub mod int_ena;
#[doc = "INT_CLR (w) register accessor: ECC interrupt clear register\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int_clr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int_clr`] module"]
pub type INT_CLR = crate::Reg<int_clr::INT_CLR_SPEC>;
#[doc = "ECC interrupt clear register"]
pub mod int_clr;
#[doc = "MULT_CONF (rw) register accessor: ECC configuration register\n\nYou can [`read`](crate::Reg::read) this register and get [`mult_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`mult_conf::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@mult_conf`] module"]
pub type MULT_CONF = crate::Reg<mult_conf::MULT_CONF_SPEC>;
#[doc = "ECC configuration register"]
pub mod mult_conf;
pub use crate::aes::{date, DATE};
#[doc = "K_MEM (rw) register accessor: The memory that stores k.\n\nYou can [`read`](crate::Reg::read) this register and get [`k_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`k_mem::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@k_mem`] module"]
pub type K_MEM = crate::Reg<k_mem::K_MEM_SPEC>;
#[doc = "The memory that stores k."]
pub mod k_mem;
#[doc = "PX_MEM (rw) register accessor: The memory that stores Px.\n\nYou can [`read`](crate::Reg::read) this register and get [`px_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`px_mem::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@px_mem`] module"]
pub type PX_MEM = crate::Reg<px_mem::PX_MEM_SPEC>;
#[doc = "The memory that stores Px."]
pub mod px_mem;
#[doc = "PY_MEM (rw) register accessor: The memory that stores Py.\n\nYou can [`read`](crate::Reg::read) this register and get [`py_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`py_mem::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@py_mem`] module"]
pub type PY_MEM = crate::Reg<py_mem::PY_MEM_SPEC>;
#[doc = "The memory that stores Py."]
pub mod py_mem;
#[doc = "QX_MEM (rw) register accessor: The memory that stores Qx.\n\nYou can [`read`](crate::Reg::read) this register and get [`qx_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`qx_mem::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@qx_mem`] module"]
pub type QX_MEM = crate::Reg<qx_mem::QX_MEM_SPEC>;
#[doc = "The memory that stores Qx."]
pub mod qx_mem;
#[doc = "QY_MEM (rw) register accessor: The memory that stores Qy.\n\nYou can [`read`](crate::Reg::read) this register and get [`qy_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`qy_mem::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@qy_mem`] module"]
pub type QY_MEM = crate::Reg<qy_mem::QY_MEM_SPEC>;
#[doc = "The memory that stores Qy."]
pub mod qy_mem;
#[doc = "QZ_MEM (rw) register accessor: The memory that stores Qz.\n\nYou can [`read`](crate::Reg::read) this register and get [`qz_mem::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`qz_mem::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@qz_mem`] module"]
pub type QZ_MEM = crate::Reg<qz_mem::QZ_MEM_SPEC>;
#[doc = "The memory that stores Qz."]
pub mod qz_mem;