xwrl64xx_pac/
app_canecc.rs1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 rev: Rev,
5 _reserved1: [u8; 0x04],
6 vector: Vector,
7 stat: Stat,
8 _reserved3: [u8; 0x04],
9 ctrl: Ctrl,
10 err_ctrl1: ErrCtrl1,
11 err_ctrl2: ErrCtrl2,
12 err_stat1: ErrStat1,
13 err_stat2: ErrStat2,
14 err_stat3: ErrStat3,
15 _reserved9: [u8; 0x10],
16 sec_eoi_reg: SecEoiReg,
17 sec_status_reg0: SecStatusReg0,
18 _reserved11: [u8; 0x3c],
19 sec_enable_set_reg0: SecEnableSetReg0,
20 _reserved12: [u8; 0x3c],
21 sec_enable_clr_reg0: SecEnableClrReg0,
22 _reserved13: [u8; 0x78],
23 ded_eoi_reg: DedEoiReg,
24 ded_status_reg0: DedStatusReg0,
25 _reserved15: [u8; 0x3c],
26 ded_enable_set_reg0: DedEnableSetReg0,
27 _reserved16: [u8; 0x3c],
28 ded_enable_clr_reg0: DedEnableClrReg0,
29 _reserved17: [u8; 0x3c],
30 aggr_enable_set: AggrEnableSet,
31 aggr_enable_clr: AggrEnableClr,
32 aggr_status_set: AggrStatusSet,
33 aggr_status_clr: AggrStatusClr,
34}
35impl RegisterBlock {
36 #[doc = "0x00 - Aggregator Revision Register"]
37 #[inline(always)]
38 pub const fn rev(&self) -> &Rev {
39 &self.rev
40 }
41 #[doc = "0x08 - ECC Vector Register"]
42 #[inline(always)]
43 pub const fn vector(&self) -> &Vector {
44 &self.vector
45 }
46 #[doc = "0x0c - Misc Status"]
47 #[inline(always)]
48 pub const fn stat(&self) -> &Stat {
49 &self.stat
50 }
51 #[doc = "0x14 - CTRL"]
52 #[inline(always)]
53 pub const fn ctrl(&self) -> &Ctrl {
54 &self.ctrl
55 }
56 #[doc = "0x18 - ERR_CTRL1"]
57 #[inline(always)]
58 pub const fn err_ctrl1(&self) -> &ErrCtrl1 {
59 &self.err_ctrl1
60 }
61 #[doc = "0x1c - ERR_CTRL2"]
62 #[inline(always)]
63 pub const fn err_ctrl2(&self) -> &ErrCtrl2 {
64 &self.err_ctrl2
65 }
66 #[doc = "0x20 - ERR_STAT1"]
67 #[inline(always)]
68 pub const fn err_stat1(&self) -> &ErrStat1 {
69 &self.err_stat1
70 }
71 #[doc = "0x24 - ERR_STAT2"]
72 #[inline(always)]
73 pub const fn err_stat2(&self) -> &ErrStat2 {
74 &self.err_stat2
75 }
76 #[doc = "0x28 - ERR_STAT3"]
77 #[inline(always)]
78 pub const fn err_stat3(&self) -> &ErrStat3 {
79 &self.err_stat3
80 }
81 #[doc = "0x3c - EOI Register"]
82 #[inline(always)]
83 pub const fn sec_eoi_reg(&self) -> &SecEoiReg {
84 &self.sec_eoi_reg
85 }
86 #[doc = "0x40 - Interrupt Status Register 0"]
87 #[inline(always)]
88 pub const fn sec_status_reg0(&self) -> &SecStatusReg0 {
89 &self.sec_status_reg0
90 }
91 #[doc = "0x80 - Interrupt Enable Set Register 0"]
92 #[inline(always)]
93 pub const fn sec_enable_set_reg0(&self) -> &SecEnableSetReg0 {
94 &self.sec_enable_set_reg0
95 }
96 #[doc = "0xc0 - Interrupt Enable Clear Register 0"]
97 #[inline(always)]
98 pub const fn sec_enable_clr_reg0(&self) -> &SecEnableClrReg0 {
99 &self.sec_enable_clr_reg0
100 }
101 #[doc = "0x13c - EOI Register"]
102 #[inline(always)]
103 pub const fn ded_eoi_reg(&self) -> &DedEoiReg {
104 &self.ded_eoi_reg
105 }
106 #[doc = "0x140 - Interrupt Status Register 0"]
107 #[inline(always)]
108 pub const fn ded_status_reg0(&self) -> &DedStatusReg0 {
109 &self.ded_status_reg0
110 }
111 #[doc = "0x180 - Interrupt Enable Set Register 0"]
112 #[inline(always)]
113 pub const fn ded_enable_set_reg0(&self) -> &DedEnableSetReg0 {
114 &self.ded_enable_set_reg0
115 }
116 #[doc = "0x1c0 - Interrupt Enable Clear Register 0"]
117 #[inline(always)]
118 pub const fn ded_enable_clr_reg0(&self) -> &DedEnableClrReg0 {
119 &self.ded_enable_clr_reg0
120 }
121 #[doc = "0x200 - AGGR interrupt enable set Register"]
122 #[inline(always)]
123 pub const fn aggr_enable_set(&self) -> &AggrEnableSet {
124 &self.aggr_enable_set
125 }
126 #[doc = "0x204 - AGGR interrupt enable clear Register"]
127 #[inline(always)]
128 pub const fn aggr_enable_clr(&self) -> &AggrEnableClr {
129 &self.aggr_enable_clr
130 }
131 #[doc = "0x208 - AGGR interrupt status set Register"]
132 #[inline(always)]
133 pub const fn aggr_status_set(&self) -> &AggrStatusSet {
134 &self.aggr_status_set
135 }
136 #[doc = "0x20c - AGGR interrupt status clear Register"]
137 #[inline(always)]
138 pub const fn aggr_status_clr(&self) -> &AggrStatusClr {
139 &self.aggr_status_clr
140 }
141}
142#[doc = "REV (rw) register accessor: Aggregator Revision Register\n\nYou can [`read`](crate::Reg::read) this register and get [`rev::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rev::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@rev`]
143module"]
144#[doc(alias = "REV")]
145pub type Rev = crate::Reg<rev::RevSpec>;
146#[doc = "Aggregator Revision Register"]
147pub mod rev;
148#[doc = "VECTOR (rw) register accessor: ECC Vector Register\n\nYou can [`read`](crate::Reg::read) this register and get [`vector::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`vector::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@vector`]
149module"]
150#[doc(alias = "VECTOR")]
151pub type Vector = crate::Reg<vector::VectorSpec>;
152#[doc = "ECC Vector Register"]
153pub mod vector;
154#[doc = "STAT (rw) register accessor: Misc Status\n\nYou can [`read`](crate::Reg::read) this register and get [`stat::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`stat::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@stat`]
155module"]
156#[doc(alias = "STAT")]
157pub type Stat = crate::Reg<stat::StatSpec>;
158#[doc = "Misc Status"]
159pub mod stat;
160#[doc = "CTRL (rw) register accessor: CTRL\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::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@ctrl`]
161module"]
162#[doc(alias = "CTRL")]
163pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
164#[doc = "CTRL"]
165pub mod ctrl;
166#[doc = "ERR_CTRL1 (rw) register accessor: ERR_CTRL1\n\nYou can [`read`](crate::Reg::read) this register and get [`err_ctrl1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`err_ctrl1::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@err_ctrl1`]
167module"]
168#[doc(alias = "ERR_CTRL1")]
169pub type ErrCtrl1 = crate::Reg<err_ctrl1::ErrCtrl1Spec>;
170#[doc = "ERR_CTRL1"]
171pub mod err_ctrl1;
172#[doc = "ERR_CTRL2 (rw) register accessor: ERR_CTRL2\n\nYou can [`read`](crate::Reg::read) this register and get [`err_ctrl2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`err_ctrl2::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@err_ctrl2`]
173module"]
174#[doc(alias = "ERR_CTRL2")]
175pub type ErrCtrl2 = crate::Reg<err_ctrl2::ErrCtrl2Spec>;
176#[doc = "ERR_CTRL2"]
177pub mod err_ctrl2;
178#[doc = "ERR_STAT1 (rw) register accessor: ERR_STAT1\n\nYou can [`read`](crate::Reg::read) this register and get [`err_stat1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`err_stat1::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@err_stat1`]
179module"]
180#[doc(alias = "ERR_STAT1")]
181pub type ErrStat1 = crate::Reg<err_stat1::ErrStat1Spec>;
182#[doc = "ERR_STAT1"]
183pub mod err_stat1;
184#[doc = "ERR_STAT2 (rw) register accessor: ERR_STAT2\n\nYou can [`read`](crate::Reg::read) this register and get [`err_stat2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`err_stat2::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@err_stat2`]
185module"]
186#[doc(alias = "ERR_STAT2")]
187pub type ErrStat2 = crate::Reg<err_stat2::ErrStat2Spec>;
188#[doc = "ERR_STAT2"]
189pub mod err_stat2;
190#[doc = "ERR_STAT3 (rw) register accessor: ERR_STAT3\n\nYou can [`read`](crate::Reg::read) this register and get [`err_stat3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`err_stat3::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@err_stat3`]
191module"]
192#[doc(alias = "ERR_STAT3")]
193pub type ErrStat3 = crate::Reg<err_stat3::ErrStat3Spec>;
194#[doc = "ERR_STAT3"]
195pub mod err_stat3;
196#[doc = "SEC_EOI_REG (rw) register accessor: EOI Register\n\nYou can [`read`](crate::Reg::read) this register and get [`sec_eoi_reg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sec_eoi_reg::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@sec_eoi_reg`]
197module"]
198#[doc(alias = "SEC_EOI_REG")]
199pub type SecEoiReg = crate::Reg<sec_eoi_reg::SecEoiRegSpec>;
200#[doc = "EOI Register"]
201pub mod sec_eoi_reg;
202#[doc = "SEC_STATUS_REG0 (rw) register accessor: Interrupt Status Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`sec_status_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sec_status_reg0::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@sec_status_reg0`]
203module"]
204#[doc(alias = "SEC_STATUS_REG0")]
205pub type SecStatusReg0 = crate::Reg<sec_status_reg0::SecStatusReg0Spec>;
206#[doc = "Interrupt Status Register 0"]
207pub mod sec_status_reg0;
208#[doc = "SEC_ENABLE_SET_REG0 (rw) register accessor: Interrupt Enable Set Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`sec_enable_set_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sec_enable_set_reg0::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@sec_enable_set_reg0`]
209module"]
210#[doc(alias = "SEC_ENABLE_SET_REG0")]
211pub type SecEnableSetReg0 = crate::Reg<sec_enable_set_reg0::SecEnableSetReg0Spec>;
212#[doc = "Interrupt Enable Set Register 0"]
213pub mod sec_enable_set_reg0;
214#[doc = "SEC_ENABLE_CLR_REG0 (rw) register accessor: Interrupt Enable Clear Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`sec_enable_clr_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sec_enable_clr_reg0::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@sec_enable_clr_reg0`]
215module"]
216#[doc(alias = "SEC_ENABLE_CLR_REG0")]
217pub type SecEnableClrReg0 = crate::Reg<sec_enable_clr_reg0::SecEnableClrReg0Spec>;
218#[doc = "Interrupt Enable Clear Register 0"]
219pub mod sec_enable_clr_reg0;
220#[doc = "DED_EOI_REG (rw) register accessor: EOI Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ded_eoi_reg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ded_eoi_reg::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@ded_eoi_reg`]
221module"]
222#[doc(alias = "DED_EOI_REG")]
223pub type DedEoiReg = crate::Reg<ded_eoi_reg::DedEoiRegSpec>;
224#[doc = "EOI Register"]
225pub mod ded_eoi_reg;
226#[doc = "DED_STATUS_REG0 (rw) register accessor: Interrupt Status Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ded_status_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ded_status_reg0::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@ded_status_reg0`]
227module"]
228#[doc(alias = "DED_STATUS_REG0")]
229pub type DedStatusReg0 = crate::Reg<ded_status_reg0::DedStatusReg0Spec>;
230#[doc = "Interrupt Status Register 0"]
231pub mod ded_status_reg0;
232#[doc = "DED_ENABLE_SET_REG0 (rw) register accessor: Interrupt Enable Set Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ded_enable_set_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ded_enable_set_reg0::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@ded_enable_set_reg0`]
233module"]
234#[doc(alias = "DED_ENABLE_SET_REG0")]
235pub type DedEnableSetReg0 = crate::Reg<ded_enable_set_reg0::DedEnableSetReg0Spec>;
236#[doc = "Interrupt Enable Set Register 0"]
237pub mod ded_enable_set_reg0;
238#[doc = "DED_ENABLE_CLR_REG0 (rw) register accessor: Interrupt Enable Clear Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ded_enable_clr_reg0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ded_enable_clr_reg0::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@ded_enable_clr_reg0`]
239module"]
240#[doc(alias = "DED_ENABLE_CLR_REG0")]
241pub type DedEnableClrReg0 = crate::Reg<ded_enable_clr_reg0::DedEnableClrReg0Spec>;
242#[doc = "Interrupt Enable Clear Register 0"]
243pub mod ded_enable_clr_reg0;
244#[doc = "AGGR_ENABLE_SET (rw) register accessor: AGGR interrupt enable set Register\n\nYou can [`read`](crate::Reg::read) this register and get [`aggr_enable_set::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`aggr_enable_set::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@aggr_enable_set`]
245module"]
246#[doc(alias = "AGGR_ENABLE_SET")]
247pub type AggrEnableSet = crate::Reg<aggr_enable_set::AggrEnableSetSpec>;
248#[doc = "AGGR interrupt enable set Register"]
249pub mod aggr_enable_set;
250#[doc = "AGGR_ENABLE_CLR (rw) register accessor: AGGR interrupt enable clear Register\n\nYou can [`read`](crate::Reg::read) this register and get [`aggr_enable_clr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`aggr_enable_clr::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@aggr_enable_clr`]
251module"]
252#[doc(alias = "AGGR_ENABLE_CLR")]
253pub type AggrEnableClr = crate::Reg<aggr_enable_clr::AggrEnableClrSpec>;
254#[doc = "AGGR interrupt enable clear Register"]
255pub mod aggr_enable_clr;
256#[doc = "AGGR_STATUS_SET (rw) register accessor: AGGR interrupt status set Register\n\nYou can [`read`](crate::Reg::read) this register and get [`aggr_status_set::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`aggr_status_set::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@aggr_status_set`]
257module"]
258#[doc(alias = "AGGR_STATUS_SET")]
259pub type AggrStatusSet = crate::Reg<aggr_status_set::AggrStatusSetSpec>;
260#[doc = "AGGR interrupt status set Register"]
261pub mod aggr_status_set;
262#[doc = "AGGR_STATUS_CLR (rw) register accessor: AGGR interrupt status clear Register\n\nYou can [`read`](crate::Reg::read) this register and get [`aggr_status_clr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`aggr_status_clr::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@aggr_status_clr`]
263module"]
264#[doc(alias = "AGGR_STATUS_CLR")]
265pub type AggrStatusClr = crate::Reg<aggr_status_clr::AggrStatusClrSpec>;
266#[doc = "AGGR interrupt status clear Register"]
267pub mod aggr_status_clr;