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
#[doc = r"Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - I2C Master Slave Address"] pub msa: MSA, #[doc = "0x04 - I2C Master Control/Status"] pub mcs: MCS, #[doc = "0x08 - I2C Master Data"] pub mdr: MDR, #[doc = "0x0c - I2C Master Timer Period"] pub mtpr: MTPR, #[doc = "0x10 - I2C Master Interrupt Mask"] pub mimr: MIMR, #[doc = "0x14 - I2C Master Raw Interrupt Status"] pub mris: MRIS, #[doc = "0x18 - I2C Master Masked Interrupt Status"] pub mmis: MMIS, #[doc = "0x1c - I2C Master Interrupt Clear"] pub micr: MICR, #[doc = "0x20 - I2C Master Configuration"] pub mcr: MCR, #[doc = "0x24 - I2C Master Clock Low Timeout Count"] pub mclkocnt: MCLKOCNT, _reserved10: [u8; 4usize], #[doc = "0x2c - I2C Master Bus Monitor"] pub mbmon: MBMON, #[doc = "0x30 - I2C Master Burst Length"] pub mblen: MBLEN, #[doc = "0x34 - I2C Master Burst Count"] pub mbcnt: MBCNT, _reserved13: [u8; 1992usize], #[doc = "0x800 - I2C Slave Own Address"] pub soar: SOAR, #[doc = "0x804 - I2C Slave Control/Status"] pub scsr: SCSR, #[doc = "0x808 - I2C Slave Data"] pub sdr: SDR, #[doc = "0x80c - I2C Slave Interrupt Mask"] pub simr: SIMR, #[doc = "0x810 - I2C Slave Raw Interrupt Status"] pub sris: SRIS, #[doc = "0x814 - I2C Slave Masked Interrupt Status"] pub smis: SMIS, #[doc = "0x818 - I2C Slave Interrupt Clear"] pub sicr: SICR, #[doc = "0x81c - I2C Slave Own Address 2"] pub soar2: SOAR2, #[doc = "0x820 - I2C Slave ACK Control"] pub sackctl: SACKCTL, _reserved22: [u8; 1756usize], #[doc = "0xf00 - I2C FIFO Data"] pub fifodata: FIFODATA, #[doc = "0xf04 - I2C FIFO Control"] pub fifoctl: FIFOCTL, #[doc = "0xf08 - I2C FIFO Status"] pub fifostatus: FIFOSTATUS, _reserved25: [u8; 180usize], #[doc = "0xfc0 - I2C Peripheral Properties"] pub pp: PP, #[doc = "0xfc4 - I2C Peripheral Configuration"] pub pc: PC, } #[doc = "I2C Master Slave Address"] pub struct MSA { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Slave Address"] pub mod msa; #[doc = "I2C Master Control/Status"] pub struct MCS { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Control/Status"] pub mod mcs; #[doc = "I2C Master Data"] pub struct MDR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Data"] pub mod mdr; #[doc = "I2C Master Timer Period"] pub struct MTPR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Timer Period"] pub mod mtpr; #[doc = "I2C Master Interrupt Mask"] pub struct MIMR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Interrupt Mask"] pub mod mimr; #[doc = "I2C Master Raw Interrupt Status"] pub struct MRIS { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Raw Interrupt Status"] pub mod mris; #[doc = "I2C Master Masked Interrupt Status"] pub struct MMIS { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Masked Interrupt Status"] pub mod mmis; #[doc = "I2C Master Interrupt Clear"] pub struct MICR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Interrupt Clear"] pub mod micr; #[doc = "I2C Master Configuration"] pub struct MCR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Configuration"] pub mod mcr; #[doc = "I2C Master Clock Low Timeout Count"] pub struct MCLKOCNT { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Clock Low Timeout Count"] pub mod mclkocnt; #[doc = "I2C Master Bus Monitor"] pub struct MBMON { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Bus Monitor"] pub mod mbmon; #[doc = "I2C Master Burst Length"] pub struct MBLEN { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Burst Length"] pub mod mblen; #[doc = "I2C Master Burst Count"] pub struct MBCNT { register: vcell::VolatileCell<u32>, } #[doc = "I2C Master Burst Count"] pub mod mbcnt; #[doc = "I2C Slave Own Address"] pub struct SOAR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Own Address"] pub mod soar; #[doc = "I2C Slave Control/Status"] pub struct SCSR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Control/Status"] pub mod scsr; #[doc = "I2C Slave Data"] pub struct SDR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Data"] pub mod sdr; #[doc = "I2C Slave Interrupt Mask"] pub struct SIMR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Interrupt Mask"] pub mod simr; #[doc = "I2C Slave Raw Interrupt Status"] pub struct SRIS { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Raw Interrupt Status"] pub mod sris; #[doc = "I2C Slave Masked Interrupt Status"] pub struct SMIS { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Masked Interrupt Status"] pub mod smis; #[doc = "I2C Slave Interrupt Clear"] pub struct SICR { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Interrupt Clear"] pub mod sicr; #[doc = "I2C Slave Own Address 2"] pub struct SOAR2 { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave Own Address 2"] pub mod soar2; #[doc = "I2C Slave ACK Control"] pub struct SACKCTL { register: vcell::VolatileCell<u32>, } #[doc = "I2C Slave ACK Control"] pub mod sackctl; #[doc = "I2C FIFO Data"] pub struct FIFODATA { register: vcell::VolatileCell<u32>, } #[doc = "I2C FIFO Data"] pub mod fifodata; #[doc = "I2C FIFO Control"] pub struct FIFOCTL { register: vcell::VolatileCell<u32>, } #[doc = "I2C FIFO Control"] pub mod fifoctl; #[doc = "I2C FIFO Status"] pub struct FIFOSTATUS { register: vcell::VolatileCell<u32>, } #[doc = "I2C FIFO Status"] pub mod fifostatus; #[doc = "I2C Peripheral Properties"] pub struct PP { register: vcell::VolatileCell<u32>, } #[doc = "I2C Peripheral Properties"] pub mod pp; #[doc = "I2C Peripheral Configuration"] pub struct PC { register: vcell::VolatileCell<u32>, } #[doc = "I2C Peripheral Configuration"] pub mod pc;