atsame70j21/
xdmac.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Global Type Register"]
5    pub xdmac_gtype: crate::Reg<xdmac_gtype::XDMAC_GTYPE_SPEC>,
6    #[doc = "0x04 - Global Configuration Register"]
7    pub xdmac_gcfg: crate::Reg<xdmac_gcfg::XDMAC_GCFG_SPEC>,
8    #[doc = "0x08 - Global Weighted Arbiter Configuration Register"]
9    pub xdmac_gwac: crate::Reg<xdmac_gwac::XDMAC_GWAC_SPEC>,
10    #[doc = "0x0c - Global Interrupt Enable Register"]
11    pub xdmac_gie: crate::Reg<xdmac_gie::XDMAC_GIE_SPEC>,
12    #[doc = "0x10 - Global Interrupt Disable Register"]
13    pub xdmac_gid: crate::Reg<xdmac_gid::XDMAC_GID_SPEC>,
14    #[doc = "0x14 - Global Interrupt Mask Register"]
15    pub xdmac_gim: crate::Reg<xdmac_gim::XDMAC_GIM_SPEC>,
16    #[doc = "0x18 - Global Interrupt Status Register"]
17    pub xdmac_gis: crate::Reg<xdmac_gis::XDMAC_GIS_SPEC>,
18    #[doc = "0x1c - Global Channel Enable Register"]
19    pub xdmac_ge: crate::Reg<xdmac_ge::XDMAC_GE_SPEC>,
20    #[doc = "0x20 - Global Channel Disable Register"]
21    pub xdmac_gd: crate::Reg<xdmac_gd::XDMAC_GD_SPEC>,
22    #[doc = "0x24 - Global Channel Status Register"]
23    pub xdmac_gs: crate::Reg<xdmac_gs::XDMAC_GS_SPEC>,
24    #[doc = "0x28 - Global Channel Read Suspend Register"]
25    pub xdmac_grs: crate::Reg<xdmac_grs::XDMAC_GRS_SPEC>,
26    #[doc = "0x2c - Global Channel Write Suspend Register"]
27    pub xdmac_gws: crate::Reg<xdmac_gws::XDMAC_GWS_SPEC>,
28    #[doc = "0x30 - Global Channel Read Write Suspend Register"]
29    pub xdmac_grws: crate::Reg<xdmac_grws::XDMAC_GRWS_SPEC>,
30    #[doc = "0x34 - Global Channel Read Write Resume Register"]
31    pub xdmac_grwr: crate::Reg<xdmac_grwr::XDMAC_GRWR_SPEC>,
32    #[doc = "0x38 - Global Channel Software Request Register"]
33    pub xdmac_gswr: crate::Reg<xdmac_gswr::XDMAC_GSWR_SPEC>,
34    #[doc = "0x3c - Global Channel Software Request Status Register"]
35    pub xdmac_gsws: crate::Reg<xdmac_gsws::XDMAC_GSWS_SPEC>,
36    #[doc = "0x40 - Global Channel Software Flush Request Register"]
37    pub xdmac_gswf: crate::Reg<xdmac_gswf::XDMAC_GSWF_SPEC>,
38    _reserved17: [u8; 0x0c],
39    #[doc = "0x50..0x88 - Channel Interrupt Enable Register (chid = 0)"]
40    pub xdmac_chid0: XDMAC_CHID,
41    _reserved18: [u8; 0x08],
42    #[doc = "0x90..0xc8 - Channel Interrupt Enable Register (chid = 0)"]
43    pub xdmac_chid1: XDMAC_CHID,
44    _reserved19: [u8; 0x08],
45    #[doc = "0xd0..0x108 - Channel Interrupt Enable Register (chid = 0)"]
46    pub xdmac_chid2: XDMAC_CHID,
47    _reserved20: [u8; 0x08],
48    #[doc = "0x110..0x148 - Channel Interrupt Enable Register (chid = 0)"]
49    pub xdmac_chid3: XDMAC_CHID,
50    _reserved21: [u8; 0x08],
51    #[doc = "0x150..0x188 - Channel Interrupt Enable Register (chid = 0)"]
52    pub xdmac_chid4: XDMAC_CHID,
53    _reserved22: [u8; 0x08],
54    #[doc = "0x190..0x1c8 - Channel Interrupt Enable Register (chid = 0)"]
55    pub xdmac_chid5: XDMAC_CHID,
56    _reserved23: [u8; 0x08],
57    #[doc = "0x1d0..0x208 - Channel Interrupt Enable Register (chid = 0)"]
58    pub xdmac_chid6: XDMAC_CHID,
59    _reserved24: [u8; 0x08],
60    #[doc = "0x210..0x248 - Channel Interrupt Enable Register (chid = 0)"]
61    pub xdmac_chid7: XDMAC_CHID,
62    _reserved25: [u8; 0x08],
63    #[doc = "0x250..0x288 - Channel Interrupt Enable Register (chid = 0)"]
64    pub xdmac_chid8: XDMAC_CHID,
65    _reserved26: [u8; 0x08],
66    #[doc = "0x290..0x2c8 - Channel Interrupt Enable Register (chid = 0)"]
67    pub xdmac_chid9: XDMAC_CHID,
68    _reserved27: [u8; 0x08],
69    #[doc = "0x2d0..0x308 - Channel Interrupt Enable Register (chid = 0)"]
70    pub xdmac_chid10: XDMAC_CHID,
71    _reserved28: [u8; 0x08],
72    #[doc = "0x310..0x348 - Channel Interrupt Enable Register (chid = 0)"]
73    pub xdmac_chid11: XDMAC_CHID,
74    _reserved29: [u8; 0x08],
75    #[doc = "0x350..0x388 - Channel Interrupt Enable Register (chid = 0)"]
76    pub xdmac_chid12: XDMAC_CHID,
77    _reserved30: [u8; 0x08],
78    #[doc = "0x390..0x3c8 - Channel Interrupt Enable Register (chid = 0)"]
79    pub xdmac_chid13: XDMAC_CHID,
80    _reserved31: [u8; 0x08],
81    #[doc = "0x3d0..0x408 - Channel Interrupt Enable Register (chid = 0)"]
82    pub xdmac_chid14: XDMAC_CHID,
83    _reserved32: [u8; 0x08],
84    #[doc = "0x410..0x448 - Channel Interrupt Enable Register (chid = 0)"]
85    pub xdmac_chid15: XDMAC_CHID,
86    _reserved33: [u8; 0x08],
87    #[doc = "0x450..0x488 - Channel Interrupt Enable Register (chid = 0)"]
88    pub xdmac_chid16: XDMAC_CHID,
89    _reserved34: [u8; 0x08],
90    #[doc = "0x490..0x4c8 - Channel Interrupt Enable Register (chid = 0)"]
91    pub xdmac_chid17: XDMAC_CHID,
92    _reserved35: [u8; 0x08],
93    #[doc = "0x4d0..0x508 - Channel Interrupt Enable Register (chid = 0)"]
94    pub xdmac_chid18: XDMAC_CHID,
95    _reserved36: [u8; 0x08],
96    #[doc = "0x510..0x548 - Channel Interrupt Enable Register (chid = 0)"]
97    pub xdmac_chid19: XDMAC_CHID,
98    _reserved37: [u8; 0x08],
99    #[doc = "0x550..0x588 - Channel Interrupt Enable Register (chid = 0)"]
100    pub xdmac_chid20: XDMAC_CHID,
101    _reserved38: [u8; 0x08],
102    #[doc = "0x590..0x5c8 - Channel Interrupt Enable Register (chid = 0)"]
103    pub xdmac_chid21: XDMAC_CHID,
104    _reserved39: [u8; 0x08],
105    #[doc = "0x5d0..0x608 - Channel Interrupt Enable Register (chid = 0)"]
106    pub xdmac_chid22: XDMAC_CHID,
107    _reserved40: [u8; 0x08],
108    #[doc = "0x610..0x648 - Channel Interrupt Enable Register (chid = 0)"]
109    pub xdmac_chid23: XDMAC_CHID,
110}
111#[doc = r"Register block"]
112#[repr(C)]
113pub struct XDMAC_CHID {
114    #[doc = "0x00 - Channel Interrupt Enable Register (chid = 0)"]
115    pub xdmac_cie: crate::Reg<self::xdmac_chid::xdmac_cie::XDMAC_CIE_SPEC>,
116    #[doc = "0x04 - Channel Interrupt Disable Register (chid = 0)"]
117    pub xdmac_cid: crate::Reg<self::xdmac_chid::xdmac_cid::XDMAC_CID_SPEC>,
118    #[doc = "0x08 - Channel Interrupt Mask Register (chid = 0)"]
119    pub xdmac_cim: crate::Reg<self::xdmac_chid::xdmac_cim::XDMAC_CIM_SPEC>,
120    #[doc = "0x0c - Channel Interrupt Status Register (chid = 0)"]
121    pub xdmac_cis: crate::Reg<self::xdmac_chid::xdmac_cis::XDMAC_CIS_SPEC>,
122    #[doc = "0x10 - Channel Source Address Register (chid = 0)"]
123    pub xdmac_csa: crate::Reg<self::xdmac_chid::xdmac_csa::XDMAC_CSA_SPEC>,
124    #[doc = "0x14 - Channel Destination Address Register (chid = 0)"]
125    pub xdmac_cda: crate::Reg<self::xdmac_chid::xdmac_cda::XDMAC_CDA_SPEC>,
126    #[doc = "0x18 - Channel Next Descriptor Address Register (chid = 0)"]
127    pub xdmac_cnda: crate::Reg<self::xdmac_chid::xdmac_cnda::XDMAC_CNDA_SPEC>,
128    #[doc = "0x1c - Channel Next Descriptor Control Register (chid = 0)"]
129    pub xdmac_cndc: crate::Reg<self::xdmac_chid::xdmac_cndc::XDMAC_CNDC_SPEC>,
130    #[doc = "0x20 - Channel Microblock Control Register (chid = 0)"]
131    pub xdmac_cubc: crate::Reg<self::xdmac_chid::xdmac_cubc::XDMAC_CUBC_SPEC>,
132    #[doc = "0x24 - Channel Block Control Register (chid = 0)"]
133    pub xdmac_cbc: crate::Reg<self::xdmac_chid::xdmac_cbc::XDMAC_CBC_SPEC>,
134    #[doc = "0x28 - Channel Configuration Register (chid = 0)"]
135    pub xdmac_cc: crate::Reg<self::xdmac_chid::xdmac_cc::XDMAC_CC_SPEC>,
136    #[doc = "0x2c - Channel Data Stride Memory Set Pattern (chid = 0)"]
137    pub xdmac_cds_msp: crate::Reg<self::xdmac_chid::xdmac_cds_msp::XDMAC_CDS_MSP_SPEC>,
138    #[doc = "0x30 - Channel Source Microblock Stride (chid = 0)"]
139    pub xdmac_csus: crate::Reg<self::xdmac_chid::xdmac_csus::XDMAC_CSUS_SPEC>,
140    #[doc = "0x34 - Channel Destination Microblock Stride (chid = 0)"]
141    pub xdmac_cdus: crate::Reg<self::xdmac_chid::xdmac_cdus::XDMAC_CDUS_SPEC>,
142}
143#[doc = r"Register block"]
144#[doc = "Channel Interrupt Enable Register (chid = 0)"]
145pub mod xdmac_chid;
146#[doc = "XDMAC_GTYPE register accessor: an alias for `Reg<XDMAC_GTYPE_SPEC>`"]
147pub type XDMAC_GTYPE = crate::Reg<xdmac_gtype::XDMAC_GTYPE_SPEC>;
148#[doc = "Global Type Register"]
149pub mod xdmac_gtype;
150#[doc = "XDMAC_GCFG register accessor: an alias for `Reg<XDMAC_GCFG_SPEC>`"]
151pub type XDMAC_GCFG = crate::Reg<xdmac_gcfg::XDMAC_GCFG_SPEC>;
152#[doc = "Global Configuration Register"]
153pub mod xdmac_gcfg;
154#[doc = "XDMAC_GWAC register accessor: an alias for `Reg<XDMAC_GWAC_SPEC>`"]
155pub type XDMAC_GWAC = crate::Reg<xdmac_gwac::XDMAC_GWAC_SPEC>;
156#[doc = "Global Weighted Arbiter Configuration Register"]
157pub mod xdmac_gwac;
158#[doc = "XDMAC_GIE register accessor: an alias for `Reg<XDMAC_GIE_SPEC>`"]
159pub type XDMAC_GIE = crate::Reg<xdmac_gie::XDMAC_GIE_SPEC>;
160#[doc = "Global Interrupt Enable Register"]
161pub mod xdmac_gie;
162#[doc = "XDMAC_GID register accessor: an alias for `Reg<XDMAC_GID_SPEC>`"]
163pub type XDMAC_GID = crate::Reg<xdmac_gid::XDMAC_GID_SPEC>;
164#[doc = "Global Interrupt Disable Register"]
165pub mod xdmac_gid;
166#[doc = "XDMAC_GIM register accessor: an alias for `Reg<XDMAC_GIM_SPEC>`"]
167pub type XDMAC_GIM = crate::Reg<xdmac_gim::XDMAC_GIM_SPEC>;
168#[doc = "Global Interrupt Mask Register"]
169pub mod xdmac_gim;
170#[doc = "XDMAC_GIS register accessor: an alias for `Reg<XDMAC_GIS_SPEC>`"]
171pub type XDMAC_GIS = crate::Reg<xdmac_gis::XDMAC_GIS_SPEC>;
172#[doc = "Global Interrupt Status Register"]
173pub mod xdmac_gis;
174#[doc = "XDMAC_GE register accessor: an alias for `Reg<XDMAC_GE_SPEC>`"]
175pub type XDMAC_GE = crate::Reg<xdmac_ge::XDMAC_GE_SPEC>;
176#[doc = "Global Channel Enable Register"]
177pub mod xdmac_ge;
178#[doc = "XDMAC_GD register accessor: an alias for `Reg<XDMAC_GD_SPEC>`"]
179pub type XDMAC_GD = crate::Reg<xdmac_gd::XDMAC_GD_SPEC>;
180#[doc = "Global Channel Disable Register"]
181pub mod xdmac_gd;
182#[doc = "XDMAC_GS register accessor: an alias for `Reg<XDMAC_GS_SPEC>`"]
183pub type XDMAC_GS = crate::Reg<xdmac_gs::XDMAC_GS_SPEC>;
184#[doc = "Global Channel Status Register"]
185pub mod xdmac_gs;
186#[doc = "XDMAC_GRS register accessor: an alias for `Reg<XDMAC_GRS_SPEC>`"]
187pub type XDMAC_GRS = crate::Reg<xdmac_grs::XDMAC_GRS_SPEC>;
188#[doc = "Global Channel Read Suspend Register"]
189pub mod xdmac_grs;
190#[doc = "XDMAC_GWS register accessor: an alias for `Reg<XDMAC_GWS_SPEC>`"]
191pub type XDMAC_GWS = crate::Reg<xdmac_gws::XDMAC_GWS_SPEC>;
192#[doc = "Global Channel Write Suspend Register"]
193pub mod xdmac_gws;
194#[doc = "XDMAC_GRWS register accessor: an alias for `Reg<XDMAC_GRWS_SPEC>`"]
195pub type XDMAC_GRWS = crate::Reg<xdmac_grws::XDMAC_GRWS_SPEC>;
196#[doc = "Global Channel Read Write Suspend Register"]
197pub mod xdmac_grws;
198#[doc = "XDMAC_GRWR register accessor: an alias for `Reg<XDMAC_GRWR_SPEC>`"]
199pub type XDMAC_GRWR = crate::Reg<xdmac_grwr::XDMAC_GRWR_SPEC>;
200#[doc = "Global Channel Read Write Resume Register"]
201pub mod xdmac_grwr;
202#[doc = "XDMAC_GSWR register accessor: an alias for `Reg<XDMAC_GSWR_SPEC>`"]
203pub type XDMAC_GSWR = crate::Reg<xdmac_gswr::XDMAC_GSWR_SPEC>;
204#[doc = "Global Channel Software Request Register"]
205pub mod xdmac_gswr;
206#[doc = "XDMAC_GSWS register accessor: an alias for `Reg<XDMAC_GSWS_SPEC>`"]
207pub type XDMAC_GSWS = crate::Reg<xdmac_gsws::XDMAC_GSWS_SPEC>;
208#[doc = "Global Channel Software Request Status Register"]
209pub mod xdmac_gsws;
210#[doc = "XDMAC_GSWF register accessor: an alias for `Reg<XDMAC_GSWF_SPEC>`"]
211pub type XDMAC_GSWF = crate::Reg<xdmac_gswf::XDMAC_GSWF_SPEC>;
212#[doc = "Global Channel Software Flush Request Register"]
213pub mod xdmac_gswf;