esp32c6/
pau.rs

1#[repr(C)]
2#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5    regdma_conf: REGDMA_CONF,
6    regdma_clk_conf: REGDMA_CLK_CONF,
7    regdma_etm_ctrl: REGDMA_ETM_CTRL,
8    regdma_link_0_addr: REGDMA_LINK_0_ADDR,
9    regdma_link_1_addr: REGDMA_LINK_1_ADDR,
10    regdma_link_2_addr: REGDMA_LINK_2_ADDR,
11    regdma_link_3_addr: REGDMA_LINK_3_ADDR,
12    regdma_link_mac_addr: REGDMA_LINK_MAC_ADDR,
13    regdma_current_link_addr: REGDMA_CURRENT_LINK_ADDR,
14    regdma_backup_addr: REGDMA_BACKUP_ADDR,
15    regdma_mem_addr: REGDMA_MEM_ADDR,
16    regdma_bkp_conf: REGDMA_BKP_CONF,
17    retention_link_base: RETENTION_LINK_BASE,
18    retention_cfg: RETENTION_CFG,
19    int_ena: INT_ENA,
20    int_raw: INT_RAW,
21    int_clr: INT_CLR,
22    int_st: INT_ST,
23    _reserved18: [u8; 0x03b4],
24    date: DATE,
25}
26impl RegisterBlock {
27    #[doc = "0x00 - Peri backup control register"]
28    #[inline(always)]
29    pub const fn regdma_conf(&self) -> &REGDMA_CONF {
30        &self.regdma_conf
31    }
32    #[doc = "0x04 - Clock control register"]
33    #[inline(always)]
34    pub const fn regdma_clk_conf(&self) -> &REGDMA_CLK_CONF {
35        &self.regdma_clk_conf
36    }
37    #[doc = "0x08 - ETM start ctrl reg"]
38    #[inline(always)]
39    pub const fn regdma_etm_ctrl(&self) -> &REGDMA_ETM_CTRL {
40        &self.regdma_etm_ctrl
41    }
42    #[doc = "0x0c - link_0_addr"]
43    #[inline(always)]
44    pub const fn regdma_link_0_addr(&self) -> &REGDMA_LINK_0_ADDR {
45        &self.regdma_link_0_addr
46    }
47    #[doc = "0x10 - Link_1_addr"]
48    #[inline(always)]
49    pub const fn regdma_link_1_addr(&self) -> &REGDMA_LINK_1_ADDR {
50        &self.regdma_link_1_addr
51    }
52    #[doc = "0x14 - Link_2_addr"]
53    #[inline(always)]
54    pub const fn regdma_link_2_addr(&self) -> &REGDMA_LINK_2_ADDR {
55        &self.regdma_link_2_addr
56    }
57    #[doc = "0x18 - Link_3_addr"]
58    #[inline(always)]
59    pub const fn regdma_link_3_addr(&self) -> &REGDMA_LINK_3_ADDR {
60        &self.regdma_link_3_addr
61    }
62    #[doc = "0x1c - Link_mac_addr"]
63    #[inline(always)]
64    pub const fn regdma_link_mac_addr(&self) -> &REGDMA_LINK_MAC_ADDR {
65        &self.regdma_link_mac_addr
66    }
67    #[doc = "0x20 - current link addr"]
68    #[inline(always)]
69    pub const fn regdma_current_link_addr(&self) -> &REGDMA_CURRENT_LINK_ADDR {
70        &self.regdma_current_link_addr
71    }
72    #[doc = "0x24 - Backup addr"]
73    #[inline(always)]
74    pub const fn regdma_backup_addr(&self) -> &REGDMA_BACKUP_ADDR {
75        &self.regdma_backup_addr
76    }
77    #[doc = "0x28 - mem addr"]
78    #[inline(always)]
79    pub const fn regdma_mem_addr(&self) -> &REGDMA_MEM_ADDR {
80        &self.regdma_mem_addr
81    }
82    #[doc = "0x2c - backup config"]
83    #[inline(always)]
84    pub const fn regdma_bkp_conf(&self) -> &REGDMA_BKP_CONF {
85        &self.regdma_bkp_conf
86    }
87    #[doc = "0x30 - retention dma link base"]
88    #[inline(always)]
89    pub const fn retention_link_base(&self) -> &RETENTION_LINK_BASE {
90        &self.retention_link_base
91    }
92    #[doc = "0x34 - retention_cfg"]
93    #[inline(always)]
94    pub const fn retention_cfg(&self) -> &RETENTION_CFG {
95        &self.retention_cfg
96    }
97    #[doc = "0x38 - Read only register for error and done"]
98    #[inline(always)]
99    pub const fn int_ena(&self) -> &INT_ENA {
100        &self.int_ena
101    }
102    #[doc = "0x3c - Read only register for error and done"]
103    #[inline(always)]
104    pub const fn int_raw(&self) -> &INT_RAW {
105        &self.int_raw
106    }
107    #[doc = "0x40 - Read only register for error and done"]
108    #[inline(always)]
109    pub const fn int_clr(&self) -> &INT_CLR {
110        &self.int_clr
111    }
112    #[doc = "0x44 - Read only register for error and done"]
113    #[inline(always)]
114    pub const fn int_st(&self) -> &INT_ST {
115        &self.int_st
116    }
117    #[doc = "0x3fc - Date register."]
118    #[inline(always)]
119    pub const fn date(&self) -> &DATE {
120        &self.date
121    }
122}
123#[doc = "REGDMA_CONF (rw) register accessor: Peri backup control register\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_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@regdma_conf`] module"]
124pub type REGDMA_CONF = crate::Reg<regdma_conf::REGDMA_CONF_SPEC>;
125#[doc = "Peri backup control register"]
126pub mod regdma_conf;
127#[doc = "REGDMA_CLK_CONF (rw) register accessor: Clock control register\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_clk_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_clk_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@regdma_clk_conf`] module"]
128pub type REGDMA_CLK_CONF = crate::Reg<regdma_clk_conf::REGDMA_CLK_CONF_SPEC>;
129#[doc = "Clock control register"]
130pub mod regdma_clk_conf;
131#[doc = "REGDMA_ETM_CTRL (w) register accessor: ETM start ctrl reg\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_etm_ctrl::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@regdma_etm_ctrl`] module"]
132pub type REGDMA_ETM_CTRL = crate::Reg<regdma_etm_ctrl::REGDMA_ETM_CTRL_SPEC>;
133#[doc = "ETM start ctrl reg"]
134pub mod regdma_etm_ctrl;
135#[doc = "REGDMA_LINK_0_ADDR (rw) register accessor: link_0_addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_link_0_addr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_link_0_addr::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@regdma_link_0_addr`] module"]
136pub type REGDMA_LINK_0_ADDR = crate::Reg<regdma_link_0_addr::REGDMA_LINK_0_ADDR_SPEC>;
137#[doc = "link_0_addr"]
138pub mod regdma_link_0_addr;
139#[doc = "REGDMA_LINK_1_ADDR (rw) register accessor: Link_1_addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_link_1_addr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_link_1_addr::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@regdma_link_1_addr`] module"]
140pub type REGDMA_LINK_1_ADDR = crate::Reg<regdma_link_1_addr::REGDMA_LINK_1_ADDR_SPEC>;
141#[doc = "Link_1_addr"]
142pub mod regdma_link_1_addr;
143#[doc = "REGDMA_LINK_2_ADDR (rw) register accessor: Link_2_addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_link_2_addr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_link_2_addr::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@regdma_link_2_addr`] module"]
144pub type REGDMA_LINK_2_ADDR = crate::Reg<regdma_link_2_addr::REGDMA_LINK_2_ADDR_SPEC>;
145#[doc = "Link_2_addr"]
146pub mod regdma_link_2_addr;
147#[doc = "REGDMA_LINK_3_ADDR (rw) register accessor: Link_3_addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_link_3_addr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_link_3_addr::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@regdma_link_3_addr`] module"]
148pub type REGDMA_LINK_3_ADDR = crate::Reg<regdma_link_3_addr::REGDMA_LINK_3_ADDR_SPEC>;
149#[doc = "Link_3_addr"]
150pub mod regdma_link_3_addr;
151#[doc = "REGDMA_LINK_MAC_ADDR (rw) register accessor: Link_mac_addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_link_mac_addr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_link_mac_addr::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@regdma_link_mac_addr`] module"]
152pub type REGDMA_LINK_MAC_ADDR = crate::Reg<regdma_link_mac_addr::REGDMA_LINK_MAC_ADDR_SPEC>;
153#[doc = "Link_mac_addr"]
154pub mod regdma_link_mac_addr;
155#[doc = "REGDMA_CURRENT_LINK_ADDR (r) register accessor: current link addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_current_link_addr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@regdma_current_link_addr`] module"]
156pub type REGDMA_CURRENT_LINK_ADDR =
157    crate::Reg<regdma_current_link_addr::REGDMA_CURRENT_LINK_ADDR_SPEC>;
158#[doc = "current link addr"]
159pub mod regdma_current_link_addr;
160#[doc = "REGDMA_BACKUP_ADDR (r) register accessor: Backup addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_backup_addr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@regdma_backup_addr`] module"]
161pub type REGDMA_BACKUP_ADDR = crate::Reg<regdma_backup_addr::REGDMA_BACKUP_ADDR_SPEC>;
162#[doc = "Backup addr"]
163pub mod regdma_backup_addr;
164#[doc = "REGDMA_MEM_ADDR (r) register accessor: mem addr\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_mem_addr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@regdma_mem_addr`] module"]
165pub type REGDMA_MEM_ADDR = crate::Reg<regdma_mem_addr::REGDMA_MEM_ADDR_SPEC>;
166#[doc = "mem addr"]
167pub mod regdma_mem_addr;
168#[doc = "REGDMA_BKP_CONF (rw) register accessor: backup config\n\nYou can [`read`](crate::Reg::read) this register and get [`regdma_bkp_conf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`regdma_bkp_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@regdma_bkp_conf`] module"]
169pub type REGDMA_BKP_CONF = crate::Reg<regdma_bkp_conf::REGDMA_BKP_CONF_SPEC>;
170#[doc = "backup config"]
171pub mod regdma_bkp_conf;
172#[doc = "RETENTION_LINK_BASE (rw) register accessor: retention dma link base\n\nYou can [`read`](crate::Reg::read) this register and get [`retention_link_base::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`retention_link_base::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@retention_link_base`] module"]
173pub type RETENTION_LINK_BASE = crate::Reg<retention_link_base::RETENTION_LINK_BASE_SPEC>;
174#[doc = "retention dma link base"]
175pub mod retention_link_base;
176#[doc = "RETENTION_CFG (rw) register accessor: retention_cfg\n\nYou can [`read`](crate::Reg::read) this register and get [`retention_cfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`retention_cfg::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@retention_cfg`] module"]
177pub type RETENTION_CFG = crate::Reg<retention_cfg::RETENTION_CFG_SPEC>;
178#[doc = "retention_cfg"]
179pub mod retention_cfg;
180#[doc = "INT_ENA (rw) register accessor: Read only register for error and done\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"]
181pub type INT_ENA = crate::Reg<int_ena::INT_ENA_SPEC>;
182#[doc = "Read only register for error and done"]
183pub mod int_ena;
184#[doc = "INT_RAW (rw) register accessor: Read only register for error and done\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"]
185pub type INT_RAW = crate::Reg<int_raw::INT_RAW_SPEC>;
186#[doc = "Read only register for error and done"]
187pub mod int_raw;
188#[doc = "INT_CLR (w) register accessor: Read only register for error and done\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"]
189pub type INT_CLR = crate::Reg<int_clr::INT_CLR_SPEC>;
190#[doc = "Read only register for error and done"]
191pub mod int_clr;
192#[doc = "INT_ST (r) register accessor: Read only register for error and done\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"]
193pub type INT_ST = crate::Reg<int_st::INT_ST_SPEC>;
194#[doc = "Read only register for error and done"]
195pub mod int_st;
196#[doc = "DATE (rw) register accessor: Date register.\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"]
197pub type DATE = crate::Reg<date::DATE_SPEC>;
198#[doc = "Date register."]
199pub mod date;