d1_pac/dsp_msgbox/
msgbox.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct MSGBOX {
4    _reserved0: [u8; 0x20],
5    msgbox_rd_irq_en: MSGBOX_RD_IRQ_EN,
6    msgbox_rd_irq_status: MSGBOX_RD_IRQ_STATUS,
7    _reserved2: [u8; 0x08],
8    msgbox_wr_irq_en: MSGBOX_WR_IRQ_EN,
9    msgbox_wr_irq_status: MSGBOX_WR_IRQ_STATUS,
10    _reserved4: [u8; 0x08],
11    msgbox_debug: MSGBOX_DEBUG,
12    _reserved5: [u8; 0x0c],
13    msgbox_fifo_status: [MSGBOX_FIFO_STATUS; 4],
14    msgbox_msg_status: [MSGBOX_MSG_STATUS; 4],
15    msgbox_msg: [MSGBOX_MSG; 4],
16    msgbox_wr_int_threshold: [MSGBOX_WR_INT_THRESHOLD; 4],
17}
18impl MSGBOX {
19    #[doc = "0x20 - Message Box Read Interrupt Enable Register"]
20    #[inline(always)]
21    pub const fn msgbox_rd_irq_en(&self) -> &MSGBOX_RD_IRQ_EN {
22        &self.msgbox_rd_irq_en
23    }
24    #[doc = "0x24 - Message Box Read Interrupt Status Register"]
25    #[inline(always)]
26    pub const fn msgbox_rd_irq_status(&self) -> &MSGBOX_RD_IRQ_STATUS {
27        &self.msgbox_rd_irq_status
28    }
29    #[doc = "0x30 - Message Box Write Interrupt Enable Register"]
30    #[inline(always)]
31    pub const fn msgbox_wr_irq_en(&self) -> &MSGBOX_WR_IRQ_EN {
32        &self.msgbox_wr_irq_en
33    }
34    #[doc = "0x34 - Message Box Write Interrupt Status Register"]
35    #[inline(always)]
36    pub const fn msgbox_wr_irq_status(&self) -> &MSGBOX_WR_IRQ_STATUS {
37        &self.msgbox_wr_irq_status
38    }
39    #[doc = "0x40 - Message Box Debug Register"]
40    #[inline(always)]
41    pub const fn msgbox_debug(&self) -> &MSGBOX_DEBUG {
42        &self.msgbox_debug
43    }
44    #[doc = "0x50..0x60 - Message Box FIFO Status Register"]
45    #[inline(always)]
46    pub const fn msgbox_fifo_status(&self, n: usize) -> &MSGBOX_FIFO_STATUS {
47        &self.msgbox_fifo_status[n]
48    }
49    #[doc = "0x60..0x70 - Message Box Message Status Register"]
50    #[inline(always)]
51    pub const fn msgbox_msg_status(&self, n: usize) -> &MSGBOX_MSG_STATUS {
52        &self.msgbox_msg_status[n]
53    }
54    #[doc = "0x70..0x80 - Message Box Message Queue Register"]
55    #[inline(always)]
56    pub const fn msgbox_msg(&self, n: usize) -> &MSGBOX_MSG {
57        &self.msgbox_msg[n]
58    }
59    #[doc = "0x80..0x90 - Message Box Write Interrupt Threshold Register"]
60    #[inline(always)]
61    pub const fn msgbox_wr_int_threshold(&self, n: usize) -> &MSGBOX_WR_INT_THRESHOLD {
62        &self.msgbox_wr_int_threshold[n]
63    }
64}
65#[doc = "msgbox_rd_irq_en (rw) register accessor: Message Box Read Interrupt Enable Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_rd_irq_en::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 [`msgbox_rd_irq_en::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@msgbox_rd_irq_en`] module"]
66pub type MSGBOX_RD_IRQ_EN = crate::Reg<msgbox_rd_irq_en::MSGBOX_RD_IRQ_EN_SPEC>;
67#[doc = "Message Box Read Interrupt Enable Register"]
68pub mod msgbox_rd_irq_en;
69#[doc = "msgbox_rd_irq_status (rw) register accessor: Message Box Read Interrupt Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_rd_irq_status::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 [`msgbox_rd_irq_status::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@msgbox_rd_irq_status`] module"]
70pub type MSGBOX_RD_IRQ_STATUS = crate::Reg<msgbox_rd_irq_status::MSGBOX_RD_IRQ_STATUS_SPEC>;
71#[doc = "Message Box Read Interrupt Status Register"]
72pub mod msgbox_rd_irq_status;
73#[doc = "msgbox_wr_irq_en (rw) register accessor: Message Box Write Interrupt Enable Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_wr_irq_en::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 [`msgbox_wr_irq_en::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@msgbox_wr_irq_en`] module"]
74pub type MSGBOX_WR_IRQ_EN = crate::Reg<msgbox_wr_irq_en::MSGBOX_WR_IRQ_EN_SPEC>;
75#[doc = "Message Box Write Interrupt Enable Register"]
76pub mod msgbox_wr_irq_en;
77#[doc = "msgbox_wr_irq_status (rw) register accessor: Message Box Write Interrupt Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_wr_irq_status::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 [`msgbox_wr_irq_status::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@msgbox_wr_irq_status`] module"]
78pub type MSGBOX_WR_IRQ_STATUS = crate::Reg<msgbox_wr_irq_status::MSGBOX_WR_IRQ_STATUS_SPEC>;
79#[doc = "Message Box Write Interrupt Status Register"]
80pub mod msgbox_wr_irq_status;
81#[doc = "msgbox_debug (rw) register accessor: Message Box Debug Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_debug::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 [`msgbox_debug::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@msgbox_debug`] module"]
82pub type MSGBOX_DEBUG = crate::Reg<msgbox_debug::MSGBOX_DEBUG_SPEC>;
83#[doc = "Message Box Debug Register"]
84pub mod msgbox_debug;
85#[doc = "msgbox_fifo_status (r) register accessor: Message Box FIFO Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_fifo_status::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@msgbox_fifo_status`] module"]
86pub type MSGBOX_FIFO_STATUS = crate::Reg<msgbox_fifo_status::MSGBOX_FIFO_STATUS_SPEC>;
87#[doc = "Message Box FIFO Status Register"]
88pub mod msgbox_fifo_status;
89#[doc = "msgbox_msg_status (r) register accessor: Message Box Message Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_msg_status::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@msgbox_msg_status`] module"]
90pub type MSGBOX_MSG_STATUS = crate::Reg<msgbox_msg_status::MSGBOX_MSG_STATUS_SPEC>;
91#[doc = "Message Box Message Status Register"]
92pub mod msgbox_msg_status;
93#[doc = "msgbox_msg (rw) register accessor: Message Box Message Queue Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_msg::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 [`msgbox_msg::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@msgbox_msg`] module"]
94pub type MSGBOX_MSG = crate::Reg<msgbox_msg::MSGBOX_MSG_SPEC>;
95#[doc = "Message Box Message Queue Register"]
96pub mod msgbox_msg;
97#[doc = "msgbox_wr_int_threshold (rw) register accessor: Message Box Write Interrupt Threshold Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msgbox_wr_int_threshold::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 [`msgbox_wr_int_threshold::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@msgbox_wr_int_threshold`] module"]
98pub type MSGBOX_WR_INT_THRESHOLD =
99    crate::Reg<msgbox_wr_int_threshold::MSGBOX_WR_INT_THRESHOLD_SPEC>;
100#[doc = "Message Box Write Interrupt Threshold Register"]
101pub mod msgbox_wr_int_threshold;