efm32zg110_pac/
msc.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Memory System Control Register"]
5    pub ctrl: crate::Reg<ctrl::CTRL_SPEC>,
6    #[doc = "0x04 - Read Control Register"]
7    pub readctrl: crate::Reg<readctrl::READCTRL_SPEC>,
8    #[doc = "0x08 - Write Control Register"]
9    pub writectrl: crate::Reg<writectrl::WRITECTRL_SPEC>,
10    #[doc = "0x0c - Write Command Register"]
11    pub writecmd: crate::Reg<writecmd::WRITECMD_SPEC>,
12    #[doc = "0x10 - Page Erase/Write Address Buffer"]
13    pub addrb: crate::Reg<addrb::ADDRB_SPEC>,
14    _reserved5: [u8; 0x04],
15    #[doc = "0x18 - Write Data Register"]
16    pub wdata: crate::Reg<wdata::WDATA_SPEC>,
17    #[doc = "0x1c - Status Register"]
18    pub status: crate::Reg<status::STATUS_SPEC>,
19    _reserved7: [u8; 0x0c],
20    #[doc = "0x2c - Interrupt Flag Register"]
21    pub if_: crate::Reg<if_::IF_SPEC>,
22    #[doc = "0x30 - Interrupt Flag Set Register"]
23    pub ifs: crate::Reg<ifs::IFS_SPEC>,
24    #[doc = "0x34 - Interrupt Flag Clear Register"]
25    pub ifc: crate::Reg<ifc::IFC_SPEC>,
26    #[doc = "0x38 - Interrupt Enable Register"]
27    pub ien: crate::Reg<ien::IEN_SPEC>,
28    #[doc = "0x3c - Configuration Lock Register"]
29    pub lock: crate::Reg<lock::LOCK_SPEC>,
30    #[doc = "0x40 - Command Register"]
31    pub cmd: crate::Reg<cmd::CMD_SPEC>,
32    #[doc = "0x44 - Cache Hits Performance Counter"]
33    pub cachehits: crate::Reg<cachehits::CACHEHITS_SPEC>,
34    #[doc = "0x48 - Cache Misses Performance Counter"]
35    pub cachemisses: crate::Reg<cachemisses::CACHEMISSES_SPEC>,
36    _reserved15: [u8; 0x04],
37    #[doc = "0x50 - Flash Write and Erase Timebase"]
38    pub timebase: crate::Reg<timebase::TIMEBASE_SPEC>,
39    #[doc = "0x54 - Mass Erase Lock Register"]
40    pub masslock: crate::Reg<masslock::MASSLOCK_SPEC>,
41    #[doc = "0x58 - Irq Latency Register"]
42    pub irqlatency: crate::Reg<irqlatency::IRQLATENCY_SPEC>,
43}
44#[doc = "CTRL register accessor: an alias for `Reg<CTRL_SPEC>`"]
45pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
46#[doc = "Memory System Control Register"]
47pub mod ctrl;
48#[doc = "READCTRL register accessor: an alias for `Reg<READCTRL_SPEC>`"]
49pub type READCTRL = crate::Reg<readctrl::READCTRL_SPEC>;
50#[doc = "Read Control Register"]
51pub mod readctrl;
52#[doc = "WRITECTRL register accessor: an alias for `Reg<WRITECTRL_SPEC>`"]
53pub type WRITECTRL = crate::Reg<writectrl::WRITECTRL_SPEC>;
54#[doc = "Write Control Register"]
55pub mod writectrl;
56#[doc = "WRITECMD register accessor: an alias for `Reg<WRITECMD_SPEC>`"]
57pub type WRITECMD = crate::Reg<writecmd::WRITECMD_SPEC>;
58#[doc = "Write Command Register"]
59pub mod writecmd;
60#[doc = "ADDRB register accessor: an alias for `Reg<ADDRB_SPEC>`"]
61pub type ADDRB = crate::Reg<addrb::ADDRB_SPEC>;
62#[doc = "Page Erase/Write Address Buffer"]
63pub mod addrb;
64#[doc = "WDATA register accessor: an alias for `Reg<WDATA_SPEC>`"]
65pub type WDATA = crate::Reg<wdata::WDATA_SPEC>;
66#[doc = "Write Data Register"]
67pub mod wdata;
68#[doc = "STATUS register accessor: an alias for `Reg<STATUS_SPEC>`"]
69pub type STATUS = crate::Reg<status::STATUS_SPEC>;
70#[doc = "Status Register"]
71pub mod status;
72#[doc = "IF register accessor: an alias for `Reg<IF_SPEC>`"]
73pub type IF = crate::Reg<if_::IF_SPEC>;
74#[doc = "Interrupt Flag Register"]
75pub mod if_;
76#[doc = "IFS register accessor: an alias for `Reg<IFS_SPEC>`"]
77pub type IFS = crate::Reg<ifs::IFS_SPEC>;
78#[doc = "Interrupt Flag Set Register"]
79pub mod ifs;
80#[doc = "IFC register accessor: an alias for `Reg<IFC_SPEC>`"]
81pub type IFC = crate::Reg<ifc::IFC_SPEC>;
82#[doc = "Interrupt Flag Clear Register"]
83pub mod ifc;
84#[doc = "IEN register accessor: an alias for `Reg<IEN_SPEC>`"]
85pub type IEN = crate::Reg<ien::IEN_SPEC>;
86#[doc = "Interrupt Enable Register"]
87pub mod ien;
88#[doc = "LOCK register accessor: an alias for `Reg<LOCK_SPEC>`"]
89pub type LOCK = crate::Reg<lock::LOCK_SPEC>;
90#[doc = "Configuration Lock Register"]
91pub mod lock;
92#[doc = "CMD register accessor: an alias for `Reg<CMD_SPEC>`"]
93pub type CMD = crate::Reg<cmd::CMD_SPEC>;
94#[doc = "Command Register"]
95pub mod cmd;
96#[doc = "CACHEHITS register accessor: an alias for `Reg<CACHEHITS_SPEC>`"]
97pub type CACHEHITS = crate::Reg<cachehits::CACHEHITS_SPEC>;
98#[doc = "Cache Hits Performance Counter"]
99pub mod cachehits;
100#[doc = "CACHEMISSES register accessor: an alias for `Reg<CACHEMISSES_SPEC>`"]
101pub type CACHEMISSES = crate::Reg<cachemisses::CACHEMISSES_SPEC>;
102#[doc = "Cache Misses Performance Counter"]
103pub mod cachemisses;
104#[doc = "TIMEBASE register accessor: an alias for `Reg<TIMEBASE_SPEC>`"]
105pub type TIMEBASE = crate::Reg<timebase::TIMEBASE_SPEC>;
106#[doc = "Flash Write and Erase Timebase"]
107pub mod timebase;
108#[doc = "MASSLOCK register accessor: an alias for `Reg<MASSLOCK_SPEC>`"]
109pub type MASSLOCK = crate::Reg<masslock::MASSLOCK_SPEC>;
110#[doc = "Mass Erase Lock Register"]
111pub mod masslock;
112#[doc = "IRQLATENCY register accessor: an alias for `Reg<IRQLATENCY_SPEC>`"]
113pub type IRQLATENCY = crate::Reg<irqlatency::IRQLATENCY_SPEC>;
114#[doc = "Irq Latency Register"]
115pub mod irqlatency;