1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 _reserved0: [u8; 0x04],
5 vrego_a: VregoA,
6 vrego_b: VregoB,
7 vrego_c: VregoC,
8 vrego_d: VregoD,
9 ipka: Ipka,
10 ipkb: Ipkb,
11 maxton: Maxton,
12 iload_a: IloadA,
13 iload_b: IloadB,
14 iload_c: IloadC,
15 iload_d: IloadD,
16 buck_alert_thr_a: BuckAlertThrA,
17 buck_alert_thr_b: BuckAlertThrB,
18 buck_alert_thr_c: BuckAlertThrC,
19 buck_alert_thr_d: BuckAlertThrD,
20 buck_out_ready: BuckOutReady,
21 zero_cross_cal_a: ZeroCrossCalA,
22 zero_cross_cal_b: ZeroCrossCalB,
23 zero_cross_cal_c: ZeroCrossCalC,
24 zero_cross_cal_d: ZeroCrossCalD,
25}
26impl RegisterBlock {
27 #[doc = "0x04 - Buck Voltage Regulator A Control Register"]
28 #[inline(always)]
29 pub const fn vrego_a(&self) -> &VregoA {
30 &self.vrego_a
31 }
32 #[doc = "0x08 - Buck Voltage Regulator B Control Register"]
33 #[inline(always)]
34 pub const fn vrego_b(&self) -> &VregoB {
35 &self.vrego_b
36 }
37 #[doc = "0x0c - Buck Voltage Regulator C Control Register"]
38 #[inline(always)]
39 pub const fn vrego_c(&self) -> &VregoC {
40 &self.vrego_c
41 }
42 #[doc = "0x10 - Buck Voltage Regulator D Control Register"]
43 #[inline(always)]
44 pub const fn vrego_d(&self) -> &VregoD {
45 &self.vrego_d
46 }
47 #[doc = "0x14 - High Side FET Peak Current VREGO_A/VREGO_B Register"]
48 #[inline(always)]
49 pub const fn ipka(&self) -> &Ipka {
50 &self.ipka
51 }
52 #[doc = "0x18 - High Side FET Peak Current VREGO_C/VREGO_D Register"]
53 #[inline(always)]
54 pub const fn ipkb(&self) -> &Ipkb {
55 &self.ipkb
56 }
57 #[doc = "0x1c - Maximum High Side FET Time On Register"]
58 #[inline(always)]
59 pub const fn maxton(&self) -> &Maxton {
60 &self.maxton
61 }
62 #[doc = "0x20 - Buck Cycle Count VREGO_A Register"]
63 #[inline(always)]
64 pub const fn iload_a(&self) -> &IloadA {
65 &self.iload_a
66 }
67 #[doc = "0x24 - Buck Cycle Count VREGO_B Register"]
68 #[inline(always)]
69 pub const fn iload_b(&self) -> &IloadB {
70 &self.iload_b
71 }
72 #[doc = "0x28 - Buck Cycle Count VREGO_C Register"]
73 #[inline(always)]
74 pub const fn iload_c(&self) -> &IloadC {
75 &self.iload_c
76 }
77 #[doc = "0x2c - Buck Cycle Count VREGO_D Register"]
78 #[inline(always)]
79 pub const fn iload_d(&self) -> &IloadD {
80 &self.iload_d
81 }
82 #[doc = "0x30 - Buck Cycle Count Alert VERGO_A Register"]
83 #[inline(always)]
84 pub const fn buck_alert_thr_a(&self) -> &BuckAlertThrA {
85 &self.buck_alert_thr_a
86 }
87 #[doc = "0x34 - Buck Cycle Count Alert VERGO_B Register"]
88 #[inline(always)]
89 pub const fn buck_alert_thr_b(&self) -> &BuckAlertThrB {
90 &self.buck_alert_thr_b
91 }
92 #[doc = "0x38 - Buck Cycle Count Alert VERGO_C Register"]
93 #[inline(always)]
94 pub const fn buck_alert_thr_c(&self) -> &BuckAlertThrC {
95 &self.buck_alert_thr_c
96 }
97 #[doc = "0x3c - Buck Cycle Count Alert VERGO_D Register"]
98 #[inline(always)]
99 pub const fn buck_alert_thr_d(&self) -> &BuckAlertThrD {
100 &self.buck_alert_thr_d
101 }
102 #[doc = "0x40 - Buck Regulator Output Ready Register"]
103 #[inline(always)]
104 pub const fn buck_out_ready(&self) -> &BuckOutReady {
105 &self.buck_out_ready
106 }
107 #[doc = "0x44 - Zero Cross Calibration VERGO_A Register"]
108 #[inline(always)]
109 pub const fn zero_cross_cal_a(&self) -> &ZeroCrossCalA {
110 &self.zero_cross_cal_a
111 }
112 #[doc = "0x48 - Zero Cross Calibration VERGO_B Register"]
113 #[inline(always)]
114 pub const fn zero_cross_cal_b(&self) -> &ZeroCrossCalB {
115 &self.zero_cross_cal_b
116 }
117 #[doc = "0x4c - Zero Cross Calibration VERGO_C Register"]
118 #[inline(always)]
119 pub const fn zero_cross_cal_c(&self) -> &ZeroCrossCalC {
120 &self.zero_cross_cal_c
121 }
122 #[doc = "0x50 - Zero Cross Calibration VERGO_D Register"]
123 #[inline(always)]
124 pub const fn zero_cross_cal_d(&self) -> &ZeroCrossCalD {
125 &self.zero_cross_cal_d
126 }
127}
128#[doc = "VREGO_A (rw) register accessor: Buck Voltage Regulator A Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`vrego_a::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`vrego_a::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@vrego_a`]
129module"]
130#[doc(alias = "VREGO_A")]
131pub type VregoA = crate::Reg<vrego_a::VregoASpec>;
132#[doc = "Buck Voltage Regulator A Control Register"]
133pub mod vrego_a;
134#[doc = "VREGO_B (rw) register accessor: Buck Voltage Regulator B Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`vrego_b::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`vrego_b::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@vrego_b`]
135module"]
136#[doc(alias = "VREGO_B")]
137pub type VregoB = crate::Reg<vrego_b::VregoBSpec>;
138#[doc = "Buck Voltage Regulator B Control Register"]
139pub mod vrego_b;
140#[doc = "VREGO_C (rw) register accessor: Buck Voltage Regulator C Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`vrego_c::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`vrego_c::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@vrego_c`]
141module"]
142#[doc(alias = "VREGO_C")]
143pub type VregoC = crate::Reg<vrego_c::VregoCSpec>;
144#[doc = "Buck Voltage Regulator C Control Register"]
145pub mod vrego_c;
146#[doc = "VREGO_D (rw) register accessor: Buck Voltage Regulator D Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`vrego_d::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`vrego_d::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@vrego_d`]
147module"]
148#[doc(alias = "VREGO_D")]
149pub type VregoD = crate::Reg<vrego_d::VregoDSpec>;
150#[doc = "Buck Voltage Regulator D Control Register"]
151pub mod vrego_d;
152#[doc = "IPKA (rw) register accessor: High Side FET Peak Current VREGO_A/VREGO_B Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ipka::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ipka::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@ipka`]
153module"]
154#[doc(alias = "IPKA")]
155pub type Ipka = crate::Reg<ipka::IpkaSpec>;
156#[doc = "High Side FET Peak Current VREGO_A/VREGO_B Register"]
157pub mod ipka;
158#[doc = "IPKB (rw) register accessor: High Side FET Peak Current VREGO_C/VREGO_D Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ipkb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ipkb::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@ipkb`]
159module"]
160#[doc(alias = "IPKB")]
161pub type Ipkb = crate::Reg<ipkb::IpkbSpec>;
162#[doc = "High Side FET Peak Current VREGO_C/VREGO_D Register"]
163pub mod ipkb;
164#[doc = "MAXTON (rw) register accessor: Maximum High Side FET Time On Register\n\nYou can [`read`](crate::Reg::read) this register and get [`maxton::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`maxton::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@maxton`]
165module"]
166#[doc(alias = "MAXTON")]
167pub type Maxton = crate::Reg<maxton::MaxtonSpec>;
168#[doc = "Maximum High Side FET Time On Register"]
169pub mod maxton;
170#[doc = "ILOAD_A (r) register accessor: Buck Cycle Count VREGO_A Register\n\nYou can [`read`](crate::Reg::read) this register and get [`iload_a::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@iload_a`]
171module"]
172#[doc(alias = "ILOAD_A")]
173pub type IloadA = crate::Reg<iload_a::IloadASpec>;
174#[doc = "Buck Cycle Count VREGO_A Register"]
175pub mod iload_a;
176#[doc = "ILOAD_B (r) register accessor: Buck Cycle Count VREGO_B Register\n\nYou can [`read`](crate::Reg::read) this register and get [`iload_b::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@iload_b`]
177module"]
178#[doc(alias = "ILOAD_B")]
179pub type IloadB = crate::Reg<iload_b::IloadBSpec>;
180#[doc = "Buck Cycle Count VREGO_B Register"]
181pub mod iload_b;
182#[doc = "ILOAD_C (r) register accessor: Buck Cycle Count VREGO_C Register\n\nYou can [`read`](crate::Reg::read) this register and get [`iload_c::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@iload_c`]
183module"]
184#[doc(alias = "ILOAD_C")]
185pub type IloadC = crate::Reg<iload_c::IloadCSpec>;
186#[doc = "Buck Cycle Count VREGO_C Register"]
187pub mod iload_c;
188#[doc = "ILOAD_D (r) register accessor: Buck Cycle Count VREGO_D Register\n\nYou can [`read`](crate::Reg::read) this register and get [`iload_d::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@iload_d`]
189module"]
190#[doc(alias = "ILOAD_D")]
191pub type IloadD = crate::Reg<iload_d::IloadDSpec>;
192#[doc = "Buck Cycle Count VREGO_D Register"]
193pub mod iload_d;
194#[doc = "BUCK_ALERT_THR_A (rw) register accessor: Buck Cycle Count Alert VERGO_A Register\n\nYou can [`read`](crate::Reg::read) this register and get [`buck_alert_thr_a::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`buck_alert_thr_a::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@buck_alert_thr_a`]
195module"]
196#[doc(alias = "BUCK_ALERT_THR_A")]
197pub type BuckAlertThrA = crate::Reg<buck_alert_thr_a::BuckAlertThrASpec>;
198#[doc = "Buck Cycle Count Alert VERGO_A Register"]
199pub mod buck_alert_thr_a;
200#[doc = "BUCK_ALERT_THR_B (rw) register accessor: Buck Cycle Count Alert VERGO_B Register\n\nYou can [`read`](crate::Reg::read) this register and get [`buck_alert_thr_b::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`buck_alert_thr_b::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@buck_alert_thr_b`]
201module"]
202#[doc(alias = "BUCK_ALERT_THR_B")]
203pub type BuckAlertThrB = crate::Reg<buck_alert_thr_b::BuckAlertThrBSpec>;
204#[doc = "Buck Cycle Count Alert VERGO_B Register"]
205pub mod buck_alert_thr_b;
206#[doc = "BUCK_ALERT_THR_C (rw) register accessor: Buck Cycle Count Alert VERGO_C Register\n\nYou can [`read`](crate::Reg::read) this register and get [`buck_alert_thr_c::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`buck_alert_thr_c::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@buck_alert_thr_c`]
207module"]
208#[doc(alias = "BUCK_ALERT_THR_C")]
209pub type BuckAlertThrC = crate::Reg<buck_alert_thr_c::BuckAlertThrCSpec>;
210#[doc = "Buck Cycle Count Alert VERGO_C Register"]
211pub mod buck_alert_thr_c;
212#[doc = "BUCK_ALERT_THR_D (rw) register accessor: Buck Cycle Count Alert VERGO_D Register\n\nYou can [`read`](crate::Reg::read) this register and get [`buck_alert_thr_d::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`buck_alert_thr_d::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@buck_alert_thr_d`]
213module"]
214#[doc(alias = "BUCK_ALERT_THR_D")]
215pub type BuckAlertThrD = crate::Reg<buck_alert_thr_d::BuckAlertThrDSpec>;
216#[doc = "Buck Cycle Count Alert VERGO_D Register"]
217pub mod buck_alert_thr_d;
218#[doc = "BUCK_OUT_READY (r) register accessor: Buck Regulator Output Ready Register\n\nYou can [`read`](crate::Reg::read) this register and get [`buck_out_ready::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@buck_out_ready`]
219module"]
220#[doc(alias = "BUCK_OUT_READY")]
221pub type BuckOutReady = crate::Reg<buck_out_ready::BuckOutReadySpec>;
222#[doc = "Buck Regulator Output Ready Register"]
223pub mod buck_out_ready;
224#[doc = "ZERO_CROSS_CAL_A (r) register accessor: Zero Cross Calibration VERGO_A Register\n\nYou can [`read`](crate::Reg::read) this register and get [`zero_cross_cal_a::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@zero_cross_cal_a`]
225module"]
226#[doc(alias = "ZERO_CROSS_CAL_A")]
227pub type ZeroCrossCalA = crate::Reg<zero_cross_cal_a::ZeroCrossCalASpec>;
228#[doc = "Zero Cross Calibration VERGO_A Register"]
229pub mod zero_cross_cal_a;
230#[doc = "ZERO_CROSS_CAL_B (r) register accessor: Zero Cross Calibration VERGO_B Register\n\nYou can [`read`](crate::Reg::read) this register and get [`zero_cross_cal_b::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@zero_cross_cal_b`]
231module"]
232#[doc(alias = "ZERO_CROSS_CAL_B")]
233pub type ZeroCrossCalB = crate::Reg<zero_cross_cal_b::ZeroCrossCalBSpec>;
234#[doc = "Zero Cross Calibration VERGO_B Register"]
235pub mod zero_cross_cal_b;
236#[doc = "ZERO_CROSS_CAL_C (r) register accessor: Zero Cross Calibration VERGO_C Register\n\nYou can [`read`](crate::Reg::read) this register and get [`zero_cross_cal_c::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@zero_cross_cal_c`]
237module"]
238#[doc(alias = "ZERO_CROSS_CAL_C")]
239pub type ZeroCrossCalC = crate::Reg<zero_cross_cal_c::ZeroCrossCalCSpec>;
240#[doc = "Zero Cross Calibration VERGO_C Register"]
241pub mod zero_cross_cal_c;
242#[doc = "ZERO_CROSS_CAL_D (r) register accessor: Zero Cross Calibration VERGO_D Register\n\nYou can [`read`](crate::Reg::read) this register and get [`zero_cross_cal_d::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@zero_cross_cal_d`]
243module"]
244#[doc(alias = "ZERO_CROSS_CAL_D")]
245pub type ZeroCrossCalD = crate::Reg<zero_cross_cal_d::ZeroCrossCalDSpec>;
246#[doc = "Zero Cross Calibration VERGO_D Register"]
247pub mod zero_cross_cal_d;