1#[repr(C)]
2#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5 conf0: CONF0,
6 int_raw: INT_RAW,
7 int_st: INT_ST,
8 int_ena: INT_ENA,
9 int_clr: INT_CLR,
10 conf1: CONF1,
11 state0: STATE0,
12 state1: STATE1,
13 escape_conf: ESCAPE_CONF,
14 hung_conf: HUNG_CONF,
15 ack_num: ACK_NUM,
16 rx_head: RX_HEAD,
17 quick_sent: QUICK_SENT,
18 reg_q: [REG_Q; 7],
19 esc_conf: [ESC_CONF; 4],
20 pkt_thres: PKT_THRES,
21 date: DATE,
22}
23impl RegisterBlock {
24 #[doc = "0x00 - a"]
25 #[inline(always)]
26 pub const fn conf0(&self) -> &CONF0 {
27 &self.conf0
28 }
29 #[doc = "0x04 - a"]
30 #[inline(always)]
31 pub const fn int_raw(&self) -> &INT_RAW {
32 &self.int_raw
33 }
34 #[doc = "0x08 - a"]
35 #[inline(always)]
36 pub const fn int_st(&self) -> &INT_ST {
37 &self.int_st
38 }
39 #[doc = "0x0c - a"]
40 #[inline(always)]
41 pub const fn int_ena(&self) -> &INT_ENA {
42 &self.int_ena
43 }
44 #[doc = "0x10 - a"]
45 #[inline(always)]
46 pub const fn int_clr(&self) -> &INT_CLR {
47 &self.int_clr
48 }
49 #[doc = "0x14 - a"]
50 #[inline(always)]
51 pub const fn conf1(&self) -> &CONF1 {
52 &self.conf1
53 }
54 #[doc = "0x18 - a"]
55 #[inline(always)]
56 pub const fn state0(&self) -> &STATE0 {
57 &self.state0
58 }
59 #[doc = "0x1c - a"]
60 #[inline(always)]
61 pub const fn state1(&self) -> &STATE1 {
62 &self.state1
63 }
64 #[doc = "0x20 - a"]
65 #[inline(always)]
66 pub const fn escape_conf(&self) -> &ESCAPE_CONF {
67 &self.escape_conf
68 }
69 #[doc = "0x24 - a"]
70 #[inline(always)]
71 pub const fn hung_conf(&self) -> &HUNG_CONF {
72 &self.hung_conf
73 }
74 #[doc = "0x28 - a"]
75 #[inline(always)]
76 pub const fn ack_num(&self) -> &ACK_NUM {
77 &self.ack_num
78 }
79 #[doc = "0x2c - a"]
80 #[inline(always)]
81 pub const fn rx_head(&self) -> &RX_HEAD {
82 &self.rx_head
83 }
84 #[doc = "0x30 - a"]
85 #[inline(always)]
86 pub const fn quick_sent(&self) -> &QUICK_SENT {
87 &self.quick_sent
88 }
89 #[doc = "0x34..0x6c - Cluster REG_Q%s, containing REG_Q?_WORD0, REG_Q?_WORD1"]
90 #[inline(always)]
91 pub const fn reg_q(&self, n: usize) -> ®_Q {
92 &self.reg_q[n]
93 }
94 #[doc = "Iterator for array of:"]
95 #[doc = "0x34..0x6c - Cluster REG_Q%s, containing REG_Q?_WORD0, REG_Q?_WORD1"]
96 #[inline(always)]
97 pub fn reg_q_iter(&self) -> impl Iterator<Item = ®_Q> {
98 self.reg_q.iter()
99 }
100 #[doc = "0x6c..0x7c - a"]
101 #[inline(always)]
102 pub const fn esc_conf(&self, n: usize) -> &ESC_CONF {
103 &self.esc_conf[n]
104 }
105 #[doc = "Iterator for array of:"]
106 #[doc = "0x6c..0x7c - a"]
107 #[inline(always)]
108 pub fn esc_conf_iter(&self) -> impl Iterator<Item = &ESC_CONF> {
109 self.esc_conf.iter()
110 }
111 #[doc = "0x7c - a"]
112 #[inline(always)]
113 pub const fn pkt_thres(&self) -> &PKT_THRES {
114 &self.pkt_thres
115 }
116 #[doc = "0x80 - a"]
117 #[inline(always)]
118 pub const fn date(&self) -> &DATE {
119 &self.date
120 }
121}
122#[doc = "CONF0 (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`conf0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`conf0::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@conf0`] module"]
123pub type CONF0 = crate::Reg<conf0::CONF0_SPEC>;
124#[doc = "a"]
125pub mod conf0;
126#[doc = "INT_RAW (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`int_raw::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int_raw::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@int_raw`] module"]
127pub type INT_RAW = crate::Reg<int_raw::INT_RAW_SPEC>;
128#[doc = "a"]
129pub mod int_raw;
130#[doc = "INT_ST (r) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`int_st::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int_st`] module"]
131pub type INT_ST = crate::Reg<int_st::INT_ST_SPEC>;
132#[doc = "a"]
133pub mod int_st;
134#[doc = "INT_ENA (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`int_ena::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int_ena::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@int_ena`] module"]
135pub type INT_ENA = crate::Reg<int_ena::INT_ENA_SPEC>;
136#[doc = "a"]
137pub mod int_ena;
138#[doc = "INT_CLR (w) register accessor: a\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int_clr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int_clr`] module"]
139pub type INT_CLR = crate::Reg<int_clr::INT_CLR_SPEC>;
140#[doc = "a"]
141pub mod int_clr;
142#[doc = "CONF1 (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`conf1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`conf1::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@conf1`] module"]
143pub type CONF1 = crate::Reg<conf1::CONF1_SPEC>;
144#[doc = "a"]
145pub mod conf1;
146#[doc = "STATE0 (r) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`state0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@state0`] module"]
147pub type STATE0 = crate::Reg<state0::STATE0_SPEC>;
148#[doc = "a"]
149pub mod state0;
150#[doc = "STATE1 (r) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`state1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@state1`] module"]
151pub type STATE1 = crate::Reg<state1::STATE1_SPEC>;
152#[doc = "a"]
153pub mod state1;
154#[doc = "ESCAPE_CONF (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`escape_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`escape_conf::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@escape_conf`] module"]
155pub type ESCAPE_CONF = crate::Reg<escape_conf::ESCAPE_CONF_SPEC>;
156#[doc = "a"]
157pub mod escape_conf;
158#[doc = "HUNG_CONF (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`hung_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`hung_conf::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@hung_conf`] module"]
159pub type HUNG_CONF = crate::Reg<hung_conf::HUNG_CONF_SPEC>;
160#[doc = "a"]
161pub mod hung_conf;
162#[doc = "ACK_NUM (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`ack_num::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ack_num::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@ack_num`] module"]
163pub type ACK_NUM = crate::Reg<ack_num::ACK_NUM_SPEC>;
164#[doc = "a"]
165pub mod ack_num;
166#[doc = "RX_HEAD (r) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`rx_head::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rx_head`] module"]
167pub type RX_HEAD = crate::Reg<rx_head::RX_HEAD_SPEC>;
168#[doc = "a"]
169pub mod rx_head;
170#[doc = "QUICK_SENT (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`quick_sent::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`quick_sent::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@quick_sent`] module"]
171pub type QUICK_SENT = crate::Reg<quick_sent::QUICK_SENT_SPEC>;
172#[doc = "a"]
173pub mod quick_sent;
174#[doc = "Cluster REG_Q%s, containing REG_Q?_WORD0, REG_Q?_WORD1"]
175pub use self::reg_q::REG_Q;
176#[doc = r"Cluster"]
177#[doc = "Cluster REG_Q%s, containing REG_Q?_WORD0, REG_Q?_WORD1"]
178pub mod reg_q;
179#[doc = "ESC_CONF (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`esc_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`esc_conf::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@esc_conf`] module"]
180pub type ESC_CONF = crate::Reg<esc_conf::ESC_CONF_SPEC>;
181#[doc = "a"]
182pub mod esc_conf;
183#[doc = "PKT_THRES (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`pkt_thres::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pkt_thres::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@pkt_thres`] module"]
184pub type PKT_THRES = crate::Reg<pkt_thres::PKT_THRES_SPEC>;
185#[doc = "a"]
186pub mod pkt_thres;
187#[doc = "DATE (rw) register accessor: a\n\nYou can [`read`](crate::Reg::read) this register and get [`date::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`date::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@date`] module"]
188pub type DATE = crate::Reg<date::DATE_SPEC>;
189#[doc = "a"]
190pub mod date;