1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Configuration Register"]
    pub icm_cfg: ICM_CFG,
    #[doc = "0x04 - Control Register"]
    pub icm_ctrl: ICM_CTRL,
    #[doc = "0x08 - Status Register"]
    pub icm_sr: ICM_SR,
    _reserved3: [u8; 4usize],
    #[doc = "0x10 - Interrupt Enable Register"]
    pub icm_ier: ICM_IER,
    #[doc = "0x14 - Interrupt Disable Register"]
    pub icm_idr: ICM_IDR,
    #[doc = "0x18 - Interrupt Mask Register"]
    pub icm_imr: ICM_IMR,
    #[doc = "0x1c - Interrupt Status Register"]
    pub icm_isr: ICM_ISR,
    #[doc = "0x20 - Undefined Access Status Register"]
    pub icm_uasr: ICM_UASR,
    _reserved8: [u8; 12usize],
    #[doc = "0x30 - Region Descriptor Area Start Address Register"]
    pub icm_dscr: ICM_DSCR,
    #[doc = "0x34 - Region Hash Area Start Address Register"]
    pub icm_hash: ICM_HASH,
    #[doc = "0x38 - User Initial Hash Value 0 Register 0"]
    pub icm_uihval: [ICM_UIHVAL; 8],
}
#[doc = "Configuration Register"]
pub struct ICM_CFG {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Configuration Register"]
pub mod icm_cfg;
#[doc = "Control Register"]
pub struct ICM_CTRL {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Control Register"]
pub mod icm_ctrl;
#[doc = "Status Register"]
pub struct ICM_SR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Status Register"]
pub mod icm_sr;
#[doc = "Interrupt Enable Register"]
pub struct ICM_IER {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Enable Register"]
pub mod icm_ier;
#[doc = "Interrupt Disable Register"]
pub struct ICM_IDR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Disable Register"]
pub mod icm_idr;
#[doc = "Interrupt Mask Register"]
pub struct ICM_IMR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Mask Register"]
pub mod icm_imr;
#[doc = "Interrupt Status Register"]
pub struct ICM_ISR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Status Register"]
pub mod icm_isr;
#[doc = "Undefined Access Status Register"]
pub struct ICM_UASR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Undefined Access Status Register"]
pub mod icm_uasr;
#[doc = "Region Descriptor Area Start Address Register"]
pub struct ICM_DSCR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Region Descriptor Area Start Address Register"]
pub mod icm_dscr;
#[doc = "Region Hash Area Start Address Register"]
pub struct ICM_HASH {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Region Hash Area Start Address Register"]
pub mod icm_hash;
#[doc = "User Initial Hash Value 0 Register 0"]
pub struct ICM_UIHVAL {
    register: vcell::VolatileCell<u32>,
}
#[doc = "User Initial Hash Value 0 Register 0"]
pub mod icm_uihval;