ambiq_apollo3_pac/cachectrl/
mod.rs

1#[doc = r" Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Flash Cache Control Register"]
5    pub cachecfg: CACHECFG,
6    #[doc = "0x04 - Flash Control Register"]
7    pub flashcfg: FLASHCFG,
8    #[doc = "0x08 - Cache Control"]
9    pub ctrl: CTRL,
10    _reserved0: [u8; 4usize],
11    #[doc = "0x10 - Flash Cache Noncachable Region 0 Start"]
12    pub ncr0start: NCR0START,
13    #[doc = "0x14 - Flash Cache Noncachable Region 0 End"]
14    pub ncr0end: NCR0END,
15    #[doc = "0x18 - Flash Cache Noncachable Region 1 Start"]
16    pub ncr1start: NCR1START,
17    #[doc = "0x1c - Flash Cache Noncachable Region 1 End"]
18    pub ncr1end: NCR1END,
19    _reserved1: [u8; 32usize],
20    #[doc = "0x40 - Data Cache Total Accesses"]
21    pub dmon0: DMON0,
22    #[doc = "0x44 - Data Cache Tag Lookups"]
23    pub dmon1: DMON1,
24    #[doc = "0x48 - Data Cache Hits"]
25    pub dmon2: DMON2,
26    #[doc = "0x4c - Data Cache Line Hits"]
27    pub dmon3: DMON3,
28    #[doc = "0x50 - Instruction Cache Total Accesses"]
29    pub imon0: IMON0,
30    #[doc = "0x54 - Instruction Cache Tag Lookups"]
31    pub imon1: IMON1,
32    #[doc = "0x58 - Instruction Cache Hits"]
33    pub imon2: IMON2,
34    #[doc = "0x5c - Instruction Cache Line Hits"]
35    pub imon3: IMON3,
36}
37#[doc = "Flash Cache Control Register"]
38pub struct CACHECFG {
39    register: ::vcell::VolatileCell<u32>,
40}
41#[doc = "Flash Cache Control Register"]
42pub mod cachecfg;
43#[doc = "Flash Control Register"]
44pub struct FLASHCFG {
45    register: ::vcell::VolatileCell<u32>,
46}
47#[doc = "Flash Control Register"]
48pub mod flashcfg;
49#[doc = "Cache Control"]
50pub struct CTRL {
51    register: ::vcell::VolatileCell<u32>,
52}
53#[doc = "Cache Control"]
54pub mod ctrl;
55#[doc = "Flash Cache Noncachable Region 0 Start"]
56pub struct NCR0START {
57    register: ::vcell::VolatileCell<u32>,
58}
59#[doc = "Flash Cache Noncachable Region 0 Start"]
60pub mod ncr0start;
61#[doc = "Flash Cache Noncachable Region 0 End"]
62pub struct NCR0END {
63    register: ::vcell::VolatileCell<u32>,
64}
65#[doc = "Flash Cache Noncachable Region 0 End"]
66pub mod ncr0end;
67#[doc = "Flash Cache Noncachable Region 1 Start"]
68pub struct NCR1START {
69    register: ::vcell::VolatileCell<u32>,
70}
71#[doc = "Flash Cache Noncachable Region 1 Start"]
72pub mod ncr1start;
73#[doc = "Flash Cache Noncachable Region 1 End"]
74pub struct NCR1END {
75    register: ::vcell::VolatileCell<u32>,
76}
77#[doc = "Flash Cache Noncachable Region 1 End"]
78pub mod ncr1end;
79#[doc = "Data Cache Total Accesses"]
80pub struct DMON0 {
81    register: ::vcell::VolatileCell<u32>,
82}
83#[doc = "Data Cache Total Accesses"]
84pub mod dmon0;
85#[doc = "Data Cache Tag Lookups"]
86pub struct DMON1 {
87    register: ::vcell::VolatileCell<u32>,
88}
89#[doc = "Data Cache Tag Lookups"]
90pub mod dmon1;
91#[doc = "Data Cache Hits"]
92pub struct DMON2 {
93    register: ::vcell::VolatileCell<u32>,
94}
95#[doc = "Data Cache Hits"]
96pub mod dmon2;
97#[doc = "Data Cache Line Hits"]
98pub struct DMON3 {
99    register: ::vcell::VolatileCell<u32>,
100}
101#[doc = "Data Cache Line Hits"]
102pub mod dmon3;
103#[doc = "Instruction Cache Total Accesses"]
104pub struct IMON0 {
105    register: ::vcell::VolatileCell<u32>,
106}
107#[doc = "Instruction Cache Total Accesses"]
108pub mod imon0;
109#[doc = "Instruction Cache Tag Lookups"]
110pub struct IMON1 {
111    register: ::vcell::VolatileCell<u32>,
112}
113#[doc = "Instruction Cache Tag Lookups"]
114pub mod imon1;
115#[doc = "Instruction Cache Hits"]
116pub struct IMON2 {
117    register: ::vcell::VolatileCell<u32>,
118}
119#[doc = "Instruction Cache Hits"]
120pub mod imon2;
121#[doc = "Instruction Cache Line Hits"]
122pub struct IMON3 {
123    register: ::vcell::VolatileCell<u32>,
124}
125#[doc = "Instruction Cache Line Hits"]
126pub mod imon3;