rp2040_pac/
busctrl.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    bus_priority: BUS_PRIORITY,
5    bus_priority_ack: BUS_PRIORITY_ACK,
6    perfctr0: PERFCTR0,
7    perfsel0: PERFSEL0,
8    perfctr1: PERFCTR1,
9    perfsel1: PERFSEL1,
10    perfctr2: PERFCTR2,
11    perfsel2: PERFSEL2,
12    perfctr3: PERFCTR3,
13    perfsel3: PERFSEL3,
14}
15impl RegisterBlock {
16    #[doc = "0x00 - Set the priority of each master for bus arbitration."]
17    #[inline(always)]
18    pub const fn bus_priority(&self) -> &BUS_PRIORITY {
19        &self.bus_priority
20    }
21    #[doc = "0x04 - Bus priority acknowledge"]
22    #[inline(always)]
23    pub const fn bus_priority_ack(&self) -> &BUS_PRIORITY_ACK {
24        &self.bus_priority_ack
25    }
26    #[doc = "0x08 - Bus fabric performance counter 0"]
27    #[inline(always)]
28    pub const fn perfctr0(&self) -> &PERFCTR0 {
29        &self.perfctr0
30    }
31    #[doc = "0x0c - Bus fabric performance event select for PERFCTR0"]
32    #[inline(always)]
33    pub const fn perfsel0(&self) -> &PERFSEL0 {
34        &self.perfsel0
35    }
36    #[doc = "0x10 - Bus fabric performance counter 1"]
37    #[inline(always)]
38    pub const fn perfctr1(&self) -> &PERFCTR1 {
39        &self.perfctr1
40    }
41    #[doc = "0x14 - Bus fabric performance event select for PERFCTR1"]
42    #[inline(always)]
43    pub const fn perfsel1(&self) -> &PERFSEL1 {
44        &self.perfsel1
45    }
46    #[doc = "0x18 - Bus fabric performance counter 2"]
47    #[inline(always)]
48    pub const fn perfctr2(&self) -> &PERFCTR2 {
49        &self.perfctr2
50    }
51    #[doc = "0x1c - Bus fabric performance event select for PERFCTR2"]
52    #[inline(always)]
53    pub const fn perfsel2(&self) -> &PERFSEL2 {
54        &self.perfsel2
55    }
56    #[doc = "0x20 - Bus fabric performance counter 3"]
57    #[inline(always)]
58    pub const fn perfctr3(&self) -> &PERFCTR3 {
59        &self.perfctr3
60    }
61    #[doc = "0x24 - Bus fabric performance event select for PERFCTR3"]
62    #[inline(always)]
63    pub const fn perfsel3(&self) -> &PERFSEL3 {
64        &self.perfsel3
65    }
66}
67#[doc = "BUS_PRIORITY (rw) register accessor: Set the priority of each master for bus arbitration.  
68
69You can [`read`](crate::generic::Reg::read) this register and get [`bus_priority::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 [`bus_priority::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
70
71For information about available fields see [`mod@bus_priority`]
72module"]
73pub type BUS_PRIORITY = crate::Reg<bus_priority::BUS_PRIORITY_SPEC>;
74#[doc = "Set the priority of each master for bus arbitration."]
75pub mod bus_priority;
76#[doc = "BUS_PRIORITY_ACK (r) register accessor: Bus priority acknowledge  
77
78You can [`read`](crate::generic::Reg::read) this register and get [`bus_priority_ack::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
79
80For information about available fields see [`mod@bus_priority_ack`]
81module"]
82pub type BUS_PRIORITY_ACK = crate::Reg<bus_priority_ack::BUS_PRIORITY_ACK_SPEC>;
83#[doc = "Bus priority acknowledge"]
84pub mod bus_priority_ack;
85#[doc = "PERFCTR0 (rw) register accessor: Bus fabric performance counter 0  
86
87You can [`read`](crate::generic::Reg::read) this register and get [`perfctr0::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 [`perfctr0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
88
89For information about available fields see [`mod@perfctr0`]
90module"]
91pub type PERFCTR0 = crate::Reg<perfctr0::PERFCTR0_SPEC>;
92#[doc = "Bus fabric performance counter 0"]
93pub mod perfctr0;
94#[doc = "PERFSEL0 (rw) register accessor: Bus fabric performance event select for PERFCTR0  
95
96You can [`read`](crate::generic::Reg::read) this register and get [`perfsel0::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 [`perfsel0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
97
98For information about available fields see [`mod@perfsel0`]
99module"]
100pub type PERFSEL0 = crate::Reg<perfsel0::PERFSEL0_SPEC>;
101#[doc = "Bus fabric performance event select for PERFCTR0"]
102pub mod perfsel0;
103#[doc = "PERFCTR1 (rw) register accessor: Bus fabric performance counter 1  
104
105You can [`read`](crate::generic::Reg::read) this register and get [`perfctr1::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 [`perfctr1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
106
107For information about available fields see [`mod@perfctr1`]
108module"]
109pub type PERFCTR1 = crate::Reg<perfctr1::PERFCTR1_SPEC>;
110#[doc = "Bus fabric performance counter 1"]
111pub mod perfctr1;
112#[doc = "PERFSEL1 (rw) register accessor: Bus fabric performance event select for PERFCTR1  
113
114You can [`read`](crate::generic::Reg::read) this register and get [`perfsel1::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 [`perfsel1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
115
116For information about available fields see [`mod@perfsel1`]
117module"]
118pub type PERFSEL1 = crate::Reg<perfsel1::PERFSEL1_SPEC>;
119#[doc = "Bus fabric performance event select for PERFCTR1"]
120pub mod perfsel1;
121#[doc = "PERFCTR2 (rw) register accessor: Bus fabric performance counter 2  
122
123You can [`read`](crate::generic::Reg::read) this register and get [`perfctr2::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 [`perfctr2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
124
125For information about available fields see [`mod@perfctr2`]
126module"]
127pub type PERFCTR2 = crate::Reg<perfctr2::PERFCTR2_SPEC>;
128#[doc = "Bus fabric performance counter 2"]
129pub mod perfctr2;
130#[doc = "PERFSEL2 (rw) register accessor: Bus fabric performance event select for PERFCTR2  
131
132You can [`read`](crate::generic::Reg::read) this register and get [`perfsel2::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 [`perfsel2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
133
134For information about available fields see [`mod@perfsel2`]
135module"]
136pub type PERFSEL2 = crate::Reg<perfsel2::PERFSEL2_SPEC>;
137#[doc = "Bus fabric performance event select for PERFCTR2"]
138pub mod perfsel2;
139#[doc = "PERFCTR3 (rw) register accessor: Bus fabric performance counter 3  
140
141You can [`read`](crate::generic::Reg::read) this register and get [`perfctr3::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 [`perfctr3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
142
143For information about available fields see [`mod@perfctr3`]
144module"]
145pub type PERFCTR3 = crate::Reg<perfctr3::PERFCTR3_SPEC>;
146#[doc = "Bus fabric performance counter 3"]
147pub mod perfctr3;
148#[doc = "PERFSEL3 (rw) register accessor: Bus fabric performance event select for PERFCTR3  
149
150You can [`read`](crate::generic::Reg::read) this register and get [`perfsel3::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 [`perfsel3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
151
152For information about available fields see [`mod@perfsel3`]
153module"]
154pub type PERFSEL3 = crate::Reg<perfsel3::PERFSEL3_SPEC>;
155#[doc = "Bus fabric performance event select for PERFCTR3"]
156pub mod perfsel3;