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;