1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - command register."]
5 pub cmd: CMD,
6 #[doc = "0x04 - event register."]
7 pub event: EVENT,
8 _reserved2: [u8; 0x08],
9 #[doc = "0x10 - start (or only) address for next flash command."]
10 pub starta: STARTA,
11 #[doc = "0x14 - end address for next flash command, if command operates on address ranges."]
12 pub stopa: STOPA,
13 _reserved4: [u8; 0x68],
14 #[doc = "0x80..0x90 - data register, word 0-7; Memory data, or command parameter, or command result."]
15 pub dataw: [DATAW; 4],
16 _reserved5: [u8; 0x0f48],
17 #[doc = "0xfd8 - Clear interrupt enable bits."]
18 pub int_clr_enable: INT_CLR_ENABLE,
19 #[doc = "0xfdc - Set interrupt enable bits."]
20 pub int_set_enable: INT_SET_ENABLE,
21 #[doc = "0xfe0 - Interrupt status bits."]
22 pub int_status: INT_STATUS,
23 #[doc = "0xfe4 - Interrupt enable bits."]
24 pub int_enable: INT_ENABLE,
25 #[doc = "0xfe8 - Clear interrupt status bits."]
26 pub int_clr_status: INT_CLR_STATUS,
27 #[doc = "0xfec - Set interrupt status bits."]
28 pub int_set_status: INT_SET_STATUS,
29 _reserved11: [u8; 0x0c],
30 #[doc = "0xffc - Controller+Memory module identification."]
31 pub module_id: MODULE_ID,
32}
33#[doc = "CMD (w) register accessor: an alias for `Reg<CMD_SPEC>`"]
34pub type CMD = crate::Reg<cmd::CMD_SPEC>;
35#[doc = "command register."]
36pub mod cmd;
37#[doc = "EVENT (w) register accessor: an alias for `Reg<EVENT_SPEC>`"]
38pub type EVENT = crate::Reg<event::EVENT_SPEC>;
39#[doc = "event register."]
40pub mod event;
41#[doc = "STARTA (rw) register accessor: an alias for `Reg<STARTA_SPEC>`"]
42pub type STARTA = crate::Reg<starta::STARTA_SPEC>;
43#[doc = "start (or only) address for next flash command."]
44pub mod starta;
45#[doc = "STOPA (rw) register accessor: an alias for `Reg<STOPA_SPEC>`"]
46pub type STOPA = crate::Reg<stopa::STOPA_SPEC>;
47#[doc = "end address for next flash command, if command operates on address ranges."]
48pub mod stopa;
49#[doc = "DATAW (rw) register accessor: an alias for `Reg<DATAW_SPEC>`"]
50pub type DATAW = crate::Reg<dataw::DATAW_SPEC>;
51#[doc = "data register, word 0-7; Memory data, or command parameter, or command result."]
52pub mod dataw;
53#[doc = "INT_CLR_ENABLE (w) register accessor: an alias for `Reg<INT_CLR_ENABLE_SPEC>`"]
54pub type INT_CLR_ENABLE = crate::Reg<int_clr_enable::INT_CLR_ENABLE_SPEC>;
55#[doc = "Clear interrupt enable bits."]
56pub mod int_clr_enable;
57#[doc = "INT_SET_ENABLE (w) register accessor: an alias for `Reg<INT_SET_ENABLE_SPEC>`"]
58pub type INT_SET_ENABLE = crate::Reg<int_set_enable::INT_SET_ENABLE_SPEC>;
59#[doc = "Set interrupt enable bits."]
60pub mod int_set_enable;
61#[doc = "INT_STATUS (rw) register accessor: an alias for `Reg<INT_STATUS_SPEC>`"]
62pub type INT_STATUS = crate::Reg<int_status::INT_STATUS_SPEC>;
63#[doc = "Interrupt status bits."]
64pub mod int_status;
65#[doc = "INT_ENABLE (rw) register accessor: an alias for `Reg<INT_ENABLE_SPEC>`"]
66pub type INT_ENABLE = crate::Reg<int_enable::INT_ENABLE_SPEC>;
67#[doc = "Interrupt enable bits."]
68pub mod int_enable;
69#[doc = "INT_CLR_STATUS (w) register accessor: an alias for `Reg<INT_CLR_STATUS_SPEC>`"]
70pub type INT_CLR_STATUS = crate::Reg<int_clr_status::INT_CLR_STATUS_SPEC>;
71#[doc = "Clear interrupt status bits."]
72pub mod int_clr_status;
73#[doc = "INT_SET_STATUS (w) register accessor: an alias for `Reg<INT_SET_STATUS_SPEC>`"]
74pub type INT_SET_STATUS = crate::Reg<int_set_status::INT_SET_STATUS_SPEC>;
75#[doc = "Set interrupt status bits."]
76pub mod int_set_status;
77#[doc = "MODULE_ID (r) register accessor: an alias for `Reg<MODULE_ID_SPEC>`"]
78pub type MODULE_ID = crate::Reg<module_id::MODULE_ID_SPEC>;
79#[doc = "Controller+Memory module identification."]
80pub mod module_id;