1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 msip: MSIP,
5 _reserved1: [u8; 0x3ffc],
6 mtimecmpl: MTIMECMPL,
7 mtimecmph: MTIMECMPH,
8 _reserved3: [u8; 0x7ff0],
9 mtime: MTIME,
10 ssip: SSIP,
11 _reserved5: [u8; 0x0ffc],
12 stimecmpl: STIMECMPL,
13 stimecmph: STIMECMPH,
14}
15impl RegisterBlock {
16 #[doc = "0x00 - MSIP Register for hart 0"]
17 #[inline(always)]
18 pub const fn msip(&self) -> &MSIP {
19 &self.msip
20 }
21 #[doc = "0x4000 - MTIMECMPL Register for hart 0"]
22 #[inline(always)]
23 pub const fn mtimecmpl(&self) -> &MTIMECMPL {
24 &self.mtimecmpl
25 }
26 #[doc = "0x4004 - MTIMECMPH Register for hart 0"]
27 #[inline(always)]
28 pub const fn mtimecmph(&self) -> &MTIMECMPH {
29 &self.mtimecmph
30 }
31 #[doc = "0xbff8..0xc000 - MTIME\n\nREF: opensbi"]
32 #[inline(always)]
33 pub const fn mtime(&self) -> &MTIME {
34 &self.mtime
35 }
36 #[doc = "0xc000 - SSIP Register for hart 0"]
37 #[inline(always)]
38 pub const fn ssip(&self) -> &SSIP {
39 &self.ssip
40 }
41 #[doc = "0xd000 - STIMECMPL Register for hart 0"]
42 #[inline(always)]
43 pub const fn stimecmpl(&self) -> &STIMECMPL {
44 &self.stimecmpl
45 }
46 #[doc = "0xd004 - STIMECMPH Register for hart 0"]
47 #[inline(always)]
48 pub const fn stimecmph(&self) -> &STIMECMPH {
49 &self.stimecmph
50 }
51}
52#[doc = "msip (rw) register accessor: MSIP Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`msip::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 [`msip::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@msip`] module"]
53pub type MSIP = crate::Reg<msip::MSIP_SPEC>;
54#[doc = "MSIP Register for hart 0"]
55pub mod msip;
56#[doc = "mtimecmpl (rw) register accessor: MTIMECMPL Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`mtimecmpl::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 [`mtimecmpl::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@mtimecmpl`] module"]
57pub type MTIMECMPL = crate::Reg<mtimecmpl::MTIMECMPL_SPEC>;
58#[doc = "MTIMECMPL Register for hart 0"]
59pub mod mtimecmpl;
60#[doc = "mtimecmph (rw) register accessor: MTIMECMPH Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`mtimecmph::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 [`mtimecmph::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@mtimecmph`] module"]
61pub type MTIMECMPH = crate::Reg<mtimecmph::MTIMECMPH_SPEC>;
62#[doc = "MTIMECMPH Register for hart 0"]
63pub mod mtimecmph;
64#[doc = "mtime (r) register accessor: MTIME\n\nREF: opensbi\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`mtime::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mtime`] module"]
65pub type MTIME = crate::Reg<mtime::MTIME_SPEC>;
66#[doc = "MTIME\n\nREF: opensbi"]
67pub mod mtime;
68#[doc = "ssip (rw) register accessor: SSIP Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ssip::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 [`ssip::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@ssip`] module"]
69pub type SSIP = crate::Reg<ssip::SSIP_SPEC>;
70#[doc = "SSIP Register for hart 0"]
71pub mod ssip;
72#[doc = "stimecmpl (rw) register accessor: STIMECMPL Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`stimecmpl::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 [`stimecmpl::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@stimecmpl`] module"]
73pub type STIMECMPL = crate::Reg<stimecmpl::STIMECMPL_SPEC>;
74#[doc = "STIMECMPL Register for hart 0"]
75pub mod stimecmpl;
76#[doc = "stimecmph (rw) register accessor: STIMECMPH Register for hart 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`stimecmph::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 [`stimecmph::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@stimecmph`] module"]
77pub type STIMECMPH = crate::Reg<stimecmph::STIMECMPH_SPEC>;
78#[doc = "STIMECMPH Register for hart 0"]
79pub mod stimecmph;