1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 matrix_mcfg0: MatrixMcfg0,
5 matrix_mcfg1: MatrixMcfg1,
6 matrix_mcfg2: MatrixMcfg2,
7 matrix_mcfg3: MatrixMcfg3,
8 _reserved4: [u8; 0x30],
9 matrix_scfg0: MatrixScfg0,
10 matrix_scfg1: MatrixScfg1,
11 matrix_scfg2: MatrixScfg2,
12 matrix_scfg3: MatrixScfg3,
13 matrix_scfg4: MatrixScfg4,
14 _reserved9: [u8; 0x2c],
15 matrix_pras0: MatrixPras0,
16 _reserved10: [u8; 0x04],
17 matrix_pras1: MatrixPras1,
18 _reserved11: [u8; 0x04],
19 matrix_pras2: MatrixPras2,
20 _reserved12: [u8; 0x04],
21 matrix_pras3: MatrixPras3,
22 _reserved13: [u8; 0x04],
23 matrix_pras4: MatrixPras4,
24 _reserved14: [u8; 0x70],
25 ccfg_sysio: CcfgSysio,
26 _reserved15: [u8; 0x04],
27 ccfg_smcnfcs: CcfgSmcnfcs,
28 _reserved16: [u8; 0xc4],
29 matrix_wpmr: MatrixWpmr,
30 matrix_wpsr: MatrixWpsr,
31}
32impl RegisterBlock {
33 #[doc = "0x00 - Master Configuration Register 0"]
34 #[inline(always)]
35 pub const fn matrix_mcfg0(&self) -> &MatrixMcfg0 {
36 &self.matrix_mcfg0
37 }
38 #[doc = "0x04 - Master Configuration Register 1"]
39 #[inline(always)]
40 pub const fn matrix_mcfg1(&self) -> &MatrixMcfg1 {
41 &self.matrix_mcfg1
42 }
43 #[doc = "0x08 - Master Configuration Register 2"]
44 #[inline(always)]
45 pub const fn matrix_mcfg2(&self) -> &MatrixMcfg2 {
46 &self.matrix_mcfg2
47 }
48 #[doc = "0x0c - Master Configuration Register 3"]
49 #[inline(always)]
50 pub const fn matrix_mcfg3(&self) -> &MatrixMcfg3 {
51 &self.matrix_mcfg3
52 }
53 #[doc = "0x40 - Slave Configuration Register 0"]
54 #[inline(always)]
55 pub const fn matrix_scfg0(&self) -> &MatrixScfg0 {
56 &self.matrix_scfg0
57 }
58 #[doc = "0x44 - Slave Configuration Register 1"]
59 #[inline(always)]
60 pub const fn matrix_scfg1(&self) -> &MatrixScfg1 {
61 &self.matrix_scfg1
62 }
63 #[doc = "0x48 - Slave Configuration Register 2"]
64 #[inline(always)]
65 pub const fn matrix_scfg2(&self) -> &MatrixScfg2 {
66 &self.matrix_scfg2
67 }
68 #[doc = "0x4c - Slave Configuration Register 3"]
69 #[inline(always)]
70 pub const fn matrix_scfg3(&self) -> &MatrixScfg3 {
71 &self.matrix_scfg3
72 }
73 #[doc = "0x50 - Slave Configuration Register 4"]
74 #[inline(always)]
75 pub const fn matrix_scfg4(&self) -> &MatrixScfg4 {
76 &self.matrix_scfg4
77 }
78 #[doc = "0x80 - Priority Register A for Slave 0"]
79 #[inline(always)]
80 pub const fn matrix_pras0(&self) -> &MatrixPras0 {
81 &self.matrix_pras0
82 }
83 #[doc = "0x88 - Priority Register A for Slave 1"]
84 #[inline(always)]
85 pub const fn matrix_pras1(&self) -> &MatrixPras1 {
86 &self.matrix_pras1
87 }
88 #[doc = "0x90 - Priority Register A for Slave 2"]
89 #[inline(always)]
90 pub const fn matrix_pras2(&self) -> &MatrixPras2 {
91 &self.matrix_pras2
92 }
93 #[doc = "0x98 - Priority Register A for Slave 3"]
94 #[inline(always)]
95 pub const fn matrix_pras3(&self) -> &MatrixPras3 {
96 &self.matrix_pras3
97 }
98 #[doc = "0xa0 - Priority Register A for Slave 4"]
99 #[inline(always)]
100 pub const fn matrix_pras4(&self) -> &MatrixPras4 {
101 &self.matrix_pras4
102 }
103 #[doc = "0x114 - System I/O Configuration register"]
104 #[inline(always)]
105 pub const fn ccfg_sysio(&self) -> &CcfgSysio {
106 &self.ccfg_sysio
107 }
108 #[doc = "0x11c - SMC Chip Select NAND Flash Assignment Register"]
109 #[inline(always)]
110 pub const fn ccfg_smcnfcs(&self) -> &CcfgSmcnfcs {
111 &self.ccfg_smcnfcs
112 }
113 #[doc = "0x1e4 - Write Protect Mode Register"]
114 #[inline(always)]
115 pub const fn matrix_wpmr(&self) -> &MatrixWpmr {
116 &self.matrix_wpmr
117 }
118 #[doc = "0x1e8 - Write Protect Status Register"]
119 #[inline(always)]
120 pub const fn matrix_wpsr(&self) -> &MatrixWpsr {
121 &self.matrix_wpsr
122 }
123}
124#[doc = "MATRIX_MCFG0 (rw) register accessor: Master Configuration Register 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_mcfg0::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_mcfg0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_mcfg0`]
125module"]
126#[doc(alias = "MATRIX_MCFG0")]
127pub type MatrixMcfg0 = crate::Reg<matrix_mcfg0::MatrixMcfg0Spec>;
128#[doc = "Master Configuration Register 0"]
129pub mod matrix_mcfg0;
130#[doc = "MATRIX_MCFG1 (rw) register accessor: Master Configuration Register 1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_mcfg1::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_mcfg1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_mcfg1`]
131module"]
132#[doc(alias = "MATRIX_MCFG1")]
133pub type MatrixMcfg1 = crate::Reg<matrix_mcfg1::MatrixMcfg1Spec>;
134#[doc = "Master Configuration Register 1"]
135pub mod matrix_mcfg1;
136#[doc = "MATRIX_MCFG2 (rw) register accessor: Master Configuration Register 2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_mcfg2::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_mcfg2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_mcfg2`]
137module"]
138#[doc(alias = "MATRIX_MCFG2")]
139pub type MatrixMcfg2 = crate::Reg<matrix_mcfg2::MatrixMcfg2Spec>;
140#[doc = "Master Configuration Register 2"]
141pub mod matrix_mcfg2;
142#[doc = "MATRIX_MCFG3 (rw) register accessor: Master Configuration Register 3\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_mcfg3::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_mcfg3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_mcfg3`]
143module"]
144#[doc(alias = "MATRIX_MCFG3")]
145pub type MatrixMcfg3 = crate::Reg<matrix_mcfg3::MatrixMcfg3Spec>;
146#[doc = "Master Configuration Register 3"]
147pub mod matrix_mcfg3;
148#[doc = "MATRIX_SCFG0 (rw) register accessor: Slave Configuration Register 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_scfg0::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_scfg0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_scfg0`]
149module"]
150#[doc(alias = "MATRIX_SCFG0")]
151pub type MatrixScfg0 = crate::Reg<matrix_scfg0::MatrixScfg0Spec>;
152#[doc = "Slave Configuration Register 0"]
153pub mod matrix_scfg0;
154#[doc = "MATRIX_SCFG1 (rw) register accessor: Slave Configuration Register 1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_scfg1::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_scfg1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_scfg1`]
155module"]
156#[doc(alias = "MATRIX_SCFG1")]
157pub type MatrixScfg1 = crate::Reg<matrix_scfg1::MatrixScfg1Spec>;
158#[doc = "Slave Configuration Register 1"]
159pub mod matrix_scfg1;
160#[doc = "MATRIX_SCFG2 (rw) register accessor: Slave Configuration Register 2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_scfg2::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_scfg2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_scfg2`]
161module"]
162#[doc(alias = "MATRIX_SCFG2")]
163pub type MatrixScfg2 = crate::Reg<matrix_scfg2::MatrixScfg2Spec>;
164#[doc = "Slave Configuration Register 2"]
165pub mod matrix_scfg2;
166#[doc = "MATRIX_SCFG3 (rw) register accessor: Slave Configuration Register 3\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_scfg3::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_scfg3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_scfg3`]
167module"]
168#[doc(alias = "MATRIX_SCFG3")]
169pub type MatrixScfg3 = crate::Reg<matrix_scfg3::MatrixScfg3Spec>;
170#[doc = "Slave Configuration Register 3"]
171pub mod matrix_scfg3;
172#[doc = "MATRIX_SCFG4 (rw) register accessor: Slave Configuration Register 4\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_scfg4::R`]. You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_scfg4::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_scfg4`]
173module"]
174#[doc(alias = "MATRIX_SCFG4")]
175pub type MatrixScfg4 = crate::Reg<matrix_scfg4::MatrixScfg4Spec>;
176#[doc = "Slave Configuration Register 4"]
177pub mod matrix_scfg4;
178#[doc = "MATRIX_PRAS0 (rw) register accessor: Priority Register A for Slave 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_pras0::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_pras0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_pras0`]
179module"]
180#[doc(alias = "MATRIX_PRAS0")]
181pub type MatrixPras0 = crate::Reg<matrix_pras0::MatrixPras0Spec>;
182#[doc = "Priority Register A for Slave 0"]
183pub mod matrix_pras0;
184#[doc = "MATRIX_PRAS1 (rw) register accessor: Priority Register A for Slave 1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_pras1::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_pras1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_pras1`]
185module"]
186#[doc(alias = "MATRIX_PRAS1")]
187pub type MatrixPras1 = crate::Reg<matrix_pras1::MatrixPras1Spec>;
188#[doc = "Priority Register A for Slave 1"]
189pub mod matrix_pras1;
190#[doc = "MATRIX_PRAS2 (rw) register accessor: Priority Register A for Slave 2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_pras2::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_pras2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_pras2`]
191module"]
192#[doc(alias = "MATRIX_PRAS2")]
193pub type MatrixPras2 = crate::Reg<matrix_pras2::MatrixPras2Spec>;
194#[doc = "Priority Register A for Slave 2"]
195pub mod matrix_pras2;
196#[doc = "MATRIX_PRAS3 (rw) register accessor: Priority Register A for Slave 3\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_pras3::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_pras3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_pras3`]
197module"]
198#[doc(alias = "MATRIX_PRAS3")]
199pub type MatrixPras3 = crate::Reg<matrix_pras3::MatrixPras3Spec>;
200#[doc = "Priority Register A for Slave 3"]
201pub mod matrix_pras3;
202#[doc = "MATRIX_PRAS4 (rw) register accessor: Priority Register A for Slave 4\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_pras4::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_pras4::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_pras4`]
203module"]
204#[doc(alias = "MATRIX_PRAS4")]
205pub type MatrixPras4 = crate::Reg<matrix_pras4::MatrixPras4Spec>;
206#[doc = "Priority Register A for Slave 4"]
207pub mod matrix_pras4;
208#[doc = "CCFG_SYSIO (rw) register accessor: System I/O Configuration register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ccfg_sysio::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ccfg_sysio::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ccfg_sysio`]
209module"]
210#[doc(alias = "CCFG_SYSIO")]
211pub type CcfgSysio = crate::Reg<ccfg_sysio::CcfgSysioSpec>;
212#[doc = "System I/O Configuration register"]
213pub mod ccfg_sysio;
214#[doc = "CCFG_SMCNFCS (rw) register accessor: SMC Chip Select NAND Flash Assignment Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ccfg_smcnfcs::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ccfg_smcnfcs::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ccfg_smcnfcs`]
215module"]
216#[doc(alias = "CCFG_SMCNFCS")]
217pub type CcfgSmcnfcs = crate::Reg<ccfg_smcnfcs::CcfgSmcnfcsSpec>;
218#[doc = "SMC Chip Select NAND Flash Assignment Register"]
219pub mod ccfg_smcnfcs;
220#[doc = "MATRIX_WPMR (rw) register accessor: Write Protect Mode Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_wpmr::R`]. You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`matrix_wpmr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_wpmr`]
221module"]
222#[doc(alias = "MATRIX_WPMR")]
223pub type MatrixWpmr = crate::Reg<matrix_wpmr::MatrixWpmrSpec>;
224#[doc = "Write Protect Mode Register"]
225pub mod matrix_wpmr;
226#[doc = "MATRIX_WPSR (r) register accessor: Write Protect Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`matrix_wpsr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@matrix_wpsr`]
227module"]
228#[doc(alias = "MATRIX_WPSR")]
229pub type MatrixWpsr = crate::Reg<matrix_wpsr::MatrixWpsrSpec>;
230#[doc = "Write Protect Status Register"]
231pub mod matrix_wpsr;