1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 type_: Type,
5 cfg: Cfg,
6 ctrl: Ctrl,
7 sr: Sr,
8 lckway: Lckway,
9 _reserved5: [u8; 0x0c],
10 maint0: Maint0,
11 maint1: Maint1,
12 mcfg: Mcfg,
13 men: Men,
14 mctrl: Mctrl,
15 msr: Msr,
16}
17impl RegisterBlock {
18#[doc = "0x00 - Cache Type Register"]
19 #[inline(always)]
20pub const fn type_(&self) -> &Type {
21&self.type_
22 }
23#[doc = "0x04 - Cache Configuration Register"]
24 #[inline(always)]
25pub const fn cfg(&self) -> &Cfg {
26&self.cfg
27 }
28#[doc = "0x08 - Cache Control Register"]
29 #[inline(always)]
30pub const fn ctrl(&self) -> &Ctrl {
31&self.ctrl
32 }
33#[doc = "0x0c - Cache Status Register"]
34 #[inline(always)]
35pub const fn sr(&self) -> &Sr {
36&self.sr
37 }
38#[doc = "0x10 - Cache Lock per Way Register"]
39 #[inline(always)]
40pub const fn lckway(&self) -> &Lckway {
41&self.lckway
42 }
43#[doc = "0x20 - Cache Maintenance Register 0"]
44 #[inline(always)]
45pub const fn maint0(&self) -> &Maint0 {
46&self.maint0
47 }
48#[doc = "0x24 - Cache Maintenance Register 1"]
49 #[inline(always)]
50pub const fn maint1(&self) -> &Maint1 {
51&self.maint1
52 }
53#[doc = "0x28 - Cache Monitor Configuration Register"]
54 #[inline(always)]
55pub const fn mcfg(&self) -> &Mcfg {
56&self.mcfg
57 }
58#[doc = "0x2c - Cache Monitor Enable Register"]
59 #[inline(always)]
60pub const fn men(&self) -> &Men {
61&self.men
62 }
63#[doc = "0x30 - Cache Monitor Control Register"]
64 #[inline(always)]
65pub const fn mctrl(&self) -> &Mctrl {
66&self.mctrl
67 }
68#[doc = "0x34 - Cache Monitor Status Register"]
69 #[inline(always)]
70pub const fn msr(&self) -> &Msr {
71&self.msr
72 }
73}
74#[doc = "TYPE (r) register accessor: Cache Type Register\n\nYou can [`read`](crate::Reg::read) this register and get [`type_::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@type_`]
75module"]
76#[doc(alias = "TYPE")]
77pub type Type = crate::Reg<type_::TypeSpec>;
78#[doc = "Cache Type Register"]
79pub mod type_;
80#[doc = "CFG (rw) register accessor: Cache Configuration Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cfg::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@cfg`]
81module"]
82#[doc(alias = "CFG")]
83pub type Cfg = crate::Reg<cfg::CfgSpec>;
84#[doc = "Cache Configuration Register"]
85pub mod cfg;
86#[doc = "CTRL (w) register accessor: Cache Control Register\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctrl`]
87module"]
88#[doc(alias = "CTRL")]
89pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
90#[doc = "Cache Control Register"]
91pub mod ctrl;
92#[doc = "SR (r) register accessor: Cache Status Register\n\nYou can [`read`](crate::Reg::read) this register and get [`sr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@sr`]
93module"]
94#[doc(alias = "SR")]
95pub type Sr = crate::Reg<sr::SrSpec>;
96#[doc = "Cache Status Register"]
97pub mod sr;
98#[doc = "LCKWAY (rw) register accessor: Cache Lock per Way Register\n\nYou can [`read`](crate::Reg::read) this register and get [`lckway::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`lckway::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@lckway`]
99module"]
100#[doc(alias = "LCKWAY")]
101pub type Lckway = crate::Reg<lckway::LckwaySpec>;
102#[doc = "Cache Lock per Way Register"]
103pub mod lckway;
104#[doc = "MAINT0 (w) register accessor: Cache Maintenance Register 0\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`maint0::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@maint0`]
105module"]
106#[doc(alias = "MAINT0")]
107pub type Maint0 = crate::Reg<maint0::Maint0Spec>;
108#[doc = "Cache Maintenance Register 0"]
109pub mod maint0;
110#[doc = "MAINT1 (w) register accessor: Cache Maintenance Register 1\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`maint1::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@maint1`]
111module"]
112#[doc(alias = "MAINT1")]
113pub type Maint1 = crate::Reg<maint1::Maint1Spec>;
114#[doc = "Cache Maintenance Register 1"]
115pub mod maint1;
116#[doc = "MCFG (rw) register accessor: Cache Monitor Configuration Register\n\nYou can [`read`](crate::Reg::read) this register and get [`mcfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`mcfg::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@mcfg`]
117module"]
118#[doc(alias = "MCFG")]
119pub type Mcfg = crate::Reg<mcfg::McfgSpec>;
120#[doc = "Cache Monitor Configuration Register"]
121pub mod mcfg;
122#[doc = "MEN (rw) register accessor: Cache Monitor Enable Register\n\nYou can [`read`](crate::Reg::read) this register and get [`men::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`men::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@men`]
123module"]
124#[doc(alias = "MEN")]
125pub type Men = crate::Reg<men::MenSpec>;
126#[doc = "Cache Monitor Enable Register"]
127pub mod men;
128#[doc = "MCTRL (w) register accessor: Cache Monitor Control Register\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`mctrl::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mctrl`]
129module"]
130#[doc(alias = "MCTRL")]
131pub type Mctrl = crate::Reg<mctrl::MctrlSpec>;
132#[doc = "Cache Monitor Control Register"]
133pub mod mctrl;
134#[doc = "MSR (r) register accessor: Cache Monitor Status Register\n\nYou can [`read`](crate::Reg::read) this register and get [`msr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@msr`]
135module"]
136#[doc(alias = "MSR")]
137pub type Msr = crate::Reg<msr::MsrSpec>;
138#[doc = "Cache Monitor Status Register"]
139pub mod msr;