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 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332
#[doc = r" Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - Control Register"] pub cr: CR, #[doc = "0x04 - Error Status Register"] pub es: ES, _reserved0: [u8; 4usize], #[doc = "0x0c - Enable Request Register"] pub erq: ERQ, _reserved1: [u8; 4usize], #[doc = "0x14 - Enable Error Interrupt Register"] pub eei: EEI, #[doc = "0x18 - Clear Enable Error Interrupt Register"] pub ceei: CEEI, #[doc = "0x19 - Set Enable Error Interrupt Register"] pub seei: SEEI, #[doc = "0x1a - Clear Enable Request Register"] pub cerq: CERQ, #[doc = "0x1b - Set Enable Request Register"] pub serq: SERQ, #[doc = "0x1c - Clear DONE Status Bit Register"] pub cdne: CDNE, #[doc = "0x1d - Set START Bit Register"] pub ssrt: SSRT, #[doc = "0x1e - Clear Error Register"] pub cerr: CERR, #[doc = "0x1f - Clear Interrupt Request Register"] pub cint: CINT, _reserved2: [u8; 4usize], #[doc = "0x24 - Interrupt Request Register"] pub int: INT, _reserved3: [u8; 4usize], #[doc = "0x2c - Error Register"] pub err: ERR, _reserved4: [u8; 4usize], #[doc = "0x34 - Hardware Request Status Register"] pub hrs: HRS, _reserved5: [u8; 12usize], #[doc = "0x44 - Enable Asynchronous Request in Stop Register"] pub ears: EARS, _reserved6: [u8; 184usize], #[doc = "0x100 - Channel n Priority Register"] pub dchpri3: DCHPRI, #[doc = "0x101 - Channel n Priority Register"] pub dchpri2: DCHPRI, #[doc = "0x102 - Channel n Priority Register"] pub dchpri1: DCHPRI, #[doc = "0x103 - Channel n Priority Register"] pub dchpri0: DCHPRI, _reserved7: [u8; 3836usize], #[doc = "0x1000 - TCD Source Address"] pub tcd0_saddr: TCD_SADDR, #[doc = "0x1004 - TCD Signed Source Address Offset"] pub tcd0_soff: TCD_SOFF, #[doc = "0x1006 - TCD Transfer Attributes"] pub tcd0_attr: TCD_ATTR, #[doc = "0x1008 - TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub tcd0_nbytes_mlno: TCD_NBYTES_MLNO, #[doc = "0x100c - TCD Last Source Address Adjustment"] pub tcd0_slast: TCD_SLAST, #[doc = "0x1010 - TCD Destination Address"] pub tcd0_daddr: TCD_DADDR, #[doc = "0x1014 - TCD Signed Destination Address Offset"] pub tcd0_doff: TCD_DOFF, #[doc = "0x1016 - TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd0_citer_elinkno: TCD_CITER_ELINKNO, #[doc = "0x1018 - TCD Last Destination Address Adjustment/Scatter Gather Address"] pub tcd0_dlastsga: TCD_DLASTSGA, #[doc = "0x101c - TCD Control and Status"] pub tcd0_csr: TCD_CSR, #[doc = "0x101e - TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd0_biter_elinkno: TCD_BITER_ELINKNO, #[doc = "0x1020 - TCD Source Address"] pub tcd1_saddr: TCD_SADDR, #[doc = "0x1024 - TCD Signed Source Address Offset"] pub tcd1_soff: TCD_SOFF, #[doc = "0x1026 - TCD Transfer Attributes"] pub tcd1_attr: TCD_ATTR, #[doc = "0x1028 - TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub tcd1_nbytes_mlno: TCD_NBYTES_MLNO, #[doc = "0x102c - TCD Last Source Address Adjustment"] pub tcd1_slast: TCD_SLAST, #[doc = "0x1030 - TCD Destination Address"] pub tcd1_daddr: TCD_DADDR, #[doc = "0x1034 - TCD Signed Destination Address Offset"] pub tcd1_doff: TCD_DOFF, #[doc = "0x1036 - TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd1_citer_elinkno: TCD_CITER_ELINKNO, #[doc = "0x1038 - TCD Last Destination Address Adjustment/Scatter Gather Address"] pub tcd1_dlastsga: TCD_DLASTSGA, #[doc = "0x103c - TCD Control and Status"] pub tcd1_csr: TCD_CSR, #[doc = "0x103e - TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd1_biter_elinkno: TCD_BITER_ELINKNO, #[doc = "0x1040 - TCD Source Address"] pub tcd2_saddr: TCD_SADDR, #[doc = "0x1044 - TCD Signed Source Address Offset"] pub tcd2_soff: TCD_SOFF, #[doc = "0x1046 - TCD Transfer Attributes"] pub tcd2_attr: TCD_ATTR, #[doc = "0x1048 - TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub tcd2_nbytes_mlno: TCD_NBYTES_MLNO, #[doc = "0x104c - TCD Last Source Address Adjustment"] pub tcd2_slast: TCD_SLAST, #[doc = "0x1050 - TCD Destination Address"] pub tcd2_daddr: TCD_DADDR, #[doc = "0x1054 - TCD Signed Destination Address Offset"] pub tcd2_doff: TCD_DOFF, #[doc = "0x1056 - TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd2_citer_elinkno: TCD_CITER_ELINKNO, #[doc = "0x1058 - TCD Last Destination Address Adjustment/Scatter Gather Address"] pub tcd2_dlastsga: TCD_DLASTSGA, #[doc = "0x105c - TCD Control and Status"] pub tcd2_csr: TCD_CSR, #[doc = "0x105e - TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd2_biter_elinkno: TCD_BITER_ELINKNO, #[doc = "0x1060 - TCD Source Address"] pub tcd3_saddr: TCD_SADDR, #[doc = "0x1064 - TCD Signed Source Address Offset"] pub tcd3_soff: TCD_SOFF, #[doc = "0x1066 - TCD Transfer Attributes"] pub tcd3_attr: TCD_ATTR, #[doc = "0x1068 - TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub tcd3_nbytes_mlno: TCD_NBYTES_MLNO, #[doc = "0x106c - TCD Last Source Address Adjustment"] pub tcd3_slast: TCD_SLAST, #[doc = "0x1070 - TCD Destination Address"] pub tcd3_daddr: TCD_DADDR, #[doc = "0x1074 - TCD Signed Destination Address Offset"] pub tcd3_doff: TCD_DOFF, #[doc = "0x1076 - TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd3_citer_elinkno: TCD_CITER_ELINKNO, #[doc = "0x1078 - TCD Last Destination Address Adjustment/Scatter Gather Address"] pub tcd3_dlastsga: TCD_DLASTSGA, #[doc = "0x107c - TCD Control and Status"] pub tcd3_csr: TCD_CSR, #[doc = "0x107e - TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub tcd3_biter_elinkno: TCD_BITER_ELINKNO, } #[doc = "Control Register"] pub struct CR { register: ::vcell::VolatileCell<u32>, } #[doc = "Control Register"] pub mod cr; #[doc = "Error Status Register"] pub struct ES { register: ::vcell::VolatileCell<u32>, } #[doc = "Error Status Register"] pub mod es; #[doc = "Enable Request Register"] pub struct ERQ { register: ::vcell::VolatileCell<u32>, } #[doc = "Enable Request Register"] pub mod erq; #[doc = "Enable Error Interrupt Register"] pub struct EEI { register: ::vcell::VolatileCell<u32>, } #[doc = "Enable Error Interrupt Register"] pub mod eei; #[doc = "Clear Enable Error Interrupt Register"] pub struct CEEI { register: ::vcell::VolatileCell<u8>, } #[doc = "Clear Enable Error Interrupt Register"] pub mod ceei; #[doc = "Set Enable Error Interrupt Register"] pub struct SEEI { register: ::vcell::VolatileCell<u8>, } #[doc = "Set Enable Error Interrupt Register"] pub mod seei; #[doc = "Clear Enable Request Register"] pub struct CERQ { register: ::vcell::VolatileCell<u8>, } #[doc = "Clear Enable Request Register"] pub mod cerq; #[doc = "Set Enable Request Register"] pub struct SERQ { register: ::vcell::VolatileCell<u8>, } #[doc = "Set Enable Request Register"] pub mod serq; #[doc = "Clear DONE Status Bit Register"] pub struct CDNE { register: ::vcell::VolatileCell<u8>, } #[doc = "Clear DONE Status Bit Register"] pub mod cdne; #[doc = "Set START Bit Register"] pub struct SSRT { register: ::vcell::VolatileCell<u8>, } #[doc = "Set START Bit Register"] pub mod ssrt; #[doc = "Clear Error Register"] pub struct CERR { register: ::vcell::VolatileCell<u8>, } #[doc = "Clear Error Register"] pub mod cerr; #[doc = "Clear Interrupt Request Register"] pub struct CINT { register: ::vcell::VolatileCell<u8>, } #[doc = "Clear Interrupt Request Register"] pub mod cint; #[doc = "Interrupt Request Register"] pub struct INT { register: ::vcell::VolatileCell<u32>, } #[doc = "Interrupt Request Register"] pub mod int; #[doc = "Error Register"] pub struct ERR { register: ::vcell::VolatileCell<u32>, } #[doc = "Error Register"] pub mod err; #[doc = "Hardware Request Status Register"] pub struct HRS { register: ::vcell::VolatileCell<u32>, } #[doc = "Hardware Request Status Register"] pub mod hrs; #[doc = "Enable Asynchronous Request in Stop Register"] pub struct EARS { register: ::vcell::VolatileCell<u32>, } #[doc = "Enable Asynchronous Request in Stop Register"] pub mod ears; #[doc = "Channel n Priority Register"] pub struct DCHPRI { register: ::vcell::VolatileCell<u8>, } #[doc = "Channel n Priority Register"] pub mod dchpri; #[doc = "TCD Source Address"] pub struct TCD_SADDR { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Source Address"] pub mod tcd_saddr; #[doc = "TCD Signed Source Address Offset"] pub struct TCD_SOFF { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Signed Source Address Offset"] pub mod tcd_soff; #[doc = "TCD Transfer Attributes"] pub struct TCD_ATTR { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Transfer Attributes"] pub mod tcd_attr; #[doc = "TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub struct TCD_NBYTES_MLNO { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Minor Byte Count (Minor Loop Mapping Disabled)"] pub mod tcd_nbytes_mlno; #[doc = "TCD Signed Minor Loop Offset (Minor Loop Mapping Enabled and Offset Disabled)"] pub struct TCD_NBYTES_MLOFFNO { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Signed Minor Loop Offset (Minor Loop Mapping Enabled and Offset Disabled)"] pub mod tcd_nbytes_mloffno; #[doc = "TCD Signed Minor Loop Offset (Minor Loop Mapping and Offset Enabled)"] pub struct TCD_NBYTES_MLOFFYES { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Signed Minor Loop Offset (Minor Loop Mapping and Offset Enabled)"] pub mod tcd_nbytes_mloffyes; #[doc = "TCD Last Source Address Adjustment"] pub struct TCD_SLAST { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Last Source Address Adjustment"] pub mod tcd_slast; #[doc = "TCD Destination Address"] pub struct TCD_DADDR { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Destination Address"] pub mod tcd_daddr; #[doc = "TCD Signed Destination Address Offset"] pub struct TCD_DOFF { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Signed Destination Address Offset"] pub mod tcd_doff; #[doc = "TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub struct TCD_CITER_ELINKNO { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub mod tcd_citer_elinkno; #[doc = "TCD Current Minor Loop Link, Major Loop Count (Channel Linking Enabled)"] pub struct TCD_CITER_ELINKYES { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Current Minor Loop Link, Major Loop Count (Channel Linking Enabled)"] pub mod tcd_citer_elinkyes; #[doc = "TCD Last Destination Address Adjustment/Scatter Gather Address"] pub struct TCD_DLASTSGA { register: ::vcell::VolatileCell<u32>, } #[doc = "TCD Last Destination Address Adjustment/Scatter Gather Address"] pub mod tcd_dlastsga; #[doc = "TCD Control and Status"] pub struct TCD_CSR { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Control and Status"] pub mod tcd_csr; #[doc = "TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub struct TCD_BITER_ELINKNO { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled)"] pub mod tcd_biter_elinkno; #[doc = "TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Enabled)"] pub struct TCD_BITER_ELINKYES { register: ::vcell::VolatileCell<u16>, } #[doc = "TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Enabled)"] pub mod tcd_biter_elinkyes;