1 // Generated by PeakRDL-renode 2 3 using Antmicro.Renode.Core.Structure.Registers; 4 using Antmicro.Renode.Peripherals.Bus; 5 6 namespace Antmicro.Renode.Peripherals.I3C 7 { 8 public partial class Caliptra_I3C : IProvidesRegisterCollection<DoubleWordRegisterCollection>, IPeripheral, IDoubleWordPeripheral 9 { 10 /// <summary> Register "HCI_VERSION" at 0x0 </summary> 11 protected HciVersionType HciVersion; 12 /// <summary> Register "HC_CONTROL" at 0x4 </summary> 13 protected HcControlType HcControl; 14 /// <summary> Register "CONTROLLER_DEVICE_ADDR" at 0x8 </summary> 15 protected ControllerDeviceAddrType ControllerDeviceAddr; 16 /// <summary> Register "HC_CAPABILITIES" at 0xc </summary> 17 protected HcCapabilitiesType HcCapabilities; 18 /// <summary> Register "RESET_CONTROL" at 0x10 </summary> 19 protected ResetControlType ResetControl; 20 /// <summary> Register "PRESENT_STATE" at 0x14 </summary> 21 protected PresentStateType PresentState; 22 /// <summary> Register "INTR_STATUS" at 0x20 </summary> 23 protected IntrStatusType IntrStatus; 24 /// <summary> Register "INTR_STATUS_ENABLE" at 0x24 </summary> 25 protected IntrStatusEnableType IntrStatusEnable; 26 /// <summary> Register "INTR_SIGNAL_ENABLE" at 0x28 </summary> 27 protected IntrSignalEnableType IntrSignalEnable; 28 /// <summary> Register "INTR_FORCE" at 0x2c </summary> 29 protected IntrForceType IntrForce; 30 /// <summary> Register "DAT_SECTION_OFFSET" at 0x30 </summary> 31 protected DatSectionOffsetType DatSectionOffset; 32 /// <summary> Register "DCT_SECTION_OFFSET" at 0x34 </summary> 33 protected DctSectionOffsetType DctSectionOffset; 34 /// <summary> Register "RING_HEADERS_SECTION_OFFSET" at 0x38 </summary> 35 protected RingHeadersSectionOffsetType RingHeadersSectionOffset; 36 /// <summary> Register "PIO_SECTION_OFFSET" at 0x3c </summary> 37 protected PioSectionOffsetType PioSectionOffset; 38 /// <summary> Register "EXT_CAPS_SECTION_OFFSET" at 0x40 </summary> 39 protected ExtCapsSectionOffsetType ExtCapsSectionOffset; 40 /// <summary> Register "INT_CTRL_CMDS_EN" at 0x4c </summary> 41 protected IntCtrlCmdsEnType IntCtrlCmdsEn; 42 /// <summary> Register "IBI_NOTIFY_CTRL" at 0x58 </summary> 43 protected IbiNotifyCtrlType IbiNotifyCtrl; 44 /// <summary> Register "IBI_DATA_ABORT_CTRL" at 0x5c </summary> 45 protected IbiDataAbortCtrlType IbiDataAbortCtrl; 46 /// <summary> Register "DEV_CTX_BASE_LO" at 0x60 </summary> 47 protected DevCtxBaseLoType DevCtxBaseLo; 48 /// <summary> Register "DEV_CTX_BASE_HI" at 0x64 </summary> 49 protected DevCtxBaseHiType DevCtxBaseHi; 50 /// <summary> Register "DEV_CTX_SG" at 0x68 </summary> 51 protected DevCtxSgType DevCtxSg; 52 /// <summary> Register "COMMAND_PORT" at 0x80 </summary> 53 protected CommandPortType CommandPort; 54 /// <summary> Register "RESPONSE_PORT" at 0x84 </summary> 55 protected ResponsePortType ResponsePort; 56 /// <summary> Register "TX_DATA_PORT" at 0x88 and Register "RX_DATA_PORT" at 0x88 </summary> 57 protected PIOTxRxDataPortType PIOTxRxDataPort; 58 /// <summary> Register "IBI_PORT" at 0x8c </summary> 59 protected PIOIbiPortType PIOIbiPort; 60 /// <summary> Register "QUEUE_THLD_CTRL" at 0x90 </summary> 61 protected PIOQueueThldCtrlType PIOQueueThldCtrl; 62 /// <summary> Register "DATA_BUFFER_THLD_CTRL" at 0x94 </summary> 63 protected PIODataBufferThldCtrlType PIODataBufferThldCtrl; 64 /// <summary> Register "QUEUE_SIZE" at 0x98 </summary> 65 protected PIOQueueSizeType PIOQueueSize; 66 /// <summary> Register "ALT_QUEUE_SIZE" at 0x9c </summary> 67 protected AltQueueSizeType AltQueueSize; 68 /// <summary> Register "PIO_INTR_STATUS" at 0xa0 </summary> 69 protected PioIntrStatusType PioIntrStatus; 70 /// <summary> Register "PIO_INTR_STATUS_ENABLE" at 0xa4 </summary> 71 protected PioIntrStatusEnableType PioIntrStatusEnable; 72 /// <summary> Register "PIO_INTR_SIGNAL_ENABLE" at 0xa8 </summary> 73 protected PioIntrSignalEnableType PioIntrSignalEnable; 74 /// <summary> Register "PIO_INTR_FORCE" at 0xac </summary> 75 protected PioIntrForceType PioIntrForce; 76 /// <summary> Register "PIO_CONTROL" at 0xb0 </summary> 77 protected PioControlType PioControl; 78 /// <summary> Register "EXTCAP_HEADER" at 0x100 </summary> 79 protected SecureFirmwareRecoveryInterfaceExtcapHeaderType SecureFirmwareRecoveryInterfaceExtcapHeader; 80 /// <summary> Register "PROT_CAP_0" at 0x104 </summary> 81 protected ProtCap0Type ProtCap0; 82 /// <summary> Register "PROT_CAP_1" at 0x108 </summary> 83 protected ProtCap1Type ProtCap1; 84 /// <summary> Register "PROT_CAP_2" at 0x10c </summary> 85 protected ProtCap2Type ProtCap2; 86 /// <summary> Register "PROT_CAP_3" at 0x110 </summary> 87 protected ProtCap3Type ProtCap3; 88 /// <summary> Register "DEVICE_ID_0" at 0x114 </summary> 89 protected DeviceId0Type DeviceId0; 90 /// <summary> Register "DEVICE_ID_1" at 0x118 </summary> 91 protected DeviceId1Type DeviceId1; 92 /// <summary> Register "DEVICE_ID_2" at 0x11c </summary> 93 protected DeviceId2Type DeviceId2; 94 /// <summary> Register "DEVICE_ID_3" at 0x120 </summary> 95 protected DeviceId3Type DeviceId3; 96 /// <summary> Register "DEVICE_ID_4" at 0x124 </summary> 97 protected DeviceId4Type DeviceId4; 98 /// <summary> Register "DEVICE_ID_5" at 0x128 </summary> 99 protected DeviceId5Type DeviceId5; 100 /// <summary> Register "DEVICE_ID_RESERVED" at 0x12c </summary> 101 protected DeviceIdReservedType DeviceIdReserved; 102 /// <summary> Register "DEVICE_STATUS_0" at 0x130 </summary> 103 protected DeviceStatus0Type DeviceStatus0; 104 /// <summary> Register "DEVICE_STATUS_1" at 0x134 </summary> 105 protected DeviceStatus1Type DeviceStatus1; 106 /// <summary> Register "DEVICE_RESET" at 0x138 </summary> 107 protected DeviceResetType DeviceReset; 108 /// <summary> Register "RECOVERY_CTRL" at 0x13c </summary> 109 protected RecoveryCtrlType RecoveryCtrl; 110 /// <summary> Register "RECOVERY_STATUS" at 0x140 </summary> 111 protected RecoveryStatusType RecoveryStatus; 112 /// <summary> Register "HW_STATUS" at 0x144 </summary> 113 protected HwStatusType HwStatus; 114 /// <summary> Register "INDIRECT_FIFO_CTRL_0" at 0x148 </summary> 115 protected IndirectFifoCtrl0Type IndirectFifoCtrl0; 116 /// <summary> Register "INDIRECT_FIFO_CTRL_1" at 0x14c </summary> 117 protected IndirectFifoCtrl1Type IndirectFifoCtrl1; 118 /// <summary> Register "INDIRECT_FIFO_STATUS_0" at 0x150 </summary> 119 protected IndirectFifoStatus0Type IndirectFifoStatus0; 120 /// <summary> Register "INDIRECT_FIFO_STATUS_1" at 0x154 </summary> 121 protected IndirectFifoStatus1Type IndirectFifoStatus1; 122 /// <summary> Register "INDIRECT_FIFO_STATUS_2" at 0x158 </summary> 123 protected IndirectFifoStatus2Type IndirectFifoStatus2; 124 /// <summary> Register "INDIRECT_FIFO_STATUS_3" at 0x15c </summary> 125 protected IndirectFifoStatus3Type IndirectFifoStatus3; 126 /// <summary> Register "INDIRECT_FIFO_STATUS_4" at 0x160 </summary> 127 protected IndirectFifoStatus4Type IndirectFifoStatus4; 128 /// <summary> Register "INDIRECT_FIFO_RESERVED" at 0x164 </summary> 129 protected IndirectFifoReservedType IndirectFifoReserved; 130 /// <summary> Register "INDIRECT_FIFO_DATA" at 0x168 </summary> 131 protected IndirectFifoDataType IndirectFifoData; 132 /// <summary> Register "EXTCAP_HEADER" at 0x180 </summary> 133 protected StandbyControllerModeRegistersExtcapHeaderType StandbyControllerModeRegistersExtcapHeader; 134 /// <summary> Register "STBY_CR_CONTROL" at 0x184 </summary> 135 protected StbyCrControlType StbyCrControl; 136 /// <summary> Register "STBY_CR_DEVICE_ADDR" at 0x188 </summary> 137 protected StbyCrDeviceAddrType StbyCrDeviceAddr; 138 /// <summary> Register "STBY_CR_CAPABILITIES" at 0x18c </summary> 139 protected StbyCrCapabilitiesType StbyCrCapabilities; 140 /// <summary> Register "__rsvd_0" at 0x190 </summary> 141 protected Rsvd0Type Rsvd0; 142 /// <summary> Register "STBY_CR_STATUS" at 0x194 </summary> 143 protected StbyCrStatusType StbyCrStatus; 144 /// <summary> Register "STBY_CR_DEVICE_CHAR" at 0x198 </summary> 145 protected StbyCrDeviceCharType StbyCrDeviceChar; 146 /// <summary> Register "STBY_CR_DEVICE_PID_LO" at 0x19c </summary> 147 protected StbyCrDevicePidLoType StbyCrDevicePidLo; 148 /// <summary> Register "STBY_CR_INTR_STATUS" at 0x1a0 </summary> 149 protected StbyCrIntrStatusType StbyCrIntrStatus; 150 /// <summary> Register "__rsvd_1" at 0x1a4 </summary> 151 protected Rsvd1Type Rsvd1; 152 /// <summary> Register "STBY_CR_INTR_SIGNAL_ENABLE" at 0x1a8 </summary> 153 protected StbyCrIntrSignalEnableType StbyCrIntrSignalEnable; 154 /// <summary> Register "STBY_CR_INTR_FORCE" at 0x1ac </summary> 155 protected StbyCrIntrForceType StbyCrIntrForce; 156 /// <summary> Register "STBY_CR_CCC_CONFIG_GETCAPS" at 0x1b0 </summary> 157 protected StbyCrCccConfigGetcapsType StbyCrCccConfigGetcaps; 158 /// <summary> Register "STBY_CR_CCC_CONFIG_RSTACT_PARAMS" at 0x1b4 </summary> 159 protected StbyCrCccConfigRstactParamsType StbyCrCccConfigRstactParams; 160 /// <summary> Register "STBY_CR_VIRT_DEVICE_ADDR" at 0x1b8 </summary> 161 protected StbyCrVirtDeviceAddrType StbyCrVirtDeviceAddr; 162 /// <summary> Register "__rsvd_3" at 0x1bc </summary> 163 protected Rsvd3Type Rsvd3; 164 /// <summary> Register "EXTCAP_HEADER" at 0x1c0 </summary> 165 protected TargetTransactionInterfaceRegistersExtcapHeaderType TargetTransactionInterfaceRegistersExtcapHeader; 166 /// <summary> Register "CONTROL" at 0x1c4 </summary> 167 protected ControlType Control; 168 /// <summary> Register "STATUS" at 0x1c8 </summary> 169 protected StatusType Status; 170 /// <summary> Register "RESET_CONTROL" at 0x1cc </summary> 171 protected TargetTransactionInterfaceResetControlType TargetTransactionInterfaceResetControl; 172 /// <summary> Register "INTERRUPT_STATUS" at 0x1d0 </summary> 173 protected InterruptStatusType InterruptStatus; 174 /// <summary> Register "INTERRUPT_ENABLE" at 0x1d4 </summary> 175 protected InterruptEnableType InterruptEnable; 176 /// <summary> Register "INTERRUPT_FORCE" at 0x1d8 </summary> 177 protected InterruptForceType InterruptForce; 178 /// <summary> Register "RX_DESC_QUEUE_PORT" at 0x1dc </summary> 179 protected RxDescQueuePortType RxDescQueuePort; 180 /// <summary> Register "RX_DATA_PORT" at 0x1e0 </summary> 181 protected TargetTransactionInterfaceRxDataPortType TargetTransactionInterfaceRxDataPort; 182 /// <summary> Register "TX_DESC_QUEUE_PORT" at 0x1e4 </summary> 183 protected TxDescQueuePortType TxDescQueuePort; 184 /// <summary> Register "TX_DATA_PORT" at 0x1e8 </summary> 185 protected TargetTransactionInterfaceTxDataPortType TargetTransactionInterfaceTxDataPort; 186 /// <summary> Register "IBI_PORT" at 0x1ec </summary> 187 protected TargetTransactionInterfaceIbiPortType TargetTransactionInterfaceIbiPort; 188 /// <summary> Register "QUEUE_SIZE" at 0x1f0 </summary> 189 protected TargetTransactionInterfaceQueueSizeType TargetTransactionInterfaceQueueSize; 190 /// <summary> Register "IBI_QUEUE_SIZE" at 0x1f4 </summary> 191 protected IbiQueueSizeType IbiQueueSize; 192 /// <summary> Register "QUEUE_THLD_CTRL" at 0x1f8 </summary> 193 protected TargetTransactionInterfaceQueueThldCtrlType TargetTransactionInterfaceQueueThldCtrl; 194 /// <summary> Register "DATA_BUFFER_THLD_CTRL" at 0x1fc </summary> 195 protected TargetTransactionInterfaceDataBufferThldCtrlType TargetTransactionInterfaceDataBufferThldCtrl; 196 /// <summary> Register "EXTCAP_HEADER" at 0x200 </summary> 197 protected SoCManagementInterfaceRegistersExtcapHeaderType SoCManagementInterfaceRegistersExtcapHeader; 198 /// <summary> Register "SOC_MGMT_CONTROL" at 0x204 </summary> 199 protected SocMgmtControlType SocMgmtControl; 200 /// <summary> Register "SOC_MGMT_STATUS" at 0x208 </summary> 201 protected SocMgmtStatusType SocMgmtStatus; 202 /// <summary> Register "SOC_MGMT_RSVD_0" at 0x20c </summary> 203 protected SocMgmtRsvd0Type SocMgmtRsvd0; 204 /// <summary> Register "SOC_MGMT_RSVD_1" at 0x210 </summary> 205 protected SocMgmtRsvd1Type SocMgmtRsvd1; 206 /// <summary> Register "SOC_MGMT_RSVD_2" at 0x214 </summary> 207 protected SocMgmtRsvd2Type SocMgmtRsvd2; 208 /// <summary> Register "SOC_MGMT_RSVD_3" at 0x218 </summary> 209 protected SocMgmtRsvd3Type SocMgmtRsvd3; 210 /// <summary> Register "SOC_PAD_CONF" at 0x21c </summary> 211 protected SocPadConfType SocPadConf; 212 /// <summary> Register "SOC_PAD_ATTR" at 0x220 </summary> 213 protected SocPadAttrType SocPadAttr; 214 /// <summary> Register "SOC_MGMT_FEATURE_2" at 0x224 </summary> 215 protected SocMgmtFeature2Type SocMgmtFeature2; 216 /// <summary> Register "SOC_MGMT_FEATURE_3" at 0x228 </summary> 217 protected SocMgmtFeature3Type SocMgmtFeature3; 218 /// <summary> Register "T_R_REG" at 0x22c </summary> 219 protected TRRegType TRReg; 220 /// <summary> Register "T_F_REG" at 0x230 </summary> 221 protected TFRegType TFReg; 222 /// <summary> Register "T_SU_DAT_REG" at 0x234 </summary> 223 protected TSuDatRegType TSuDatReg; 224 /// <summary> Register "T_HD_DAT_REG" at 0x238 </summary> 225 protected THdDatRegType THdDatReg; 226 /// <summary> Register "T_HIGH_REG" at 0x23c </summary> 227 protected THighRegType THighReg; 228 /// <summary> Register "T_LOW_REG" at 0x240 </summary> 229 protected TLowRegType TLowReg; 230 /// <summary> Register "T_HD_STA_REG" at 0x244 </summary> 231 protected THdStaRegType THdStaReg; 232 /// <summary> Register "T_SU_STA_REG" at 0x248 </summary> 233 protected TSuStaRegType TSuStaReg; 234 /// <summary> Register "T_SU_STO_REG" at 0x24c </summary> 235 protected TSuStoRegType TSuStoReg; 236 /// <summary> Register "T_FREE_REG" at 0x250 </summary> 237 protected TFreeRegType TFreeReg; 238 /// <summary> Register "T_AVAL_REG" at 0x254 </summary> 239 protected TAvalRegType TAvalReg; 240 /// <summary> Register "T_IDLE_REG" at 0x258 </summary> 241 protected TIdleRegType TIdleReg; 242 /// <summary> Register "EXTCAP_HEADER" at 0x260 </summary> 243 protected ControllerConfigRegistersExtcapHeaderType ControllerConfigRegistersExtcapHeader; 244 /// <summary> Register "CONTROLLER_CONFIG" at 0x264 </summary> 245 protected ControllerConfigType ControllerConfig; 246 /// <summary> Register "TERMINATION_EXTCAP_HEADER" at 0x268 </summary> 247 protected TerminationExtcapHeaderType TerminationExtcapHeader; 248 /// <summary> Memory "DAT" at 0x400 </summary> 249 protected Dat_DatMemoryContainer Dat; 250 /// <summary> Memory "DCT" at 0x800 </summary> 251 protected Dct_DctMemoryContainer Dct; 252 253 public DoubleWordRegisterCollection RegistersCollection { get; } 254 Caliptra_I3C()255 public Caliptra_I3C() 256 { 257 RegistersCollection = new DoubleWordRegisterCollection(this); 258 HciVersion = new HciVersionType(this); 259 HcControl = new HcControlType(this); 260 ControllerDeviceAddr = new ControllerDeviceAddrType(this); 261 HcCapabilities = new HcCapabilitiesType(this); 262 ResetControl = new ResetControlType(this); 263 PresentState = new PresentStateType(this); 264 IntrStatus = new IntrStatusType(this); 265 IntrStatusEnable = new IntrStatusEnableType(this); 266 IntrSignalEnable = new IntrSignalEnableType(this); 267 IntrForce = new IntrForceType(this); 268 DatSectionOffset = new DatSectionOffsetType(this); 269 DctSectionOffset = new DctSectionOffsetType(this); 270 RingHeadersSectionOffset = new RingHeadersSectionOffsetType(this); 271 PioSectionOffset = new PioSectionOffsetType(this); 272 ExtCapsSectionOffset = new ExtCapsSectionOffsetType(this); 273 IntCtrlCmdsEn = new IntCtrlCmdsEnType(this); 274 IbiNotifyCtrl = new IbiNotifyCtrlType(this); 275 IbiDataAbortCtrl = new IbiDataAbortCtrlType(this); 276 DevCtxBaseLo = new DevCtxBaseLoType(this); 277 DevCtxBaseHi = new DevCtxBaseHiType(this); 278 DevCtxSg = new DevCtxSgType(this); 279 CommandPort = new CommandPortType(this); 280 ResponsePort = new ResponsePortType(this); 281 TargetTransactionInterfaceTxDataPort = new TargetTransactionInterfaceTxDataPortType(this); 282 PIOIbiPort = new PIOIbiPortType(this); 283 PIOQueueThldCtrl = new PIOQueueThldCtrlType(this); 284 PIODataBufferThldCtrl = new PIODataBufferThldCtrlType(this); 285 PIOQueueSize = new PIOQueueSizeType(this); 286 AltQueueSize = new AltQueueSizeType(this); 287 PioIntrStatus = new PioIntrStatusType(this); 288 PioIntrStatusEnable = new PioIntrStatusEnableType(this); 289 PioIntrSignalEnable = new PioIntrSignalEnableType(this); 290 PioIntrForce = new PioIntrForceType(this); 291 PioControl = new PioControlType(this); 292 SecureFirmwareRecoveryInterfaceExtcapHeader = new SecureFirmwareRecoveryInterfaceExtcapHeaderType(this); 293 ProtCap0 = new ProtCap0Type(this); 294 ProtCap1 = new ProtCap1Type(this); 295 ProtCap2 = new ProtCap2Type(this); 296 ProtCap3 = new ProtCap3Type(this); 297 DeviceId0 = new DeviceId0Type(this); 298 DeviceId1 = new DeviceId1Type(this); 299 DeviceId2 = new DeviceId2Type(this); 300 DeviceId3 = new DeviceId3Type(this); 301 DeviceId4 = new DeviceId4Type(this); 302 DeviceId5 = new DeviceId5Type(this); 303 DeviceIdReserved = new DeviceIdReservedType(this); 304 DeviceStatus0 = new DeviceStatus0Type(this); 305 DeviceStatus1 = new DeviceStatus1Type(this); 306 DeviceReset = new DeviceResetType(this); 307 RecoveryCtrl = new RecoveryCtrlType(this); 308 RecoveryStatus = new RecoveryStatusType(this); 309 HwStatus = new HwStatusType(this); 310 IndirectFifoCtrl0 = new IndirectFifoCtrl0Type(this); 311 IndirectFifoCtrl1 = new IndirectFifoCtrl1Type(this); 312 IndirectFifoStatus0 = new IndirectFifoStatus0Type(this); 313 IndirectFifoStatus1 = new IndirectFifoStatus1Type(this); 314 IndirectFifoStatus2 = new IndirectFifoStatus2Type(this); 315 IndirectFifoStatus3 = new IndirectFifoStatus3Type(this); 316 IndirectFifoStatus4 = new IndirectFifoStatus4Type(this); 317 IndirectFifoReserved = new IndirectFifoReservedType(this); 318 IndirectFifoData = new IndirectFifoDataType(this); 319 StandbyControllerModeRegistersExtcapHeader = new StandbyControllerModeRegistersExtcapHeaderType(this); 320 StbyCrControl = new StbyCrControlType(this); 321 StbyCrDeviceAddr = new StbyCrDeviceAddrType(this); 322 StbyCrCapabilities = new StbyCrCapabilitiesType(this); 323 Rsvd0 = new Rsvd0Type(this); 324 StbyCrStatus = new StbyCrStatusType(this); 325 StbyCrDeviceChar = new StbyCrDeviceCharType(this); 326 StbyCrDevicePidLo = new StbyCrDevicePidLoType(this); 327 StbyCrIntrStatus = new StbyCrIntrStatusType(this); 328 Rsvd1 = new Rsvd1Type(this); 329 StbyCrIntrSignalEnable = new StbyCrIntrSignalEnableType(this); 330 StbyCrIntrForce = new StbyCrIntrForceType(this); 331 StbyCrCccConfigGetcaps = new StbyCrCccConfigGetcapsType(this); 332 StbyCrCccConfigRstactParams = new StbyCrCccConfigRstactParamsType(this); 333 StbyCrVirtDeviceAddr = new StbyCrVirtDeviceAddrType(this); 334 Rsvd3 = new Rsvd3Type(this); 335 TargetTransactionInterfaceRegistersExtcapHeader = new TargetTransactionInterfaceRegistersExtcapHeaderType(this); 336 Control = new ControlType(this); 337 Status = new StatusType(this); 338 TargetTransactionInterfaceResetControl = new TargetTransactionInterfaceResetControlType(this); 339 InterruptStatus = new InterruptStatusType(this); 340 InterruptEnable = new InterruptEnableType(this); 341 InterruptForce = new InterruptForceType(this); 342 RxDescQueuePort = new RxDescQueuePortType(this); 343 TxDescQueuePort = new TxDescQueuePortType(this); 344 PIOTxRxDataPort = new PIOTxRxDataPortType(this); 345 TargetTransactionInterfaceIbiPort = new TargetTransactionInterfaceIbiPortType(this); 346 TargetTransactionInterfaceQueueSize = new TargetTransactionInterfaceQueueSizeType(this); 347 IbiQueueSize = new IbiQueueSizeType(this); 348 TargetTransactionInterfaceQueueThldCtrl = new TargetTransactionInterfaceQueueThldCtrlType(this); 349 TargetTransactionInterfaceDataBufferThldCtrl = new TargetTransactionInterfaceDataBufferThldCtrlType(this); 350 SoCManagementInterfaceRegistersExtcapHeader = new SoCManagementInterfaceRegistersExtcapHeaderType(this); 351 SocMgmtControl = new SocMgmtControlType(this); 352 SocMgmtStatus = new SocMgmtStatusType(this); 353 SocMgmtRsvd0 = new SocMgmtRsvd0Type(this); 354 SocMgmtRsvd1 = new SocMgmtRsvd1Type(this); 355 SocMgmtRsvd2 = new SocMgmtRsvd2Type(this); 356 SocMgmtRsvd3 = new SocMgmtRsvd3Type(this); 357 SocPadConf = new SocPadConfType(this); 358 SocPadAttr = new SocPadAttrType(this); 359 SocMgmtFeature2 = new SocMgmtFeature2Type(this); 360 SocMgmtFeature3 = new SocMgmtFeature3Type(this); 361 TRReg = new TRRegType(this); 362 TFReg = new TFRegType(this); 363 TSuDatReg = new TSuDatRegType(this); 364 THdDatReg = new THdDatRegType(this); 365 THighReg = new THighRegType(this); 366 TLowReg = new TLowRegType(this); 367 THdStaReg = new THdStaRegType(this); 368 TSuStaReg = new TSuStaRegType(this); 369 TSuStoReg = new TSuStoRegType(this); 370 TFreeReg = new TFreeRegType(this); 371 TAvalReg = new TAvalRegType(this); 372 TIdleReg = new TIdleRegType(this); 373 ControllerConfigRegistersExtcapHeader = new ControllerConfigRegistersExtcapHeaderType(this); 374 ControllerConfig = new ControllerConfigType(this); 375 TerminationExtcapHeader = new TerminationExtcapHeaderType(this); 376 Dat = new Dat_DatMemoryContainer(); 377 Dct = new Dct_DctMemoryContainer(); 378 this.Init(); 379 } 380 Init()381 partial void Init(); 382 Reset()383 partial void Reset(); 384 IPeripheral.Reset()385 void IPeripheral.Reset() 386 { 387 this.Reset(); 388 RegistersCollection.Reset(); 389 } 390 IDoubleWordPeripheral.ReadDoubleWord(long offset)391 uint IDoubleWordPeripheral.ReadDoubleWord(long offset) 392 { 393 if(offset >= 1024 && offset < 1024L + Dat.Size) 394 { 395 return Dat.ReadDoubleWord(offset - 1024); 396 } 397 if(offset >= 2048 && offset < 2048L + Dct.Size) 398 { 399 return Dct.ReadDoubleWord(offset - 2048); 400 } 401 return RegistersCollection.Read(offset); 402 } 403 IDoubleWordPeripheral.WriteDoubleWord(long offset, uint value)404 void IDoubleWordPeripheral.WriteDoubleWord(long offset, uint value) 405 { 406 if(offset >= 1024 && offset < 1024L + Dat.Size) 407 { 408 Dat.WriteDoubleWord(offset - 1024, value); 409 return; 410 } 411 if(offset >= 2048 && offset < 2048L + Dct.Size) 412 { 413 Dct.WriteDoubleWord(offset - 2048, value); 414 return; 415 } 416 RegistersCollection.Write(offset, value); 417 } 418 419 public struct HciVersionType 420 { 421 /// <summary> Field "VERSION" at 0x0, width: 32 bits </summary> 422 public IValueRegisterField VERSION; 423 HciVersionTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.HciVersionType424 public HciVersionType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 425 { 426 parent.RegistersCollection.DefineRegister(0, 4294967295, true) 427 .WithValueField(0, 32, out VERSION, mode: FieldMode.Read, name: "VERSION"); 428 } 429 } 430 431 public struct HcControlType 432 { 433 /// <summary> Field "IBA_INCLUDE" at 0x0, width: 1 bits </summary> 434 public IFlagRegisterField IBA_INCLUDE; 435 /// <summary> Field "AUTOCMD_DATA_RPT" at 0x3, width: 1 bits </summary> 436 public IFlagRegisterField AUTOCMD_DATA_RPT; 437 /// <summary> Field "DATA_BYTE_ORDER_MODE" at 0x4, width: 1 bits </summary> 438 public IFlagRegisterField DATA_BYTE_ORDER_MODE; 439 /// <summary> Field "MODE_SELECTOR" at 0x6, width: 1 bits </summary> 440 public IFlagRegisterField MODE_SELECTOR; 441 /// <summary> Field "I2C_DEV_PRESENT" at 0x7, width: 1 bits </summary> 442 public IFlagRegisterField I2C_DEV_PRESENT; 443 /// <summary> Field "HOT_JOIN_CTRL" at 0x8, width: 1 bits </summary> 444 public IFlagRegisterField HOT_JOIN_CTRL; 445 /// <summary> Field "HALT_ON_CMD_SEQ_TIMEOUT" at 0xc, width: 1 bits </summary> 446 public IFlagRegisterField HALT_ON_CMD_SEQ_TIMEOUT; 447 /// <summary> Field "ABORT" at 0x1d, width: 1 bits </summary> 448 public IFlagRegisterField ABORT; 449 /// <summary> Field "RESUME" at 0x1e, width: 1 bits </summary> 450 public IFlagRegisterField RESUME; 451 /// <summary> Field "BUS_ENABLE" at 0x1f, width: 1 bits </summary> 452 public IFlagRegisterField BUS_ENABLE; 453 HcControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.HcControlType454 public HcControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 455 { 456 parent.RegistersCollection.DefineRegister(4, 64, true) 457 .WithFlag(0, out IBA_INCLUDE, name: "IBA_INCLUDE") 458 .WithFlag(3, out AUTOCMD_DATA_RPT, mode: FieldMode.Read, name: "AUTOCMD_DATA_RPT") 459 .WithFlag(4, out DATA_BYTE_ORDER_MODE, mode: FieldMode.Read, name: "DATA_BYTE_ORDER_MODE") 460 .WithFlag(6, out MODE_SELECTOR, mode: FieldMode.Read, name: "MODE_SELECTOR") 461 .WithFlag(7, out I2C_DEV_PRESENT, name: "I2C_DEV_PRESENT") 462 .WithFlag(8, out HOT_JOIN_CTRL, name: "HOT_JOIN_CTRL") 463 .WithFlag(12, out HALT_ON_CMD_SEQ_TIMEOUT, name: "HALT_ON_CMD_SEQ_TIMEOUT") 464 .WithFlag(29, out ABORT, name: "ABORT") 465 .WithFlag(30, out RESUME, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RESUME") 466 .WithFlag(31, out BUS_ENABLE, name: "BUS_ENABLE"); 467 } 468 } 469 470 public struct ControllerDeviceAddrType 471 { 472 /// <summary> Field "DYNAMIC_ADDR" at 0x10, width: 7 bits </summary> 473 public IValueRegisterField DYNAMIC_ADDR; 474 /// <summary> Field "DYNAMIC_ADDR_VALID" at 0x1f, width: 1 bits </summary> 475 public IFlagRegisterField DYNAMIC_ADDR_VALID; 476 ControllerDeviceAddrTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ControllerDeviceAddrType477 public ControllerDeviceAddrType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 478 { 479 parent.RegistersCollection.DefineRegister(8, 0, true) 480 .WithValueField(16, 7, out DYNAMIC_ADDR, name: "DYNAMIC_ADDR") 481 .WithFlag(31, out DYNAMIC_ADDR_VALID, name: "DYNAMIC_ADDR_VALID"); 482 } 483 } 484 485 public struct ResetControlType 486 { 487 public IFlagRegisterField SOFT_RST; 488 public IFlagRegisterField CMD_QUEUE_RST; 489 public IFlagRegisterField RESP_QUEUE_RST; 490 public IFlagRegisterField TX_FIFO_RST; 491 public IFlagRegisterField RX_FIFO_RST; 492 public IFlagRegisterField IBI_QUEUE_RST; 493 ResetControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ResetControlType494 public ResetControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 495 { 496 parent.RegistersCollection.DefineRegister(16, 0) 497 .WithFlag(0, out SOFT_RST, name: "SOFT_RST") 498 .WithFlag(1, out CMD_QUEUE_RST, name: "CMD_QUEUE_RST") 499 .WithFlag(2, out RESP_QUEUE_RST, name: "RESP_QUEUE_RST") 500 .WithFlag(3, out TX_FIFO_RST, name: "TX_FIFO_RST") 501 .WithFlag(4, out RX_FIFO_RST, name: "RX_FIFO_RST") 502 .WithFlag(5, out IBI_QUEUE_RST, name: "IBI_QUEUE_RST"); 503 } 504 } 505 506 public struct HcCapabilitiesType 507 { 508 /// <summary> Field "COMBO_COMMAND" at 0x2, width: 1 bits </summary> 509 public IFlagRegisterField COMBO_COMMAND; 510 /// <summary> Field "AUTO_COMMAND" at 0x3, width: 1 bits </summary> 511 public IFlagRegisterField AUTO_COMMAND; 512 /// <summary> Field "STANDBY_CR_CAP" at 0x5, width: 1 bits </summary> 513 public IFlagRegisterField STANDBY_CR_CAP; 514 /// <summary> Field "HDR_DDR_EN" at 0x6, width: 1 bits </summary> 515 public IFlagRegisterField HDR_DDR_EN; 516 /// <summary> Field "HDR_TS_EN" at 0x7, width: 1 bits </summary> 517 public IFlagRegisterField HDR_TS_EN; 518 /// <summary> Field "CMD_CCC_DEFBYTE" at 0xa, width: 1 bits </summary> 519 public IFlagRegisterField CMD_CCC_DEFBYTE; 520 /// <summary> Field "IBI_DATA_ABORT_EN" at 0xb, width: 1 bits </summary> 521 public IFlagRegisterField IBI_DATA_ABORT_EN; 522 /// <summary> Field "IBI_CREDIT_COUNT_EN" at 0xc, width: 1 bits </summary> 523 public IFlagRegisterField IBI_CREDIT_COUNT_EN; 524 /// <summary> Field "SCHEDULED_COMMANDS_EN" at 0xd, width: 1 bits </summary> 525 public IFlagRegisterField SCHEDULED_COMMANDS_EN; 526 /// <summary> Field "CMD_SIZE" at 0x14, width: 2 bits </summary> 527 public IValueRegisterField CMD_SIZE; 528 /// <summary> Field "SG_CAPABILITY_CR_EN" at 0x1c, width: 1 bits </summary> 529 public IFlagRegisterField SG_CAPABILITY_CR_EN; 530 /// <summary> Field "SG_CAPABILITY_IBI_EN" at 0x1d, width: 1 bits </summary> 531 public IFlagRegisterField SG_CAPABILITY_IBI_EN; 532 /// <summary> Field "SG_CAPABILITY_DC_EN" at 0x1e, width: 1 bits </summary> 533 public IFlagRegisterField SG_CAPABILITY_DC_EN; 534 HcCapabilitiesTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.HcCapabilitiesType535 public HcCapabilitiesType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 536 { 537 parent.RegistersCollection.DefineRegister(12, 1024, true) 538 .WithFlag(2, out COMBO_COMMAND, mode: FieldMode.Read, name: "COMBO_COMMAND") 539 .WithFlag(3, out AUTO_COMMAND, mode: FieldMode.Read, name: "AUTO_COMMAND") 540 .WithFlag(5, out STANDBY_CR_CAP, mode: FieldMode.Read, name: "STANDBY_CR_CAP") 541 .WithFlag(6, out HDR_DDR_EN, mode: FieldMode.Read, name: "HDR_DDR_EN") 542 .WithFlag(7, out HDR_TS_EN, mode: FieldMode.Read, name: "HDR_TS_EN") 543 .WithFlag(10, out CMD_CCC_DEFBYTE, mode: FieldMode.Read, name: "CMD_CCC_DEFBYTE") 544 .WithFlag(11, out IBI_DATA_ABORT_EN, mode: FieldMode.Read, name: "IBI_DATA_ABORT_EN") 545 .WithFlag(12, out IBI_CREDIT_COUNT_EN, mode: FieldMode.Read, name: "IBI_CREDIT_COUNT_EN") 546 .WithFlag(13, out SCHEDULED_COMMANDS_EN, mode: FieldMode.Read, name: "SCHEDULED_COMMANDS_EN") 547 .WithValueField(20, 2, out CMD_SIZE, mode: FieldMode.Read, name: "CMD_SIZE") 548 .WithFlag(28, out SG_CAPABILITY_CR_EN, mode: FieldMode.Read, name: "SG_CAPABILITY_CR_EN") 549 .WithFlag(29, out SG_CAPABILITY_IBI_EN, mode: FieldMode.Read, name: "SG_CAPABILITY_IBI_EN") 550 .WithFlag(30, out SG_CAPABILITY_DC_EN, mode: FieldMode.Read, name: "SG_CAPABILITY_DC_EN"); 551 } 552 } 553 554 public struct TargetTransactionInterfaceResetControlType 555 { 556 /// <summary> Field "SOFT_RST" at 0x0, width: 1 bits </summary> 557 public IFlagRegisterField SOFT_RST; 558 /// <summary> Field "TX_DESC_RST" at 0x1, width: 1 bits </summary> 559 public IFlagRegisterField TX_DESC_RST; 560 /// <summary> Field "RX_DESC_RST" at 0x2, width: 1 bits </summary> 561 public IFlagRegisterField RX_DESC_RST; 562 /// <summary> Field "TX_DATA_RST" at 0x3, width: 1 bits </summary> 563 public IFlagRegisterField TX_DATA_RST; 564 /// <summary> Field "RX_DATA_RST" at 0x4, width: 1 bits </summary> 565 public IFlagRegisterField RX_DATA_RST; 566 /// <summary> Field "IBI_QUEUE_RST" at 0x5, width: 1 bits </summary> 567 public IFlagRegisterField IBI_QUEUE_RST; 568 TargetTransactionInterfaceResetControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceResetControlType569 public TargetTransactionInterfaceResetControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 570 { 571 parent.RegistersCollection.DefineRegister(460, 0, true) 572 .WithFlag(0, out SOFT_RST, name: "SOFT_RST") 573 .WithFlag(1, out TX_DESC_RST, name: "TX_DESC_RST") 574 .WithFlag(2, out RX_DESC_RST, name: "RX_DESC_RST") 575 .WithFlag(3, out TX_DATA_RST, name: "TX_DATA_RST") 576 .WithFlag(4, out RX_DATA_RST, name: "RX_DATA_RST") 577 .WithFlag(5, out IBI_QUEUE_RST, name: "IBI_QUEUE_RST"); 578 } 579 } 580 581 public struct PresentStateType 582 { 583 /// <summary> Field "AC_CURRENT_OWN" at 0x2, width: 1 bits </summary> 584 public IFlagRegisterField AC_CURRENT_OWN; 585 PresentStateTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PresentStateType586 public PresentStateType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 587 { 588 parent.RegistersCollection.DefineRegister(20, 0, true) 589 .WithFlag(2, out AC_CURRENT_OWN, mode: FieldMode.Read, name: "AC_CURRENT_OWN"); 590 } 591 } 592 593 public struct IntrStatusType 594 { 595 /// <summary> Field "HC_INTERNAL_ERR_STAT" at 0xa, width: 1 bits </summary> 596 public IFlagRegisterField HC_INTERNAL_ERR_STAT; 597 /// <summary> Field "HC_SEQ_CANCEL_STAT" at 0xb, width: 1 bits </summary> 598 public IFlagRegisterField HC_SEQ_CANCEL_STAT; 599 /// <summary> Field "HC_WARN_CMD_SEQ_STALL_STAT" at 0xc, width: 1 bits </summary> 600 public IFlagRegisterField HC_WARN_CMD_SEQ_STALL_STAT; 601 /// <summary> Field "HC_ERR_CMD_SEQ_TIMEOUT_STAT" at 0xd, width: 1 bits </summary> 602 public IFlagRegisterField HC_ERR_CMD_SEQ_TIMEOUT_STAT; 603 /// <summary> Field "SCHED_CMD_MISSED_TICK_STAT" at 0xe, width: 1 bits </summary> 604 public IFlagRegisterField SCHED_CMD_MISSED_TICK_STAT; 605 IntrStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IntrStatusType606 public IntrStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 607 { 608 parent.RegistersCollection.DefineRegister(32, 0, true) 609 .WithFlag(10, out HC_INTERNAL_ERR_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "HC_INTERNAL_ERR_STAT") 610 .WithFlag(11, out HC_SEQ_CANCEL_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "HC_SEQ_CANCEL_STAT") 611 .WithFlag(12, out HC_WARN_CMD_SEQ_STALL_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "HC_WARN_CMD_SEQ_STALL_STAT") 612 .WithFlag(13, out HC_ERR_CMD_SEQ_TIMEOUT_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "HC_ERR_CMD_SEQ_TIMEOUT_STAT") 613 .WithFlag(14, out SCHED_CMD_MISSED_TICK_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "SCHED_CMD_MISSED_TICK_STAT"); 614 } 615 } 616 617 public struct IntrStatusEnableType 618 { 619 /// <summary> Field "HC_INTERNAL_ERR_STAT_EN" at 0xa, width: 1 bits </summary> 620 public IFlagRegisterField HC_INTERNAL_ERR_STAT_EN; 621 /// <summary> Field "HC_SEQ_CANCEL_STAT_EN" at 0xb, width: 1 bits </summary> 622 public IFlagRegisterField HC_SEQ_CANCEL_STAT_EN; 623 /// <summary> Field "HC_WARN_CMD_SEQ_STALL_STAT_EN" at 0xc, width: 1 bits </summary> 624 public IFlagRegisterField HC_WARN_CMD_SEQ_STALL_STAT_EN; 625 /// <summary> Field "HC_ERR_CMD_SEQ_TIMEOUT_STAT_EN" at 0xd, width: 1 bits </summary> 626 public IFlagRegisterField HC_ERR_CMD_SEQ_TIMEOUT_STAT_EN; 627 /// <summary> Field "SCHED_CMD_MISSED_TICK_STAT_EN" at 0xe, width: 1 bits </summary> 628 public IFlagRegisterField SCHED_CMD_MISSED_TICK_STAT_EN; 629 IntrStatusEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IntrStatusEnableType630 public IntrStatusEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 631 { 632 parent.RegistersCollection.DefineRegister(36, 0, true) 633 .WithFlag(10, out HC_INTERNAL_ERR_STAT_EN, name: "HC_INTERNAL_ERR_STAT_EN") 634 .WithFlag(11, out HC_SEQ_CANCEL_STAT_EN, name: "HC_SEQ_CANCEL_STAT_EN") 635 .WithFlag(12, out HC_WARN_CMD_SEQ_STALL_STAT_EN, name: "HC_WARN_CMD_SEQ_STALL_STAT_EN") 636 .WithFlag(13, out HC_ERR_CMD_SEQ_TIMEOUT_STAT_EN, name: "HC_ERR_CMD_SEQ_TIMEOUT_STAT_EN") 637 .WithFlag(14, out SCHED_CMD_MISSED_TICK_STAT_EN, name: "SCHED_CMD_MISSED_TICK_STAT_EN"); 638 } 639 } 640 641 public struct IntrSignalEnableType 642 { 643 /// <summary> Field "HC_INTERNAL_ERR_SIGNAL_EN" at 0xa, width: 1 bits </summary> 644 public IFlagRegisterField HC_INTERNAL_ERR_SIGNAL_EN; 645 /// <summary> Field "HC_SEQ_CANCEL_SIGNAL_EN" at 0xb, width: 1 bits </summary> 646 public IFlagRegisterField HC_SEQ_CANCEL_SIGNAL_EN; 647 /// <summary> Field "HC_WARN_CMD_SEQ_STALL_SIGNAL_EN" at 0xc, width: 1 bits </summary> 648 public IFlagRegisterField HC_WARN_CMD_SEQ_STALL_SIGNAL_EN; 649 /// <summary> Field "HC_ERR_CMD_SEQ_TIMEOUT_SIGNAL_EN" at 0xd, width: 1 bits </summary> 650 public IFlagRegisterField HC_ERR_CMD_SEQ_TIMEOUT_SIGNAL_EN; 651 /// <summary> Field "SCHED_CMD_MISSED_TICK_SIGNAL_EN" at 0xe, width: 1 bits </summary> 652 public IFlagRegisterField SCHED_CMD_MISSED_TICK_SIGNAL_EN; 653 IntrSignalEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IntrSignalEnableType654 public IntrSignalEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 655 { 656 parent.RegistersCollection.DefineRegister(40, 0, true) 657 .WithFlag(10, out HC_INTERNAL_ERR_SIGNAL_EN, name: "HC_INTERNAL_ERR_SIGNAL_EN") 658 .WithFlag(11, out HC_SEQ_CANCEL_SIGNAL_EN, name: "HC_SEQ_CANCEL_SIGNAL_EN") 659 .WithFlag(12, out HC_WARN_CMD_SEQ_STALL_SIGNAL_EN, name: "HC_WARN_CMD_SEQ_STALL_SIGNAL_EN") 660 .WithFlag(13, out HC_ERR_CMD_SEQ_TIMEOUT_SIGNAL_EN, name: "HC_ERR_CMD_SEQ_TIMEOUT_SIGNAL_EN") 661 .WithFlag(14, out SCHED_CMD_MISSED_TICK_SIGNAL_EN, name: "SCHED_CMD_MISSED_TICK_SIGNAL_EN"); 662 } 663 } 664 665 public struct IntrForceType 666 { 667 /// <summary> Field "HC_INTERNAL_ERR_FORCE" at 0xa, width: 1 bits </summary> 668 public IFlagRegisterField HC_INTERNAL_ERR_FORCE; 669 /// <summary> Field "HC_SEQ_CANCEL_FORCE" at 0xb, width: 1 bits </summary> 670 public IFlagRegisterField HC_SEQ_CANCEL_FORCE; 671 /// <summary> Field "HC_WARN_CMD_SEQ_STALL_FORCE" at 0xc, width: 1 bits </summary> 672 public IFlagRegisterField HC_WARN_CMD_SEQ_STALL_FORCE; 673 /// <summary> Field "HC_ERR_CMD_SEQ_TIMEOUT_FORCE" at 0xd, width: 1 bits </summary> 674 public IFlagRegisterField HC_ERR_CMD_SEQ_TIMEOUT_FORCE; 675 /// <summary> Field "SCHED_CMD_MISSED_TICK_FORCE" at 0xe, width: 1 bits </summary> 676 public IFlagRegisterField SCHED_CMD_MISSED_TICK_FORCE; 677 IntrForceTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IntrForceType678 public IntrForceType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 679 { 680 parent.RegistersCollection.DefineRegister(44, 0, true) 681 .WithFlag(10, out HC_INTERNAL_ERR_FORCE, mode: FieldMode.Write, name: "HC_INTERNAL_ERR_FORCE") 682 .WithFlag(11, out HC_SEQ_CANCEL_FORCE, mode: FieldMode.Write, name: "HC_SEQ_CANCEL_FORCE") 683 .WithFlag(12, out HC_WARN_CMD_SEQ_STALL_FORCE, mode: FieldMode.Write, name: "HC_WARN_CMD_SEQ_STALL_FORCE") 684 .WithFlag(13, out HC_ERR_CMD_SEQ_TIMEOUT_FORCE, mode: FieldMode.Write, name: "HC_ERR_CMD_SEQ_TIMEOUT_FORCE") 685 .WithFlag(14, out SCHED_CMD_MISSED_TICK_FORCE, mode: FieldMode.Write, name: "SCHED_CMD_MISSED_TICK_FORCE"); 686 } 687 } 688 689 public struct DatSectionOffsetType 690 { 691 /// <summary> Field "TABLE_OFFSET" at 0x0, width: 12 bits </summary> 692 public IValueRegisterField TABLE_OFFSET; 693 /// <summary> Field "TABLE_SIZE" at 0xc, width: 7 bits </summary> 694 public IValueRegisterField TABLE_SIZE; 695 /// <summary> Field "ENTRY_SIZE" at 0x1c, width: 4 bits </summary> 696 public IValueRegisterField ENTRY_SIZE; 697 DatSectionOffsetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DatSectionOffsetType698 public DatSectionOffsetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 699 { 700 parent.RegistersCollection.DefineRegister(48, 524287, true) 701 .WithValueField(0, 12, out TABLE_OFFSET, mode: FieldMode.Read, name: "TABLE_OFFSET") 702 .WithValueField(12, 7, out TABLE_SIZE, mode: FieldMode.Read, name: "TABLE_SIZE") 703 .WithValueField(28, 4, out ENTRY_SIZE, mode: FieldMode.Read, name: "ENTRY_SIZE"); 704 } 705 } 706 707 public struct DctSectionOffsetType 708 { 709 /// <summary> Field "TABLE_OFFSET" at 0x0, width: 12 bits </summary> 710 public IValueRegisterField TABLE_OFFSET; 711 /// <summary> Field "TABLE_SIZE" at 0xc, width: 7 bits </summary> 712 public IValueRegisterField TABLE_SIZE; 713 /// <summary> Field "TABLE_INDEX" at 0x13, width: 5 bits </summary> 714 public IValueRegisterField TABLE_INDEX; 715 /// <summary> Field "ENTRY_SIZE" at 0x1c, width: 4 bits </summary> 716 public IValueRegisterField ENTRY_SIZE; 717 DctSectionOffsetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DctSectionOffsetType718 public DctSectionOffsetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 719 { 720 parent.RegistersCollection.DefineRegister(52, 524287, true) 721 .WithValueField(0, 12, out TABLE_OFFSET, mode: FieldMode.Read, name: "TABLE_OFFSET") 722 .WithValueField(12, 7, out TABLE_SIZE, mode: FieldMode.Read, name: "TABLE_SIZE") 723 .WithValueField(19, 5, out TABLE_INDEX, name: "TABLE_INDEX") 724 .WithValueField(28, 4, out ENTRY_SIZE, mode: FieldMode.Read, name: "ENTRY_SIZE"); 725 } 726 } 727 728 public struct RingHeadersSectionOffsetType 729 { 730 /// <summary> Field "SECTION_OFFSET" at 0x0, width: 16 bits </summary> 731 public IValueRegisterField SECTION_OFFSET; 732 RingHeadersSectionOffsetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.RingHeadersSectionOffsetType733 public RingHeadersSectionOffsetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 734 { 735 parent.RegistersCollection.DefineRegister(56, 0, true) 736 .WithValueField(0, 16, out SECTION_OFFSET, mode: FieldMode.Read, name: "SECTION_OFFSET"); 737 } 738 } 739 740 public struct PioSectionOffsetType 741 { 742 /// <summary> Field "SECTION_OFFSET" at 0x0, width: 16 bits </summary> 743 public IValueRegisterField SECTION_OFFSET; 744 PioSectionOffsetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioSectionOffsetType745 public PioSectionOffsetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 746 { 747 parent.RegistersCollection.DefineRegister(60, 65535, true) 748 .WithValueField(0, 16, out SECTION_OFFSET, mode: FieldMode.Read, name: "SECTION_OFFSET"); 749 } 750 } 751 752 public struct ExtCapsSectionOffsetType 753 { 754 /// <summary> Field "SECTION_OFFSET" at 0x0, width: 16 bits </summary> 755 public IValueRegisterField SECTION_OFFSET; 756 ExtCapsSectionOffsetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ExtCapsSectionOffsetType757 public ExtCapsSectionOffsetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 758 { 759 parent.RegistersCollection.DefineRegister(64, 65535, true) 760 .WithValueField(0, 16, out SECTION_OFFSET, mode: FieldMode.Read, name: "SECTION_OFFSET"); 761 } 762 } 763 764 public struct IntCtrlCmdsEnType 765 { 766 /// <summary> Field "ICC_SUPPORT" at 0x0, width: 1 bits </summary> 767 public IFlagRegisterField ICC_SUPPORT; 768 /// <summary> Field "MIPI_CMDS_SUPPORTED" at 0x1, width: 15 bits </summary> 769 public IValueRegisterField MIPI_CMDS_SUPPORTED; 770 IntCtrlCmdsEnTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IntCtrlCmdsEnType771 public IntCtrlCmdsEnType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 772 { 773 parent.RegistersCollection.DefineRegister(76, 65535, true) 774 .WithFlag(0, out ICC_SUPPORT, mode: FieldMode.Read, name: "ICC_SUPPORT") 775 .WithValueField(1, 15, out MIPI_CMDS_SUPPORTED, mode: FieldMode.Read, name: "MIPI_CMDS_SUPPORTED"); 776 } 777 } 778 779 public struct IbiNotifyCtrlType 780 { 781 /// <summary> Field "NOTIFY_HJ_REJECTED" at 0x0, width: 1 bits </summary> 782 public IFlagRegisterField NOTIFY_HJ_REJECTED; 783 /// <summary> Field "NOTIFY_CRR_REJECTED" at 0x1, width: 1 bits </summary> 784 public IFlagRegisterField NOTIFY_CRR_REJECTED; 785 /// <summary> Field "NOTIFY_IBI_REJECTED" at 0x3, width: 1 bits </summary> 786 public IFlagRegisterField NOTIFY_IBI_REJECTED; 787 IbiNotifyCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IbiNotifyCtrlType788 public IbiNotifyCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 789 { 790 parent.RegistersCollection.DefineRegister(88, 0, true) 791 .WithFlag(0, out NOTIFY_HJ_REJECTED, name: "NOTIFY_HJ_REJECTED") 792 .WithFlag(1, out NOTIFY_CRR_REJECTED, name: "NOTIFY_CRR_REJECTED") 793 .WithFlag(3, out NOTIFY_IBI_REJECTED, name: "NOTIFY_IBI_REJECTED"); 794 } 795 } 796 797 public struct IbiDataAbortCtrlType 798 { 799 /// <summary> Field "MATCH_IBI_ID" at 0x8, width: 8 bits </summary> 800 public IValueRegisterField MATCH_IBI_ID; 801 /// <summary> Field "AFTER_N_CHUNKS" at 0x10, width: 2 bits </summary> 802 public IValueRegisterField AFTER_N_CHUNKS; 803 /// <summary> Field "MATCH_STATUS_TYPE" at 0x12, width: 3 bits </summary> 804 public IValueRegisterField MATCH_STATUS_TYPE; 805 /// <summary> Field "IBI_DATA_ABORT_MON" at 0x1f, width: 1 bits </summary> 806 public IFlagRegisterField IBI_DATA_ABORT_MON; 807 IbiDataAbortCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IbiDataAbortCtrlType808 public IbiDataAbortCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 809 { 810 parent.RegistersCollection.DefineRegister(92, 0, true) 811 .WithValueField(8, 8, out MATCH_IBI_ID, name: "MATCH_IBI_ID") 812 .WithValueField(16, 2, out AFTER_N_CHUNKS, name: "AFTER_N_CHUNKS") 813 .WithValueField(18, 3, out MATCH_STATUS_TYPE, name: "MATCH_STATUS_TYPE") 814 .WithFlag(31, out IBI_DATA_ABORT_MON, name: "IBI_DATA_ABORT_MON"); 815 } 816 } 817 818 public struct DevCtxBaseLoType 819 { 820 /// <summary> Field "BASE_LO" at 0x0, width: 1 bits </summary> 821 public IFlagRegisterField BASE_LO; 822 DevCtxBaseLoTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DevCtxBaseLoType823 public DevCtxBaseLoType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 824 { 825 parent.RegistersCollection.DefineRegister(96, 0, true) 826 .WithFlag(0, out BASE_LO, name: "BASE_LO"); 827 } 828 } 829 830 public struct DevCtxBaseHiType 831 { 832 /// <summary> Field "BASE_HI" at 0x0, width: 1 bits </summary> 833 public IFlagRegisterField BASE_HI; 834 DevCtxBaseHiTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DevCtxBaseHiType835 public DevCtxBaseHiType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 836 { 837 parent.RegistersCollection.DefineRegister(100, 0, true) 838 .WithFlag(0, out BASE_HI, name: "BASE_HI"); 839 } 840 } 841 842 public struct DevCtxSgType 843 { 844 /// <summary> Field "LIST_SIZE" at 0x0, width: 16 bits </summary> 845 public IValueRegisterField LIST_SIZE; 846 /// <summary> Field "BLP" at 0x1f, width: 1 bits </summary> 847 public IFlagRegisterField BLP; 848 DevCtxSgTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DevCtxSgType849 public DevCtxSgType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 850 { 851 parent.RegistersCollection.DefineRegister(104, 0, true) 852 .WithValueField(0, 16, out LIST_SIZE, mode: FieldMode.Read, name: "LIST_SIZE") 853 .WithFlag(31, out BLP, mode: FieldMode.Read, name: "BLP"); 854 } 855 } 856 857 public struct CommandPortType 858 { 859 /// <summary> Field "COMMAND_DATA" at 0x0, width: 32 bits </summary> 860 public IValueRegisterField COMMAND_DATA; 861 CommandPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.CommandPortType862 public CommandPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 863 { 864 parent.RegistersCollection.DefineRegister(128, 0, true) 865 .WithValueField(0, 32, out COMMAND_DATA, mode: FieldMode.Write, name: "COMMAND_DATA"); 866 } 867 } 868 869 public struct PIOTxRxDataPortType 870 { 871 public IValueRegisterField DATA; 872 PIOTxRxDataPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PIOTxRxDataPortType873 public PIOTxRxDataPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 874 { 875 parent.RegistersCollection.DefineRegister(136) 876 .WithValueField(0, 32, out DATA, name: "TX_DATA/RX_DATA"); 877 } 878 } 879 880 public struct ResponsePortType 881 { 882 /// <summary> Field "RESPONSE_DATA" at 0x0, width: 32 bits </summary> 883 public IValueRegisterField RESPONSE_DATA; 884 ResponsePortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ResponsePortType885 public ResponsePortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 886 { 887 parent.RegistersCollection.DefineRegister(132, 0, true) 888 .WithValueField(0, 32, out RESPONSE_DATA, mode: FieldMode.Read, name: "RESPONSE_DATA"); 889 } 890 } 891 892 public struct TargetTransactionInterfaceTxDataPortType 893 { 894 /// <summary> Field "TX_DATA" at 0x0, width: 32 bits </summary> 895 public IValueRegisterField TX_DATA; 896 TargetTransactionInterfaceTxDataPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceTxDataPortType897 public TargetTransactionInterfaceTxDataPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 898 { 899 parent.RegistersCollection.DefineRegister(488, 0, true) 900 .WithValueField(0, 32, out TX_DATA, mode: FieldMode.Write, name: "TX_DATA"); 901 } 902 } 903 904 public struct TargetTransactionInterfaceRxDataPortType 905 { 906 /// <summary> Field "RX_DATA" at 0x0, width: 32 bits </summary> 907 public IValueRegisterField RX_DATA; 908 TargetTransactionInterfaceRxDataPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceRxDataPortType909 public TargetTransactionInterfaceRxDataPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 910 { 911 parent.RegistersCollection.DefineRegister(480, 0, true) 912 .WithValueField(0, 32, out RX_DATA, mode: FieldMode.Read, name: "RX_DATA"); 913 } 914 } 915 916 public struct PIOIbiPortType 917 { 918 public IValueRegisterField IBI_DATA; 919 PIOIbiPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PIOIbiPortType920 public PIOIbiPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 921 { 922 parent.RegistersCollection.DefineRegister(140) 923 .WithValueField(0, 32, out IBI_DATA, mode: FieldMode.Read, name: "IBI_DATA"); 924 } 925 } 926 927 public struct TargetTransactionInterfaceIbiPortType 928 { 929 /// <summary> Field "IBI_DATA" at 0x0, width: 32 bits </summary> 930 public IValueRegisterField IBI_DATA; 931 TargetTransactionInterfaceIbiPortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceIbiPortType932 public TargetTransactionInterfaceIbiPortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 933 { 934 parent.RegistersCollection.DefineRegister(492, 0, true) 935 .WithValueField(0, 32, out IBI_DATA, mode: FieldMode.Write, name: "IBI_DATA"); 936 } 937 } 938 939 public struct PIOQueueThldCtrlType 940 { 941 public IValueRegisterField CMD_EMPTY_BUF_THLD; 942 public IValueRegisterField RESP_BUF_THLD; 943 public IValueRegisterField IBI_DATA_SEGMENT_SIZE; 944 public IValueRegisterField IBI_STATUS_THLD; 945 PIOQueueThldCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PIOQueueThldCtrlType946 public PIOQueueThldCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 947 { 948 parent.RegistersCollection.DefineRegister(144, 16843009) 949 .WithValueField(0, 8, out CMD_EMPTY_BUF_THLD, name: "CMD_EMPTY_BUF_THLD") 950 .WithValueField(8, 8, out RESP_BUF_THLD, name: "RESP_BUF_THLD") 951 .WithValueField(16, 8, out IBI_DATA_SEGMENT_SIZE, name: "IBI_DATA_SEGMENT_SIZE") 952 .WithValueField(24, 8, out IBI_STATUS_THLD, name: "IBI_STATUS_THLD"); 953 } 954 } 955 956 public struct TargetTransactionInterfaceQueueThldCtrlType 957 { 958 /// <summary> Field "TX_DESC_THLD" at 0x0, width: 8 bits </summary> 959 public IValueRegisterField TX_DESC_THLD; 960 /// <summary> Field "RX_DESC_THLD" at 0x8, width: 8 bits </summary> 961 public IValueRegisterField RX_DESC_THLD; 962 /// <summary> Field "IBI_THLD" at 0x18, width: 8 bits </summary> 963 public IValueRegisterField IBI_THLD; 964 TargetTransactionInterfaceQueueThldCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceQueueThldCtrlType965 public TargetTransactionInterfaceQueueThldCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 966 { 967 parent.RegistersCollection.DefineRegister(504, 4278255615, true) 968 .WithValueField(0, 8, out TX_DESC_THLD, name: "TX_DESC_THLD") 969 .WithValueField(8, 8, out RX_DESC_THLD, name: "RX_DESC_THLD") 970 .WithValueField(24, 8, out IBI_THLD, name: "IBI_THLD"); 971 } 972 } 973 974 public struct PIODataBufferThldCtrlType 975 { 976 public IValueRegisterField TX_BUF_THLD; 977 public IValueRegisterField RX_BUF_THLD; 978 public IValueRegisterField TX_START_THLD; 979 public IValueRegisterField RX_START_THLD; 980 PIODataBufferThldCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PIODataBufferThldCtrlType981 public PIODataBufferThldCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 982 { 983 parent.RegistersCollection.DefineRegister(148, 16843009) 984 .WithValueField(0, 3, out TX_BUF_THLD, name: "TX_BUF_THLD") 985 .WithValueField(8, 3, out RX_BUF_THLD, name: "TX_BUF_THLD") 986 .WithValueField(16, 3, out TX_START_THLD, name: "TX_START_THLD") 987 .WithValueField(24, 3, out RX_START_THLD, name: "RX_START_THLD"); 988 } 989 } 990 991 public struct TargetTransactionInterfaceDataBufferThldCtrlType 992 { 993 /// <summary> Field "TX_DATA_THLD" at 0x0, width: 3 bits </summary> 994 public IValueRegisterField TX_DATA_THLD; 995 /// <summary> Field "RX_DATA_THLD" at 0x8, width: 3 bits </summary> 996 public IValueRegisterField RX_DATA_THLD; 997 /// <summary> Field "TX_START_THLD" at 0x10, width: 3 bits </summary> 998 public IValueRegisterField TX_START_THLD; 999 /// <summary> Field "RX_START_THLD" at 0x18, width: 3 bits </summary> 1000 public IValueRegisterField RX_START_THLD; 1001 TargetTransactionInterfaceDataBufferThldCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceDataBufferThldCtrlType1002 public TargetTransactionInterfaceDataBufferThldCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1003 { 1004 parent.RegistersCollection.DefineRegister(508, 117901063, true) 1005 .WithValueField(0, 3, out TX_DATA_THLD, name: "TX_DATA_THLD") 1006 .WithValueField(8, 3, out RX_DATA_THLD, name: "RX_DATA_THLD") 1007 .WithValueField(16, 3, out TX_START_THLD, name: "TX_START_THLD") 1008 .WithValueField(24, 3, out RX_START_THLD, name: "RX_START_THLD"); 1009 } 1010 } 1011 1012 public struct PIOQueueSizeType 1013 { 1014 public IValueRegisterField CR_QUEUE_SIZE; 1015 public IValueRegisterField IBI_STATUS_SIZE; 1016 public IValueRegisterField RX_DATA_BUFFER_SIZE; 1017 public IValueRegisterField TX_DATA_BUFFER_SIZE; 1018 PIOQueueSizeTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PIOQueueSizeType1019 public PIOQueueSizeType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1020 { 1021 parent.RegistersCollection.DefineRegister(152) 1022 .WithValueField(0, 8, out CR_QUEUE_SIZE, mode: FieldMode.Read, name: "CR_QUEUE_SIZE") 1023 .WithValueField(8, 8, out IBI_STATUS_SIZE, mode: FieldMode.Read, name: "IBI_STATUS_SIZE") 1024 .WithValueField(16, 8, out RX_DATA_BUFFER_SIZE, mode: FieldMode.Read, name: "RX_DATA_BUFFER_SIZE") 1025 .WithValueField(24, 8, out TX_DATA_BUFFER_SIZE, mode: FieldMode.Read, name: "TX_DATA_BUFFER_SIZE"); 1026 } 1027 } 1028 1029 public struct TargetTransactionInterfaceQueueSizeType 1030 { 1031 /// <summary> Field "RX_DESC_BUFFER_SIZE" at 0x0, width: 8 bits </summary> 1032 public IValueRegisterField RX_DESC_BUFFER_SIZE; 1033 /// <summary> Field "TX_DESC_BUFFER_SIZE" at 0x8, width: 8 bits </summary> 1034 public IValueRegisterField TX_DESC_BUFFER_SIZE; 1035 /// <summary> Field "RX_DATA_BUFFER_SIZE" at 0x10, width: 8 bits </summary> 1036 public IValueRegisterField RX_DATA_BUFFER_SIZE; 1037 /// <summary> Field "TX_DATA_BUFFER_SIZE" at 0x18, width: 8 bits </summary> 1038 public IValueRegisterField TX_DATA_BUFFER_SIZE; 1039 TargetTransactionInterfaceQueueSizeTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceQueueSizeType1040 public TargetTransactionInterfaceQueueSizeType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1041 { 1042 parent.RegistersCollection.DefineRegister(496, 4294967295, true) 1043 .WithValueField(0, 8, out RX_DESC_BUFFER_SIZE, mode: FieldMode.Read, name: "RX_DESC_BUFFER_SIZE") 1044 .WithValueField(8, 8, out TX_DESC_BUFFER_SIZE, mode: FieldMode.Read, name: "TX_DESC_BUFFER_SIZE") 1045 .WithValueField(16, 8, out RX_DATA_BUFFER_SIZE, mode: FieldMode.Read, name: "RX_DATA_BUFFER_SIZE") 1046 .WithValueField(24, 8, out TX_DATA_BUFFER_SIZE, mode: FieldMode.Read, name: "TX_DATA_BUFFER_SIZE"); 1047 } 1048 } 1049 1050 public struct AltQueueSizeType 1051 { 1052 /// <summary> Field "ALT_RESP_QUEUE_SIZE" at 0x0, width: 8 bits </summary> 1053 public IValueRegisterField ALT_RESP_QUEUE_SIZE; 1054 /// <summary> Field "ALT_RESP_QUEUE_EN" at 0x18, width: 1 bits </summary> 1055 public IFlagRegisterField ALT_RESP_QUEUE_EN; 1056 /// <summary> Field "EXT_IBI_QUEUE_EN" at 0x1c, width: 1 bits </summary> 1057 public IFlagRegisterField EXT_IBI_QUEUE_EN; 1058 AltQueueSizeTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.AltQueueSizeType1059 public AltQueueSizeType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1060 { 1061 parent.RegistersCollection.DefineRegister(156, 16777471, true) 1062 .WithValueField(0, 8, out ALT_RESP_QUEUE_SIZE, mode: FieldMode.Read, name: "ALT_RESP_QUEUE_SIZE") 1063 .WithFlag(24, out ALT_RESP_QUEUE_EN, mode: FieldMode.Read, name: "ALT_RESP_QUEUE_EN") 1064 .WithFlag(28, out EXT_IBI_QUEUE_EN, mode: FieldMode.Read, name: "EXT_IBI_QUEUE_EN"); 1065 } 1066 } 1067 1068 public struct PioIntrStatusType 1069 { 1070 /// <summary> Field "TX_THLD_STAT" at 0x0, width: 1 bits </summary> 1071 public IFlagRegisterField TX_THLD_STAT; 1072 /// <summary> Field "RX_THLD_STAT" at 0x1, width: 1 bits </summary> 1073 public IFlagRegisterField RX_THLD_STAT; 1074 /// <summary> Field "IBI_STATUS_THLD_STAT" at 0x2, width: 1 bits </summary> 1075 public IFlagRegisterField IBI_STATUS_THLD_STAT; 1076 /// <summary> Field "CMD_QUEUE_READY_STAT" at 0x3, width: 1 bits </summary> 1077 public IFlagRegisterField CMD_QUEUE_READY_STAT; 1078 /// <summary> Field "RESP_READY_STAT" at 0x4, width: 1 bits </summary> 1079 public IFlagRegisterField RESP_READY_STAT; 1080 /// <summary> Field "TRANSFER_ABORT_STAT" at 0x5, width: 1 bits </summary> 1081 public IFlagRegisterField TRANSFER_ABORT_STAT; 1082 /// <summary> Field "TRANSFER_ERR_STAT" at 0x9, width: 1 bits </summary> 1083 public IFlagRegisterField TRANSFER_ERR_STAT; 1084 PioIntrStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioIntrStatusType1085 public PioIntrStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1086 { 1087 parent.RegistersCollection.DefineRegister(160, 0, true) 1088 .WithFlag(0, out TX_THLD_STAT, mode: FieldMode.Read, name: "TX_THLD_STAT") 1089 .WithFlag(1, out RX_THLD_STAT, mode: FieldMode.Read, name: "RX_THLD_STAT") 1090 .WithFlag(2, out IBI_STATUS_THLD_STAT, mode: FieldMode.Read, name: "IBI_STATUS_THLD_STAT") 1091 .WithFlag(3, out CMD_QUEUE_READY_STAT, mode: FieldMode.Read, name: "CMD_QUEUE_READY_STAT") 1092 .WithFlag(4, out RESP_READY_STAT, mode: FieldMode.Read, name: "RESP_READY_STAT") 1093 .WithFlag(5, out TRANSFER_ABORT_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TRANSFER_ABORT_STAT") 1094 .WithFlag(9, out TRANSFER_ERR_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TRANSFER_ERR_STAT"); 1095 } 1096 } 1097 1098 public struct PioIntrStatusEnableType 1099 { 1100 /// <summary> Field "TX_THLD_STAT_EN" at 0x0, width: 1 bits </summary> 1101 public IFlagRegisterField TX_THLD_STAT_EN; 1102 /// <summary> Field "RX_THLD_STAT_EN" at 0x1, width: 1 bits </summary> 1103 public IFlagRegisterField RX_THLD_STAT_EN; 1104 /// <summary> Field "IBI_STATUS_THLD_STAT_EN" at 0x2, width: 1 bits </summary> 1105 public IFlagRegisterField IBI_STATUS_THLD_STAT_EN; 1106 /// <summary> Field "CMD_QUEUE_READY_STAT_EN" at 0x3, width: 1 bits </summary> 1107 public IFlagRegisterField CMD_QUEUE_READY_STAT_EN; 1108 /// <summary> Field "RESP_READY_STAT_EN" at 0x4, width: 1 bits </summary> 1109 public IFlagRegisterField RESP_READY_STAT_EN; 1110 /// <summary> Field "TRANSFER_ABORT_STAT_EN" at 0x5, width: 1 bits </summary> 1111 public IFlagRegisterField TRANSFER_ABORT_STAT_EN; 1112 /// <summary> Field "TRANSFER_ERR_STAT_EN" at 0x9, width: 1 bits </summary> 1113 public IFlagRegisterField TRANSFER_ERR_STAT_EN; 1114 PioIntrStatusEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioIntrStatusEnableType1115 public PioIntrStatusEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1116 { 1117 parent.RegistersCollection.DefineRegister(164, 0, true) 1118 .WithFlag(0, out TX_THLD_STAT_EN, name: "TX_THLD_STAT_EN") 1119 .WithFlag(1, out RX_THLD_STAT_EN, name: "RX_THLD_STAT_EN") 1120 .WithFlag(2, out IBI_STATUS_THLD_STAT_EN, name: "IBI_STATUS_THLD_STAT_EN") 1121 .WithFlag(3, out CMD_QUEUE_READY_STAT_EN, name: "CMD_QUEUE_READY_STAT_EN") 1122 .WithFlag(4, out RESP_READY_STAT_EN, name: "RESP_READY_STAT_EN") 1123 .WithFlag(5, out TRANSFER_ABORT_STAT_EN, name: "TRANSFER_ABORT_STAT_EN") 1124 .WithFlag(9, out TRANSFER_ERR_STAT_EN, name: "TRANSFER_ERR_STAT_EN"); 1125 } 1126 } 1127 1128 public struct PioIntrSignalEnableType 1129 { 1130 /// <summary> Field "TX_THLD_SIGNAL_EN" at 0x0, width: 1 bits </summary> 1131 public IFlagRegisterField TX_THLD_SIGNAL_EN; 1132 /// <summary> Field "RX_THLD_SIGNAL_EN" at 0x1, width: 1 bits </summary> 1133 public IFlagRegisterField RX_THLD_SIGNAL_EN; 1134 /// <summary> Field "IBI_STATUS_THLD_SIGNAL_EN" at 0x2, width: 1 bits </summary> 1135 public IFlagRegisterField IBI_STATUS_THLD_SIGNAL_EN; 1136 /// <summary> Field "CMD_QUEUE_READY_SIGNAL_EN" at 0x3, width: 1 bits </summary> 1137 public IFlagRegisterField CMD_QUEUE_READY_SIGNAL_EN; 1138 /// <summary> Field "RESP_READY_SIGNAL_EN" at 0x4, width: 1 bits </summary> 1139 public IFlagRegisterField RESP_READY_SIGNAL_EN; 1140 /// <summary> Field "TRANSFER_ABORT_SIGNAL_EN" at 0x5, width: 1 bits </summary> 1141 public IFlagRegisterField TRANSFER_ABORT_SIGNAL_EN; 1142 /// <summary> Field "TRANSFER_ERR_SIGNAL_EN" at 0x9, width: 1 bits </summary> 1143 public IFlagRegisterField TRANSFER_ERR_SIGNAL_EN; 1144 PioIntrSignalEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioIntrSignalEnableType1145 public PioIntrSignalEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1146 { 1147 parent.RegistersCollection.DefineRegister(168, 0, true) 1148 .WithFlag(0, out TX_THLD_SIGNAL_EN, name: "TX_THLD_SIGNAL_EN") 1149 .WithFlag(1, out RX_THLD_SIGNAL_EN, name: "RX_THLD_SIGNAL_EN") 1150 .WithFlag(2, out IBI_STATUS_THLD_SIGNAL_EN, name: "IBI_STATUS_THLD_SIGNAL_EN") 1151 .WithFlag(3, out CMD_QUEUE_READY_SIGNAL_EN, name: "CMD_QUEUE_READY_SIGNAL_EN") 1152 .WithFlag(4, out RESP_READY_SIGNAL_EN, name: "RESP_READY_SIGNAL_EN") 1153 .WithFlag(5, out TRANSFER_ABORT_SIGNAL_EN, name: "TRANSFER_ABORT_SIGNAL_EN") 1154 .WithFlag(9, out TRANSFER_ERR_SIGNAL_EN, name: "TRANSFER_ERR_SIGNAL_EN"); 1155 } 1156 } 1157 1158 public struct PioIntrForceType 1159 { 1160 /// <summary> Field "TX_THLD_FORCE" at 0x0, width: 1 bits </summary> 1161 public IFlagRegisterField TX_THLD_FORCE; 1162 /// <summary> Field "RX_THLD_FORCE" at 0x1, width: 1 bits </summary> 1163 public IFlagRegisterField RX_THLD_FORCE; 1164 /// <summary> Field "IBI_THLD_FORCE" at 0x2, width: 1 bits </summary> 1165 public IFlagRegisterField IBI_THLD_FORCE; 1166 /// <summary> Field "CMD_QUEUE_READY_FORCE" at 0x3, width: 1 bits </summary> 1167 public IFlagRegisterField CMD_QUEUE_READY_FORCE; 1168 /// <summary> Field "RESP_READY_FORCE" at 0x4, width: 1 bits </summary> 1169 public IFlagRegisterField RESP_READY_FORCE; 1170 /// <summary> Field "TRANSFER_ABORT_FORCE" at 0x5, width: 1 bits </summary> 1171 public IFlagRegisterField TRANSFER_ABORT_FORCE; 1172 /// <summary> Field "TRANSFER_ERR_FORCE" at 0x9, width: 1 bits </summary> 1173 public IFlagRegisterField TRANSFER_ERR_FORCE; 1174 PioIntrForceTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioIntrForceType1175 public PioIntrForceType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1176 { 1177 parent.RegistersCollection.DefineRegister(172, 0, true) 1178 .WithFlag(0, out TX_THLD_FORCE, mode: FieldMode.Write, name: "TX_THLD_FORCE") 1179 .WithFlag(1, out RX_THLD_FORCE, mode: FieldMode.Write, name: "RX_THLD_FORCE") 1180 .WithFlag(2, out IBI_THLD_FORCE, mode: FieldMode.Write, name: "IBI_THLD_FORCE") 1181 .WithFlag(3, out CMD_QUEUE_READY_FORCE, mode: FieldMode.Write, name: "CMD_QUEUE_READY_FORCE") 1182 .WithFlag(4, out RESP_READY_FORCE, mode: FieldMode.Write, name: "RESP_READY_FORCE") 1183 .WithFlag(5, out TRANSFER_ABORT_FORCE, mode: FieldMode.Write, name: "TRANSFER_ABORT_FORCE") 1184 .WithFlag(9, out TRANSFER_ERR_FORCE, mode: FieldMode.Write, name: "TRANSFER_ERR_FORCE"); 1185 } 1186 } 1187 1188 public struct PioControlType 1189 { 1190 /// <summary> Field "ENABLE" at 0x0, width: 1 bits </summary> 1191 public IFlagRegisterField ENABLE; 1192 /// <summary> Field "RS" at 0x1, width: 1 bits </summary> 1193 public IFlagRegisterField RS; 1194 /// <summary> Field "ABORT" at 0x2, width: 1 bits </summary> 1195 public IFlagRegisterField ABORT; 1196 PioControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.PioControlType1197 public PioControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1198 { 1199 parent.RegistersCollection.DefineRegister(176, 1, true) 1200 .WithFlag(0, out ENABLE, name: "ENABLE") 1201 .WithFlag(1, out RS, name: "RS") 1202 .WithFlag(2, out ABORT, name: "ABORT"); 1203 } 1204 } 1205 1206 public struct SecureFirmwareRecoveryInterfaceExtcapHeaderType 1207 { 1208 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 1209 public IValueRegisterField CAP_ID; 1210 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 1211 public IValueRegisterField CAP_LENGTH; 1212 SecureFirmwareRecoveryInterfaceExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SecureFirmwareRecoveryInterfaceExtcapHeaderType1213 public SecureFirmwareRecoveryInterfaceExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1214 { 1215 parent.RegistersCollection.DefineRegister(256, 8384, true) 1216 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 1217 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 1218 } 1219 } 1220 1221 public struct StandbyControllerModeRegistersExtcapHeaderType 1222 { 1223 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 1224 public IValueRegisterField CAP_ID; 1225 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 1226 public IValueRegisterField CAP_LENGTH; 1227 StandbyControllerModeRegistersExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StandbyControllerModeRegistersExtcapHeaderType1228 public StandbyControllerModeRegistersExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1229 { 1230 parent.RegistersCollection.DefineRegister(384, 4114, true) 1231 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 1232 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 1233 } 1234 } 1235 1236 public struct SoCManagementInterfaceRegistersExtcapHeaderType 1237 { 1238 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 1239 public IValueRegisterField CAP_ID; 1240 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 1241 public IValueRegisterField CAP_LENGTH; 1242 SoCManagementInterfaceRegistersExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SoCManagementInterfaceRegistersExtcapHeaderType1243 public SoCManagementInterfaceRegistersExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1244 { 1245 parent.RegistersCollection.DefineRegister(512, 6337, true) 1246 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 1247 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 1248 } 1249 } 1250 1251 public struct TargetTransactionInterfaceRegistersExtcapHeaderType 1252 { 1253 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 1254 public IValueRegisterField CAP_ID; 1255 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 1256 public IValueRegisterField CAP_LENGTH; 1257 TargetTransactionInterfaceRegistersExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TargetTransactionInterfaceRegistersExtcapHeaderType1258 public TargetTransactionInterfaceRegistersExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1259 { 1260 parent.RegistersCollection.DefineRegister(448, 4292, true) 1261 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 1262 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 1263 } 1264 } 1265 1266 public struct ControllerConfigRegistersExtcapHeaderType 1267 { 1268 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 1269 public IValueRegisterField CAP_ID; 1270 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 1271 public IValueRegisterField CAP_LENGTH; 1272 ControllerConfigRegistersExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ControllerConfigRegistersExtcapHeaderType1273 public ControllerConfigRegistersExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1274 { 1275 parent.RegistersCollection.DefineRegister(608, 514, true) 1276 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 1277 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 1278 } 1279 } 1280 1281 public struct ProtCap0Type 1282 { 1283 /// <summary> Field "REC_MAGIC_STRING_0" at 0x0, width: 32 bits </summary> 1284 public IValueRegisterField REC_MAGIC_STRING_0; 1285 ProtCap0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ProtCap0Type1286 public ProtCap0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1287 { 1288 parent.RegistersCollection.DefineRegister(260, 4294967295, true) 1289 .WithValueField(0, 32, out REC_MAGIC_STRING_0, mode: FieldMode.Read, name: "REC_MAGIC_STRING_0"); 1290 } 1291 } 1292 1293 public struct ProtCap1Type 1294 { 1295 /// <summary> Field "REC_MAGIC_STRING_1" at 0x0, width: 32 bits </summary> 1296 public IValueRegisterField REC_MAGIC_STRING_1; 1297 ProtCap1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ProtCap1Type1298 public ProtCap1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1299 { 1300 parent.RegistersCollection.DefineRegister(264, 4294967295, true) 1301 .WithValueField(0, 32, out REC_MAGIC_STRING_1, mode: FieldMode.Read, name: "REC_MAGIC_STRING_1"); 1302 } 1303 } 1304 1305 public struct ProtCap2Type 1306 { 1307 /// <summary> Field "REC_PROT_VERSION" at 0x0, width: 16 bits </summary> 1308 public IValueRegisterField REC_PROT_VERSION; 1309 /// <summary> Field "AGENT_CAPS" at 0x10, width: 16 bits </summary> 1310 public IValueRegisterField AGENT_CAPS; 1311 ProtCap2TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ProtCap2Type1312 public ProtCap2Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1313 { 1314 parent.RegistersCollection.DefineRegister(268, 0, true) 1315 .WithValueField(0, 16, out REC_PROT_VERSION, name: "REC_PROT_VERSION") 1316 .WithValueField(16, 16, out AGENT_CAPS, name: "AGENT_CAPS"); 1317 } 1318 } 1319 1320 public struct ProtCap3Type 1321 { 1322 /// <summary> Field "NUM_OF_CMS_REGIONS" at 0x0, width: 8 bits </summary> 1323 public IValueRegisterField NUM_OF_CMS_REGIONS; 1324 /// <summary> Field "MAX_RESP_TIME" at 0x8, width: 8 bits </summary> 1325 public IValueRegisterField MAX_RESP_TIME; 1326 /// <summary> Field "HEARTBEAT_PERIOD" at 0x10, width: 8 bits </summary> 1327 public IValueRegisterField HEARTBEAT_PERIOD; 1328 ProtCap3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ProtCap3Type1329 public ProtCap3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1330 { 1331 parent.RegistersCollection.DefineRegister(272, 0, true) 1332 .WithValueField(0, 8, out NUM_OF_CMS_REGIONS, name: "NUM_OF_CMS_REGIONS") 1333 .WithValueField(8, 8, out MAX_RESP_TIME, name: "MAX_RESP_TIME") 1334 .WithValueField(16, 8, out HEARTBEAT_PERIOD, name: "HEARTBEAT_PERIOD"); 1335 } 1336 } 1337 1338 public struct DeviceId0Type 1339 { 1340 /// <summary> Field "DESC_TYPE" at 0x0, width: 8 bits </summary> 1341 public IValueRegisterField DESC_TYPE; 1342 /// <summary> Field "VENDOR_SPECIFIC_STR_LENGTH" at 0x8, width: 8 bits </summary> 1343 public IValueRegisterField VENDOR_SPECIFIC_STR_LENGTH; 1344 /// <summary> Field "DATA" at 0x10, width: 16 bits </summary> 1345 public IValueRegisterField DATA; 1346 DeviceId0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId0Type1347 public DeviceId0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1348 { 1349 parent.RegistersCollection.DefineRegister(276, 0, true) 1350 .WithValueField(0, 8, out DESC_TYPE, name: "DESC_TYPE") 1351 .WithValueField(8, 8, out VENDOR_SPECIFIC_STR_LENGTH, name: "VENDOR_SPECIFIC_STR_LENGTH") 1352 .WithValueField(16, 16, out DATA, name: "DATA"); 1353 } 1354 } 1355 1356 public struct DeviceId1Type 1357 { 1358 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1359 public IValueRegisterField DATA; 1360 DeviceId1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId1Type1361 public DeviceId1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1362 { 1363 parent.RegistersCollection.DefineRegister(280, 0, true) 1364 .WithValueField(0, 32, out DATA, name: "DATA"); 1365 } 1366 } 1367 1368 public struct DeviceId2Type 1369 { 1370 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1371 public IValueRegisterField DATA; 1372 DeviceId2TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId2Type1373 public DeviceId2Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1374 { 1375 parent.RegistersCollection.DefineRegister(284, 0, true) 1376 .WithValueField(0, 32, out DATA, name: "DATA"); 1377 } 1378 } 1379 1380 public struct DeviceId3Type 1381 { 1382 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1383 public IValueRegisterField DATA; 1384 DeviceId3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId3Type1385 public DeviceId3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1386 { 1387 parent.RegistersCollection.DefineRegister(288, 0, true) 1388 .WithValueField(0, 32, out DATA, name: "DATA"); 1389 } 1390 } 1391 1392 public struct DeviceId4Type 1393 { 1394 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1395 public IValueRegisterField DATA; 1396 DeviceId4TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId4Type1397 public DeviceId4Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1398 { 1399 parent.RegistersCollection.DefineRegister(292, 0, true) 1400 .WithValueField(0, 32, out DATA, name: "DATA"); 1401 } 1402 } 1403 1404 public struct DeviceId5Type 1405 { 1406 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1407 public IValueRegisterField DATA; 1408 DeviceId5TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceId5Type1409 public DeviceId5Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1410 { 1411 parent.RegistersCollection.DefineRegister(296, 0, true) 1412 .WithValueField(0, 32, out DATA, name: "DATA"); 1413 } 1414 } 1415 1416 public struct DeviceIdReservedType 1417 { 1418 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1419 public IValueRegisterField DATA; 1420 DeviceIdReservedTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceIdReservedType1421 public DeviceIdReservedType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1422 { 1423 parent.RegistersCollection.DefineRegister(300, 0, true) 1424 .WithValueField(0, 32, out DATA, mode: FieldMode.Read, name: "DATA"); 1425 } 1426 } 1427 1428 public struct DeviceStatus0Type 1429 { 1430 /// <summary> Field "DEV_STATUS" at 0x0, width: 8 bits </summary> 1431 public IValueRegisterField DEV_STATUS; 1432 /// <summary> Field "PROT_ERROR" at 0x8, width: 8 bits </summary> 1433 public IValueRegisterField PROT_ERROR; 1434 /// <summary> Field "REC_REASON_CODE" at 0x10, width: 16 bits </summary> 1435 public IValueRegisterField REC_REASON_CODE; 1436 DeviceStatus0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceStatus0Type1437 public DeviceStatus0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1438 { 1439 parent.RegistersCollection.DefineRegister(304, 0, true) 1440 .WithValueField(0, 8, out DEV_STATUS, name: "DEV_STATUS") 1441 .WithValueField(8, 8, out PROT_ERROR, mode: FieldMode.ReadToClear | FieldMode.Write, name: "PROT_ERROR") 1442 .WithValueField(16, 16, out REC_REASON_CODE, name: "REC_REASON_CODE"); 1443 } 1444 } 1445 1446 public struct DeviceStatus1Type 1447 { 1448 /// <summary> Field "HEARTBEAT" at 0x0, width: 16 bits </summary> 1449 public IValueRegisterField HEARTBEAT; 1450 /// <summary> Field "VENDOR_STATUS_LENGTH" at 0x10, width: 9 bits </summary> 1451 public IValueRegisterField VENDOR_STATUS_LENGTH; 1452 /// <summary> Field "VENDOR_STATUS" at 0x19, width: 7 bits </summary> 1453 public IValueRegisterField VENDOR_STATUS; 1454 DeviceStatus1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceStatus1Type1455 public DeviceStatus1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1456 { 1457 parent.RegistersCollection.DefineRegister(308, 0, true) 1458 .WithValueField(0, 16, out HEARTBEAT, name: "HEARTBEAT") 1459 .WithValueField(16, 9, out VENDOR_STATUS_LENGTH, name: "VENDOR_STATUS_LENGTH") 1460 .WithValueField(25, 7, out VENDOR_STATUS, name: "VENDOR_STATUS"); 1461 } 1462 } 1463 1464 public struct DeviceResetType 1465 { 1466 /// <summary> Field "RESET_CTRL" at 0x0, width: 8 bits </summary> 1467 public IValueRegisterField RESET_CTRL; 1468 /// <summary> Field "FORCED_RECOVERY" at 0x8, width: 8 bits </summary> 1469 public IValueRegisterField FORCED_RECOVERY; 1470 /// <summary> Field "IF_CTRL" at 0x10, width: 8 bits </summary> 1471 public IValueRegisterField IF_CTRL; 1472 DeviceResetTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.DeviceResetType1473 public DeviceResetType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1474 { 1475 parent.RegistersCollection.DefineRegister(312, 0, true) 1476 .WithValueField(0, 8, out RESET_CTRL, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RESET_CTRL") 1477 .WithValueField(8, 8, out FORCED_RECOVERY, name: "FORCED_RECOVERY") 1478 .WithValueField(16, 8, out IF_CTRL, name: "IF_CTRL"); 1479 } 1480 } 1481 1482 public struct RecoveryCtrlType 1483 { 1484 /// <summary> Field "CMS" at 0x0, width: 8 bits </summary> 1485 public IValueRegisterField CMS; 1486 /// <summary> Field "REC_IMG_SEL" at 0x8, width: 8 bits </summary> 1487 public IValueRegisterField REC_IMG_SEL; 1488 /// <summary> Field "ACTIVATE_REC_IMG" at 0x10, width: 8 bits </summary> 1489 public IValueRegisterField ACTIVATE_REC_IMG; 1490 RecoveryCtrlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.RecoveryCtrlType1491 public RecoveryCtrlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1492 { 1493 parent.RegistersCollection.DefineRegister(316, 0, true) 1494 .WithValueField(0, 8, out CMS, name: "CMS") 1495 .WithValueField(8, 8, out REC_IMG_SEL, name: "REC_IMG_SEL") 1496 .WithValueField(16, 8, out ACTIVATE_REC_IMG, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "ACTIVATE_REC_IMG"); 1497 } 1498 } 1499 1500 public struct RecoveryStatusType 1501 { 1502 /// <summary> Field "DEV_REC_STATUS" at 0x0, width: 4 bits </summary> 1503 public IValueRegisterField DEV_REC_STATUS; 1504 /// <summary> Field "REC_IMG_INDEX" at 0x4, width: 4 bits </summary> 1505 public IValueRegisterField REC_IMG_INDEX; 1506 /// <summary> Field "VENDOR_SPECIFIC_STATUS" at 0x8, width: 8 bits </summary> 1507 public IValueRegisterField VENDOR_SPECIFIC_STATUS; 1508 RecoveryStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.RecoveryStatusType1509 public RecoveryStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1510 { 1511 parent.RegistersCollection.DefineRegister(320, 0, true) 1512 .WithValueField(0, 4, out DEV_REC_STATUS, name: "DEV_REC_STATUS") 1513 .WithValueField(4, 4, out REC_IMG_INDEX, name: "REC_IMG_INDEX") 1514 .WithValueField(8, 8, out VENDOR_SPECIFIC_STATUS, name: "VENDOR_SPECIFIC_STATUS"); 1515 } 1516 } 1517 1518 public struct HwStatusType 1519 { 1520 /// <summary> Field "TEMP_CRITICAL" at 0x0, width: 1 bits </summary> 1521 public IFlagRegisterField TEMP_CRITICAL; 1522 /// <summary> Field "SOFT_ERR" at 0x1, width: 1 bits </summary> 1523 public IFlagRegisterField SOFT_ERR; 1524 /// <summary> Field "FATAL_ERR" at 0x2, width: 1 bits </summary> 1525 public IFlagRegisterField FATAL_ERR; 1526 /// <summary> Field "RESERVED_7_3" at 0x3, width: 5 bits </summary> 1527 public IValueRegisterField RESERVED_7_3; 1528 /// <summary> Field "VENDOR_HW_STATUS" at 0x8, width: 8 bits </summary> 1529 public IValueRegisterField VENDOR_HW_STATUS; 1530 /// <summary> Field "CTEMP" at 0x10, width: 8 bits </summary> 1531 public IValueRegisterField CTEMP; 1532 /// <summary> Field "VENDOR_HW_STATUS_LEN" at 0x18, width: 8 bits </summary> 1533 public IValueRegisterField VENDOR_HW_STATUS_LEN; 1534 HwStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.HwStatusType1535 public HwStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1536 { 1537 parent.RegistersCollection.DefineRegister(324, 0, true) 1538 .WithFlag(0, out TEMP_CRITICAL, name: "TEMP_CRITICAL") 1539 .WithFlag(1, out SOFT_ERR, name: "SOFT_ERR") 1540 .WithFlag(2, out FATAL_ERR, name: "FATAL_ERR") 1541 .WithValueField(3, 5, out RESERVED_7_3, name: "RESERVED_7_3") 1542 .WithValueField(8, 8, out VENDOR_HW_STATUS, name: "VENDOR_HW_STATUS") 1543 .WithValueField(16, 8, out CTEMP, name: "CTEMP") 1544 .WithValueField(24, 8, out VENDOR_HW_STATUS_LEN, name: "VENDOR_HW_STATUS_LEN"); 1545 } 1546 } 1547 1548 public struct IndirectFifoCtrl0Type 1549 { 1550 /// <summary> Field "CMS" at 0x0, width: 8 bits </summary> 1551 public IValueRegisterField CMS; 1552 /// <summary> Field "RESET" at 0x8, width: 8 bits </summary> 1553 public IValueRegisterField RESET; 1554 IndirectFifoCtrl0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoCtrl0Type1555 public IndirectFifoCtrl0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1556 { 1557 parent.RegistersCollection.DefineRegister(328, 0, true) 1558 .WithValueField(0, 8, out CMS, name: "CMS") 1559 .WithValueField(8, 8, out RESET, name: "RESET"); 1560 } 1561 } 1562 1563 public struct IndirectFifoCtrl1Type 1564 { 1565 /// <summary> Field "IMAGE_SIZE" at 0x0, width: 32 bits </summary> 1566 public IValueRegisterField IMAGE_SIZE; 1567 IndirectFifoCtrl1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoCtrl1Type1568 public IndirectFifoCtrl1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1569 { 1570 parent.RegistersCollection.DefineRegister(332, 0, true) 1571 .WithValueField(0, 32, out IMAGE_SIZE, name: "IMAGE_SIZE"); 1572 } 1573 } 1574 1575 public struct IndirectFifoStatus0Type 1576 { 1577 /// <summary> Field "EMPTY" at 0x0, width: 1 bits </summary> 1578 public IFlagRegisterField EMPTY; 1579 /// <summary> Field "FULL" at 0x1, width: 1 bits </summary> 1580 public IFlagRegisterField FULL; 1581 /// <summary> Field "REGION_TYPE" at 0x8, width: 3 bits </summary> 1582 public IValueRegisterField REGION_TYPE; 1583 IndirectFifoStatus0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoStatus0Type1584 public IndirectFifoStatus0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1585 { 1586 parent.RegistersCollection.DefineRegister(336, 1, true) 1587 .WithFlag(0, out EMPTY, mode: FieldMode.Read, name: "EMPTY") 1588 .WithFlag(1, out FULL, mode: FieldMode.Read, name: "FULL") 1589 .WithValueField(8, 3, out REGION_TYPE, mode: FieldMode.Read, name: "REGION_TYPE"); 1590 } 1591 } 1592 1593 public struct IndirectFifoStatus1Type 1594 { 1595 /// <summary> Field "WRITE_INDEX" at 0x0, width: 32 bits </summary> 1596 public IValueRegisterField WRITE_INDEX; 1597 IndirectFifoStatus1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoStatus1Type1598 public IndirectFifoStatus1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1599 { 1600 parent.RegistersCollection.DefineRegister(340, 0, true) 1601 .WithValueField(0, 32, out WRITE_INDEX, mode: FieldMode.Read, name: "WRITE_INDEX"); 1602 } 1603 } 1604 1605 public struct IndirectFifoStatus2Type 1606 { 1607 /// <summary> Field "READ_INDEX" at 0x0, width: 32 bits </summary> 1608 public IValueRegisterField READ_INDEX; 1609 IndirectFifoStatus2TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoStatus2Type1610 public IndirectFifoStatus2Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1611 { 1612 parent.RegistersCollection.DefineRegister(344, 0, true) 1613 .WithValueField(0, 32, out READ_INDEX, mode: FieldMode.Read, name: "READ_INDEX"); 1614 } 1615 } 1616 1617 public struct IndirectFifoStatus3Type 1618 { 1619 /// <summary> Field "FIFO_SIZE" at 0x0, width: 32 bits </summary> 1620 public IValueRegisterField FIFO_SIZE; 1621 IndirectFifoStatus3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoStatus3Type1622 public IndirectFifoStatus3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1623 { 1624 parent.RegistersCollection.DefineRegister(348, 4294967295, true) 1625 .WithValueField(0, 32, out FIFO_SIZE, mode: FieldMode.Read, name: "FIFO_SIZE"); 1626 } 1627 } 1628 1629 public struct IndirectFifoStatus4Type 1630 { 1631 /// <summary> Field "MAX_TRANSFER_SIZE" at 0x0, width: 32 bits </summary> 1632 public IValueRegisterField MAX_TRANSFER_SIZE; 1633 IndirectFifoStatus4TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoStatus4Type1634 public IndirectFifoStatus4Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1635 { 1636 parent.RegistersCollection.DefineRegister(352, 0, true) 1637 .WithValueField(0, 32, out MAX_TRANSFER_SIZE, mode: FieldMode.Read, name: "MAX_TRANSFER_SIZE"); 1638 } 1639 } 1640 1641 public struct IndirectFifoReservedType 1642 { 1643 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1644 public IValueRegisterField DATA; 1645 IndirectFifoReservedTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoReservedType1646 public IndirectFifoReservedType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1647 { 1648 parent.RegistersCollection.DefineRegister(356, 0, true) 1649 .WithValueField(0, 32, out DATA, mode: FieldMode.Read, name: "DATA"); 1650 } 1651 } 1652 1653 public struct IndirectFifoDataType 1654 { 1655 /// <summary> Field "DATA" at 0x0, width: 32 bits </summary> 1656 public IValueRegisterField DATA; 1657 IndirectFifoDataTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IndirectFifoDataType1658 public IndirectFifoDataType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1659 { 1660 parent.RegistersCollection.DefineRegister(360, 0, true) 1661 .WithValueField(0, 32, out DATA, name: "DATA"); 1662 } 1663 } 1664 1665 public struct StbyCrControlType 1666 { 1667 /// <summary> Field "PENDING_RX_NACK" at 0x0, width: 1 bits </summary> 1668 public IFlagRegisterField PENDING_RX_NACK; 1669 /// <summary> Field "HANDOFF_DELAY_NACK" at 0x1, width: 1 bits </summary> 1670 public IFlagRegisterField HANDOFF_DELAY_NACK; 1671 /// <summary> Field "ACR_FSM_OP_SELECT" at 0x2, width: 1 bits </summary> 1672 public IFlagRegisterField ACR_FSM_OP_SELECT; 1673 /// <summary> Field "PRIME_ACCEPT_GETACCCR" at 0x3, width: 1 bits </summary> 1674 public IFlagRegisterField PRIME_ACCEPT_GETACCCR; 1675 /// <summary> Field "HANDOFF_DEEP_SLEEP" at 0x4, width: 1 bits </summary> 1676 public IFlagRegisterField HANDOFF_DEEP_SLEEP; 1677 /// <summary> Field "CR_REQUEST_SEND" at 0x5, width: 1 bits </summary> 1678 public IFlagRegisterField CR_REQUEST_SEND; 1679 /// <summary> Field "BAST_CCC_IBI_RING" at 0x8, width: 3 bits </summary> 1680 public IValueRegisterField BAST_CCC_IBI_RING; 1681 /// <summary> Field "TARGET_XACT_ENABLE" at 0xc, width: 1 bits </summary> 1682 public IFlagRegisterField TARGET_XACT_ENABLE; 1683 /// <summary> Field "DAA_SETAASA_ENABLE" at 0xd, width: 1 bits </summary> 1684 public IFlagRegisterField DAA_SETAASA_ENABLE; 1685 /// <summary> Field "DAA_SETDASA_ENABLE" at 0xe, width: 1 bits </summary> 1686 public IFlagRegisterField DAA_SETDASA_ENABLE; 1687 /// <summary> Field "DAA_ENTDAA_ENABLE" at 0xf, width: 1 bits </summary> 1688 public IFlagRegisterField DAA_ENTDAA_ENABLE; 1689 /// <summary> Field "RSTACT_DEFBYTE_02" at 0x14, width: 1 bits </summary> 1690 public IFlagRegisterField RSTACT_DEFBYTE_02; 1691 /// <summary> Field "STBY_CR_ENABLE_INIT" at 0x1e, width: 2 bits </summary> 1692 public IValueRegisterField STBY_CR_ENABLE_INIT; 1693 StbyCrControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrControlType1694 public StbyCrControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1695 { 1696 parent.RegistersCollection.DefineRegister(388, 4096, true) 1697 .WithFlag(0, out PENDING_RX_NACK, name: "PENDING_RX_NACK") 1698 .WithFlag(1, out HANDOFF_DELAY_NACK, name: "HANDOFF_DELAY_NACK") 1699 .WithFlag(2, out ACR_FSM_OP_SELECT, name: "ACR_FSM_OP_SELECT") 1700 .WithFlag(3, out PRIME_ACCEPT_GETACCCR, name: "PRIME_ACCEPT_GETACCCR") 1701 .WithFlag(4, out HANDOFF_DEEP_SLEEP, mode: FieldMode.Read | FieldMode.Write, name: "HANDOFF_DEEP_SLEEP") 1702 .WithFlag(5, out CR_REQUEST_SEND, mode: FieldMode.Write, name: "CR_REQUEST_SEND") 1703 .WithValueField(8, 3, out BAST_CCC_IBI_RING, name: "BAST_CCC_IBI_RING") 1704 .WithFlag(12, out TARGET_XACT_ENABLE, name: "TARGET_XACT_ENABLE") 1705 .WithFlag(13, out DAA_SETAASA_ENABLE, name: "DAA_SETAASA_ENABLE") 1706 .WithFlag(14, out DAA_SETDASA_ENABLE, name: "DAA_SETDASA_ENABLE") 1707 .WithFlag(15, out DAA_ENTDAA_ENABLE, name: "DAA_ENTDAA_ENABLE") 1708 .WithFlag(20, out RSTACT_DEFBYTE_02, name: "RSTACT_DEFBYTE_02") 1709 .WithValueField(30, 2, out STBY_CR_ENABLE_INIT, name: "STBY_CR_ENABLE_INIT"); 1710 } 1711 } 1712 1713 public struct StbyCrDeviceAddrType 1714 { 1715 /// <summary> Field "STATIC_ADDR" at 0x0, width: 7 bits </summary> 1716 public IValueRegisterField STATIC_ADDR; 1717 /// <summary> Field "STATIC_ADDR_VALID" at 0xf, width: 1 bits </summary> 1718 public IFlagRegisterField STATIC_ADDR_VALID; 1719 /// <summary> Field "DYNAMIC_ADDR" at 0x10, width: 7 bits </summary> 1720 public IValueRegisterField DYNAMIC_ADDR; 1721 /// <summary> Field "DYNAMIC_ADDR_VALID" at 0x1f, width: 1 bits </summary> 1722 public IFlagRegisterField DYNAMIC_ADDR_VALID; 1723 StbyCrDeviceAddrTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrDeviceAddrType1724 public StbyCrDeviceAddrType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1725 { 1726 parent.RegistersCollection.DefineRegister(392, 0, true) 1727 .WithValueField(0, 7, out STATIC_ADDR, name: "STATIC_ADDR") 1728 .WithFlag(15, out STATIC_ADDR_VALID, name: "STATIC_ADDR_VALID") 1729 .WithValueField(16, 7, out DYNAMIC_ADDR, name: "DYNAMIC_ADDR") 1730 .WithFlag(31, out DYNAMIC_ADDR_VALID, name: "DYNAMIC_ADDR_VALID"); 1731 } 1732 } 1733 1734 public struct StbyCrCapabilitiesType 1735 { 1736 /// <summary> Field "SIMPLE_CRR_SUPPORT" at 0x5, width: 1 bits </summary> 1737 public IFlagRegisterField SIMPLE_CRR_SUPPORT; 1738 /// <summary> Field "TARGET_XACT_SUPPORT" at 0xc, width: 1 bits </summary> 1739 public IFlagRegisterField TARGET_XACT_SUPPORT; 1740 /// <summary> Field "DAA_SETAASA_SUPPORT" at 0xd, width: 1 bits </summary> 1741 public IFlagRegisterField DAA_SETAASA_SUPPORT; 1742 /// <summary> Field "DAA_SETDASA_SUPPORT" at 0xe, width: 1 bits </summary> 1743 public IFlagRegisterField DAA_SETDASA_SUPPORT; 1744 /// <summary> Field "DAA_ENTDAA_SUPPORT" at 0xf, width: 1 bits </summary> 1745 public IFlagRegisterField DAA_ENTDAA_SUPPORT; 1746 StbyCrCapabilitiesTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrCapabilitiesType1747 public StbyCrCapabilitiesType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1748 { 1749 parent.RegistersCollection.DefineRegister(396, 28672, true) 1750 .WithFlag(5, out SIMPLE_CRR_SUPPORT, mode: FieldMode.Read, name: "SIMPLE_CRR_SUPPORT") 1751 .WithFlag(12, out TARGET_XACT_SUPPORT, mode: FieldMode.Read, name: "TARGET_XACT_SUPPORT") 1752 .WithFlag(13, out DAA_SETAASA_SUPPORT, mode: FieldMode.Read, name: "DAA_SETAASA_SUPPORT") 1753 .WithFlag(14, out DAA_SETDASA_SUPPORT, mode: FieldMode.Read, name: "DAA_SETDASA_SUPPORT") 1754 .WithFlag(15, out DAA_ENTDAA_SUPPORT, mode: FieldMode.Read, name: "DAA_ENTDAA_SUPPORT"); 1755 } 1756 } 1757 1758 public struct Rsvd0Type 1759 { 1760 /// <summary> Field "__rsvd" at 0x0, width: 32 bits </summary> 1761 public IValueRegisterField __RSVD; 1762 Rsvd0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.Rsvd0Type1763 public Rsvd0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1764 { 1765 parent.RegistersCollection.DefineRegister(400, 0, true) 1766 .WithValueField(0, 32, out __RSVD, name: "__RSVD"); 1767 } 1768 } 1769 1770 public struct StbyCrStatusType 1771 { 1772 /// <summary> Field "AC_CURRENT_OWN" at 0x2, width: 1 bits </summary> 1773 public IFlagRegisterField AC_CURRENT_OWN; 1774 /// <summary> Field "SIMPLE_CRR_STATUS" at 0x5, width: 3 bits </summary> 1775 public IValueRegisterField SIMPLE_CRR_STATUS; 1776 /// <summary> Field "HJ_REQ_STATUS" at 0x8, width: 1 bits </summary> 1777 public IFlagRegisterField HJ_REQ_STATUS; 1778 StbyCrStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrStatusType1779 public StbyCrStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1780 { 1781 parent.RegistersCollection.DefineRegister(404, 0, true) 1782 .WithFlag(2, out AC_CURRENT_OWN, name: "AC_CURRENT_OWN") 1783 .WithValueField(5, 3, out SIMPLE_CRR_STATUS, name: "SIMPLE_CRR_STATUS") 1784 .WithFlag(8, out HJ_REQ_STATUS, name: "HJ_REQ_STATUS"); 1785 } 1786 } 1787 1788 public struct StbyCrDeviceCharType 1789 { 1790 /// <summary> Field "PID_HI" at 0x1, width: 15 bits </summary> 1791 public IValueRegisterField PID_HI; 1792 /// <summary> Field "DCR" at 0x10, width: 8 bits </summary> 1793 public IValueRegisterField DCR; 1794 /// <summary> Field "BCR_VAR" at 0x18, width: 5 bits </summary> 1795 public IValueRegisterField BCR_VAR; 1796 /// <summary> Field "BCR_FIXED" at 0x1d, width: 3 bits </summary> 1797 public IValueRegisterField BCR_FIXED; 1798 StbyCrDeviceCharTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrDeviceCharType1799 public StbyCrDeviceCharType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1800 { 1801 parent.RegistersCollection.DefineRegister(408, 4294967294, true) 1802 .WithValueField(1, 15, out PID_HI, name: "PID_HI") 1803 .WithValueField(16, 8, out DCR, name: "DCR") 1804 .WithValueField(24, 5, out BCR_VAR, name: "BCR_VAR") 1805 .WithValueField(29, 3, out BCR_FIXED, name: "BCR_FIXED"); 1806 } 1807 } 1808 1809 public struct StbyCrDevicePidLoType 1810 { 1811 /// <summary> Field "PID_LO" at 0x0, width: 32 bits </summary> 1812 public IValueRegisterField PID_LO; 1813 StbyCrDevicePidLoTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrDevicePidLoType1814 public StbyCrDevicePidLoType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1815 { 1816 parent.RegistersCollection.DefineRegister(412, 4294967295, true) 1817 .WithValueField(0, 32, out PID_LO, name: "PID_LO"); 1818 } 1819 } 1820 1821 public struct StbyCrIntrStatusType 1822 { 1823 /// <summary> Field "ACR_HANDOFF_OK_REMAIN_STAT" at 0x0, width: 1 bits </summary> 1824 public IFlagRegisterField ACR_HANDOFF_OK_REMAIN_STAT; 1825 /// <summary> Field "ACR_HANDOFF_OK_PRIMED_STAT" at 0x1, width: 1 bits </summary> 1826 public IFlagRegisterField ACR_HANDOFF_OK_PRIMED_STAT; 1827 /// <summary> Field "ACR_HANDOFF_ERR_FAIL_STAT" at 0x2, width: 1 bits </summary> 1828 public IFlagRegisterField ACR_HANDOFF_ERR_FAIL_STAT; 1829 /// <summary> Field "ACR_HANDOFF_ERR_M3_STAT" at 0x3, width: 1 bits </summary> 1830 public IFlagRegisterField ACR_HANDOFF_ERR_M3_STAT; 1831 /// <summary> Field "CRR_RESPONSE_STAT" at 0xa, width: 1 bits </summary> 1832 public IFlagRegisterField CRR_RESPONSE_STAT; 1833 /// <summary> Field "STBY_CR_DYN_ADDR_STAT" at 0xb, width: 1 bits </summary> 1834 public IFlagRegisterField STBY_CR_DYN_ADDR_STAT; 1835 /// <summary> Field "STBY_CR_ACCEPT_NACKED_STAT" at 0xc, width: 1 bits </summary> 1836 public IFlagRegisterField STBY_CR_ACCEPT_NACKED_STAT; 1837 /// <summary> Field "STBY_CR_ACCEPT_OK_STAT" at 0xd, width: 1 bits </summary> 1838 public IFlagRegisterField STBY_CR_ACCEPT_OK_STAT; 1839 /// <summary> Field "STBY_CR_ACCEPT_ERR_STAT" at 0xe, width: 1 bits </summary> 1840 public IFlagRegisterField STBY_CR_ACCEPT_ERR_STAT; 1841 /// <summary> Field "STBY_CR_OP_RSTACT_STAT" at 0x10, width: 1 bits </summary> 1842 public IFlagRegisterField STBY_CR_OP_RSTACT_STAT; 1843 /// <summary> Field "CCC_PARAM_MODIFIED_STAT" at 0x11, width: 1 bits </summary> 1844 public IFlagRegisterField CCC_PARAM_MODIFIED_STAT; 1845 /// <summary> Field "CCC_UNHANDLED_NACK_STAT" at 0x12, width: 1 bits </summary> 1846 public IFlagRegisterField CCC_UNHANDLED_NACK_STAT; 1847 /// <summary> Field "CCC_FATAL_RSTDAA_ERR_STAT" at 0x13, width: 1 bits </summary> 1848 public IFlagRegisterField CCC_FATAL_RSTDAA_ERR_STAT; 1849 StbyCrIntrStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrIntrStatusType1850 public StbyCrIntrStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1851 { 1852 parent.RegistersCollection.DefineRegister(416, 0, true) 1853 .WithFlag(0, out ACR_HANDOFF_OK_REMAIN_STAT, name: "ACR_HANDOFF_OK_REMAIN_STAT") 1854 .WithFlag(1, out ACR_HANDOFF_OK_PRIMED_STAT, name: "ACR_HANDOFF_OK_PRIMED_STAT") 1855 .WithFlag(2, out ACR_HANDOFF_ERR_FAIL_STAT, name: "ACR_HANDOFF_ERR_FAIL_STAT") 1856 .WithFlag(3, out ACR_HANDOFF_ERR_M3_STAT, name: "ACR_HANDOFF_ERR_M3_STAT") 1857 .WithFlag(10, out CRR_RESPONSE_STAT, name: "CRR_RESPONSE_STAT") 1858 .WithFlag(11, out STBY_CR_DYN_ADDR_STAT, name: "STBY_CR_DYN_ADDR_STAT") 1859 .WithFlag(12, out STBY_CR_ACCEPT_NACKED_STAT, name: "STBY_CR_ACCEPT_NACKED_STAT") 1860 .WithFlag(13, out STBY_CR_ACCEPT_OK_STAT, name: "STBY_CR_ACCEPT_OK_STAT") 1861 .WithFlag(14, out STBY_CR_ACCEPT_ERR_STAT, name: "STBY_CR_ACCEPT_ERR_STAT") 1862 .WithFlag(16, out STBY_CR_OP_RSTACT_STAT, name: "STBY_CR_OP_RSTACT_STAT") 1863 .WithFlag(17, out CCC_PARAM_MODIFIED_STAT, name: "CCC_PARAM_MODIFIED_STAT") 1864 .WithFlag(18, out CCC_UNHANDLED_NACK_STAT, name: "CCC_UNHANDLED_NACK_STAT") 1865 .WithFlag(19, out CCC_FATAL_RSTDAA_ERR_STAT, name: "CCC_FATAL_RSTDAA_ERR_STAT"); 1866 } 1867 } 1868 1869 public struct Rsvd1Type 1870 { 1871 /// <summary> Field "__rsvd" at 0x0, width: 32 bits </summary> 1872 public IValueRegisterField __RSVD; 1873 Rsvd1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.Rsvd1Type1874 public Rsvd1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1875 { 1876 parent.RegistersCollection.DefineRegister(420, 0, true) 1877 .WithValueField(0, 32, out __RSVD, name: "__RSVD"); 1878 } 1879 } 1880 1881 public struct StbyCrIntrSignalEnableType 1882 { 1883 /// <summary> Field "ACR_HANDOFF_OK_REMAIN_SIGNAL_EN" at 0x0, width: 1 bits </summary> 1884 public IFlagRegisterField ACR_HANDOFF_OK_REMAIN_SIGNAL_EN; 1885 /// <summary> Field "ACR_HANDOFF_OK_PRIMED_SIGNAL_EN" at 0x1, width: 1 bits </summary> 1886 public IFlagRegisterField ACR_HANDOFF_OK_PRIMED_SIGNAL_EN; 1887 /// <summary> Field "ACR_HANDOFF_ERR_FAIL_SIGNAL_EN" at 0x2, width: 1 bits </summary> 1888 public IFlagRegisterField ACR_HANDOFF_ERR_FAIL_SIGNAL_EN; 1889 /// <summary> Field "ACR_HANDOFF_ERR_M3_SIGNAL_EN" at 0x3, width: 1 bits </summary> 1890 public IFlagRegisterField ACR_HANDOFF_ERR_M3_SIGNAL_EN; 1891 /// <summary> Field "CRR_RESPONSE_SIGNAL_EN" at 0xa, width: 1 bits </summary> 1892 public IFlagRegisterField CRR_RESPONSE_SIGNAL_EN; 1893 /// <summary> Field "STBY_CR_DYN_ADDR_SIGNAL_EN" at 0xb, width: 1 bits </summary> 1894 public IFlagRegisterField STBY_CR_DYN_ADDR_SIGNAL_EN; 1895 /// <summary> Field "STBY_CR_ACCEPT_NACKED_SIGNAL_EN" at 0xc, width: 1 bits </summary> 1896 public IFlagRegisterField STBY_CR_ACCEPT_NACKED_SIGNAL_EN; 1897 /// <summary> Field "STBY_CR_ACCEPT_OK_SIGNAL_EN" at 0xd, width: 1 bits </summary> 1898 public IFlagRegisterField STBY_CR_ACCEPT_OK_SIGNAL_EN; 1899 /// <summary> Field "STBY_CR_ACCEPT_ERR_SIGNAL_EN" at 0xe, width: 1 bits </summary> 1900 public IFlagRegisterField STBY_CR_ACCEPT_ERR_SIGNAL_EN; 1901 /// <summary> Field "STBY_CR_OP_RSTACT_SIGNAL_EN" at 0x10, width: 1 bits </summary> 1902 public IFlagRegisterField STBY_CR_OP_RSTACT_SIGNAL_EN; 1903 /// <summary> Field "CCC_PARAM_MODIFIED_SIGNAL_EN" at 0x11, width: 1 bits </summary> 1904 public IFlagRegisterField CCC_PARAM_MODIFIED_SIGNAL_EN; 1905 /// <summary> Field "CCC_UNHANDLED_NACK_SIGNAL_EN" at 0x12, width: 1 bits </summary> 1906 public IFlagRegisterField CCC_UNHANDLED_NACK_SIGNAL_EN; 1907 /// <summary> Field "CCC_FATAL_RSTDAA_ERR_SIGNAL_EN" at 0x13, width: 1 bits </summary> 1908 public IFlagRegisterField CCC_FATAL_RSTDAA_ERR_SIGNAL_EN; 1909 StbyCrIntrSignalEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrIntrSignalEnableType1910 public StbyCrIntrSignalEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1911 { 1912 parent.RegistersCollection.DefineRegister(424, 0, true) 1913 .WithFlag(0, out ACR_HANDOFF_OK_REMAIN_SIGNAL_EN, name: "ACR_HANDOFF_OK_REMAIN_SIGNAL_EN") 1914 .WithFlag(1, out ACR_HANDOFF_OK_PRIMED_SIGNAL_EN, name: "ACR_HANDOFF_OK_PRIMED_SIGNAL_EN") 1915 .WithFlag(2, out ACR_HANDOFF_ERR_FAIL_SIGNAL_EN, name: "ACR_HANDOFF_ERR_FAIL_SIGNAL_EN") 1916 .WithFlag(3, out ACR_HANDOFF_ERR_M3_SIGNAL_EN, name: "ACR_HANDOFF_ERR_M3_SIGNAL_EN") 1917 .WithFlag(10, out CRR_RESPONSE_SIGNAL_EN, name: "CRR_RESPONSE_SIGNAL_EN") 1918 .WithFlag(11, out STBY_CR_DYN_ADDR_SIGNAL_EN, name: "STBY_CR_DYN_ADDR_SIGNAL_EN") 1919 .WithFlag(12, out STBY_CR_ACCEPT_NACKED_SIGNAL_EN, name: "STBY_CR_ACCEPT_NACKED_SIGNAL_EN") 1920 .WithFlag(13, out STBY_CR_ACCEPT_OK_SIGNAL_EN, name: "STBY_CR_ACCEPT_OK_SIGNAL_EN") 1921 .WithFlag(14, out STBY_CR_ACCEPT_ERR_SIGNAL_EN, name: "STBY_CR_ACCEPT_ERR_SIGNAL_EN") 1922 .WithFlag(16, out STBY_CR_OP_RSTACT_SIGNAL_EN, name: "STBY_CR_OP_RSTACT_SIGNAL_EN") 1923 .WithFlag(17, out CCC_PARAM_MODIFIED_SIGNAL_EN, name: "CCC_PARAM_MODIFIED_SIGNAL_EN") 1924 .WithFlag(18, out CCC_UNHANDLED_NACK_SIGNAL_EN, name: "CCC_UNHANDLED_NACK_SIGNAL_EN") 1925 .WithFlag(19, out CCC_FATAL_RSTDAA_ERR_SIGNAL_EN, name: "CCC_FATAL_RSTDAA_ERR_SIGNAL_EN"); 1926 } 1927 } 1928 1929 public struct StbyCrIntrForceType 1930 { 1931 /// <summary> Field "CRR_RESPONSE_FORCE" at 0xa, width: 1 bits </summary> 1932 public IFlagRegisterField CRR_RESPONSE_FORCE; 1933 /// <summary> Field "STBY_CR_DYN_ADDR_FORCE" at 0xb, width: 1 bits </summary> 1934 public IFlagRegisterField STBY_CR_DYN_ADDR_FORCE; 1935 /// <summary> Field "STBY_CR_ACCEPT_NACKED_FORCE" at 0xc, width: 1 bits </summary> 1936 public IFlagRegisterField STBY_CR_ACCEPT_NACKED_FORCE; 1937 /// <summary> Field "STBY_CR_ACCEPT_OK_FORCE" at 0xd, width: 1 bits </summary> 1938 public IFlagRegisterField STBY_CR_ACCEPT_OK_FORCE; 1939 /// <summary> Field "STBY_CR_ACCEPT_ERR_FORCE" at 0xe, width: 1 bits </summary> 1940 public IFlagRegisterField STBY_CR_ACCEPT_ERR_FORCE; 1941 /// <summary> Field "STBY_CR_OP_RSTACT_FORCE" at 0x10, width: 1 bits </summary> 1942 public IFlagRegisterField STBY_CR_OP_RSTACT_FORCE; 1943 /// <summary> Field "CCC_PARAM_MODIFIED_FORCE" at 0x11, width: 1 bits </summary> 1944 public IFlagRegisterField CCC_PARAM_MODIFIED_FORCE; 1945 /// <summary> Field "CCC_UNHANDLED_NACK_FORCE" at 0x12, width: 1 bits </summary> 1946 public IFlagRegisterField CCC_UNHANDLED_NACK_FORCE; 1947 /// <summary> Field "CCC_FATAL_RSTDAA_ERR_FORCE" at 0x13, width: 1 bits </summary> 1948 public IFlagRegisterField CCC_FATAL_RSTDAA_ERR_FORCE; 1949 StbyCrIntrForceTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrIntrForceType1950 public StbyCrIntrForceType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1951 { 1952 parent.RegistersCollection.DefineRegister(428, 0, true) 1953 .WithFlag(10, out CRR_RESPONSE_FORCE, name: "CRR_RESPONSE_FORCE") 1954 .WithFlag(11, out STBY_CR_DYN_ADDR_FORCE, name: "STBY_CR_DYN_ADDR_FORCE") 1955 .WithFlag(12, out STBY_CR_ACCEPT_NACKED_FORCE, name: "STBY_CR_ACCEPT_NACKED_FORCE") 1956 .WithFlag(13, out STBY_CR_ACCEPT_OK_FORCE, name: "STBY_CR_ACCEPT_OK_FORCE") 1957 .WithFlag(14, out STBY_CR_ACCEPT_ERR_FORCE, name: "STBY_CR_ACCEPT_ERR_FORCE") 1958 .WithFlag(16, out STBY_CR_OP_RSTACT_FORCE, mode: FieldMode.Write, name: "STBY_CR_OP_RSTACT_FORCE") 1959 .WithFlag(17, out CCC_PARAM_MODIFIED_FORCE, name: "CCC_PARAM_MODIFIED_FORCE") 1960 .WithFlag(18, out CCC_UNHANDLED_NACK_FORCE, name: "CCC_UNHANDLED_NACK_FORCE") 1961 .WithFlag(19, out CCC_FATAL_RSTDAA_ERR_FORCE, name: "CCC_FATAL_RSTDAA_ERR_FORCE"); 1962 } 1963 } 1964 1965 public struct StbyCrCccConfigGetcapsType 1966 { 1967 /// <summary> Field "F2_CRCAP1_BUS_CONFIG" at 0x0, width: 3 bits </summary> 1968 public IValueRegisterField F2_CRCAP1_BUS_CONFIG; 1969 /// <summary> Field "F2_CRCAP2_DEV_INTERACT" at 0x8, width: 4 bits </summary> 1970 public IValueRegisterField F2_CRCAP2_DEV_INTERACT; 1971 StbyCrCccConfigGetcapsTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrCccConfigGetcapsType1972 public StbyCrCccConfigGetcapsType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1973 { 1974 parent.RegistersCollection.DefineRegister(432, 0, true) 1975 .WithValueField(0, 3, out F2_CRCAP1_BUS_CONFIG, name: "F2_CRCAP1_BUS_CONFIG") 1976 .WithValueField(8, 4, out F2_CRCAP2_DEV_INTERACT, name: "F2_CRCAP2_DEV_INTERACT"); 1977 } 1978 } 1979 1980 public struct StbyCrCccConfigRstactParamsType 1981 { 1982 /// <summary> Field "RST_ACTION" at 0x0, width: 8 bits </summary> 1983 public IValueRegisterField RST_ACTION; 1984 /// <summary> Field "RESET_TIME_PERIPHERAL" at 0x8, width: 8 bits </summary> 1985 public IValueRegisterField RESET_TIME_PERIPHERAL; 1986 /// <summary> Field "RESET_TIME_TARGET" at 0x10, width: 8 bits </summary> 1987 public IValueRegisterField RESET_TIME_TARGET; 1988 /// <summary> Field "RESET_DYNAMIC_ADDR" at 0x1f, width: 1 bits </summary> 1989 public IFlagRegisterField RESET_DYNAMIC_ADDR; 1990 StbyCrCccConfigRstactParamsTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrCccConfigRstactParamsType1991 public StbyCrCccConfigRstactParamsType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 1992 { 1993 parent.RegistersCollection.DefineRegister(436, 2147483648, true) 1994 .WithValueField(0, 8, out RST_ACTION, mode: FieldMode.Read, name: "RST_ACTION") 1995 .WithValueField(8, 8, out RESET_TIME_PERIPHERAL, name: "RESET_TIME_PERIPHERAL") 1996 .WithValueField(16, 8, out RESET_TIME_TARGET, name: "RESET_TIME_TARGET") 1997 .WithFlag(31, out RESET_DYNAMIC_ADDR, name: "RESET_DYNAMIC_ADDR"); 1998 } 1999 } 2000 2001 public struct StbyCrVirtDeviceAddrType 2002 { 2003 /// <summary> Field "VIRT_STATIC_ADDR" at 0x0, width: 7 bits </summary> 2004 public IValueRegisterField VIRT_STATIC_ADDR; 2005 /// <summary> Field "VIRT_STATIC_ADDR_VALID" at 0xf, width: 1 bits </summary> 2006 public IFlagRegisterField VIRT_STATIC_ADDR_VALID; 2007 /// <summary> Field "VIRT_DYNAMIC_ADDR" at 0x10, width: 7 bits </summary> 2008 public IValueRegisterField VIRT_DYNAMIC_ADDR; 2009 /// <summary> Field "VIRT_DYNAMIC_ADDR_VALID" at 0x1f, width: 1 bits </summary> 2010 public IFlagRegisterField VIRT_DYNAMIC_ADDR_VALID; 2011 StbyCrVirtDeviceAddrTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StbyCrVirtDeviceAddrType2012 public StbyCrVirtDeviceAddrType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2013 { 2014 parent.RegistersCollection.DefineRegister(440, 0, true) 2015 .WithValueField(0, 7, out VIRT_STATIC_ADDR, name: "VIRT_STATIC_ADDR") 2016 .WithFlag(15, out VIRT_STATIC_ADDR_VALID, name: "VIRT_STATIC_ADDR_VALID") 2017 .WithValueField(16, 7, out VIRT_DYNAMIC_ADDR, name: "VIRT_DYNAMIC_ADDR") 2018 .WithFlag(31, out VIRT_DYNAMIC_ADDR_VALID, name: "VIRT_DYNAMIC_ADDR_VALID"); 2019 } 2020 } 2021 2022 public struct Rsvd3Type 2023 { 2024 /// <summary> Field "__rsvd" at 0x0, width: 32 bits </summary> 2025 public IValueRegisterField __RSVD; 2026 Rsvd3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.Rsvd3Type2027 public Rsvd3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2028 { 2029 parent.RegistersCollection.DefineRegister(444, 0, true) 2030 .WithValueField(0, 32, out __RSVD, name: "__RSVD"); 2031 } 2032 } 2033 2034 public struct ControlType 2035 { 2036 /// <summary> Field "HJ_EN" at 0xa, width: 1 bits </summary> 2037 public IFlagRegisterField HJ_EN; 2038 /// <summary> Field "CRR_EN" at 0xb, width: 1 bits </summary> 2039 public IFlagRegisterField CRR_EN; 2040 /// <summary> Field "IBI_EN" at 0xc, width: 1 bits </summary> 2041 public IFlagRegisterField IBI_EN; 2042 /// <summary> Field "IBI_RETRY_NUM" at 0xd, width: 3 bits </summary> 2043 public IValueRegisterField IBI_RETRY_NUM; 2044 ControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ControlType2045 public ControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2046 { 2047 parent.RegistersCollection.DefineRegister(452, 5120, true) 2048 .WithFlag(10, out HJ_EN, name: "HJ_EN") 2049 .WithFlag(11, out CRR_EN, name: "CRR_EN") 2050 .WithFlag(12, out IBI_EN, name: "IBI_EN") 2051 .WithValueField(13, 3, out IBI_RETRY_NUM, name: "IBI_RETRY_NUM"); 2052 } 2053 } 2054 2055 public struct StatusType 2056 { 2057 /// <summary> Field "PROTOCOL_ERROR" at 0xd, width: 1 bits </summary> 2058 public IFlagRegisterField PROTOCOL_ERROR; 2059 /// <summary> Field "LAST_IBI_STATUS" at 0xe, width: 2 bits </summary> 2060 public IValueRegisterField LAST_IBI_STATUS; 2061 StatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.StatusType2062 public StatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2063 { 2064 parent.RegistersCollection.DefineRegister(456, 0, true) 2065 .WithFlag(13, out PROTOCOL_ERROR, mode: FieldMode.Read, name: "PROTOCOL_ERROR") 2066 .WithValueField(14, 2, out LAST_IBI_STATUS, mode: FieldMode.Read, name: "LAST_IBI_STATUS"); 2067 } 2068 } 2069 2070 public struct InterruptStatusType 2071 { 2072 /// <summary> Field "RX_DESC_STAT" at 0x0, width: 1 bits </summary> 2073 public IFlagRegisterField RX_DESC_STAT; 2074 /// <summary> Field "TX_DESC_STAT" at 0x1, width: 1 bits </summary> 2075 public IFlagRegisterField TX_DESC_STAT; 2076 /// <summary> Field "RX_DESC_TIMEOUT" at 0x2, width: 1 bits </summary> 2077 public IFlagRegisterField RX_DESC_TIMEOUT; 2078 /// <summary> Field "TX_DESC_TIMEOUT" at 0x3, width: 1 bits </summary> 2079 public IFlagRegisterField TX_DESC_TIMEOUT; 2080 /// <summary> Field "TX_DATA_THLD_STAT" at 0x8, width: 1 bits </summary> 2081 public IFlagRegisterField TX_DATA_THLD_STAT; 2082 /// <summary> Field "RX_DATA_THLD_STAT" at 0x9, width: 1 bits </summary> 2083 public IFlagRegisterField RX_DATA_THLD_STAT; 2084 /// <summary> Field "TX_DESC_THLD_STAT" at 0xa, width: 1 bits </summary> 2085 public IFlagRegisterField TX_DESC_THLD_STAT; 2086 /// <summary> Field "RX_DESC_THLD_STAT" at 0xb, width: 1 bits </summary> 2087 public IFlagRegisterField RX_DESC_THLD_STAT; 2088 /// <summary> Field "IBI_THLD_STAT" at 0xc, width: 1 bits </summary> 2089 public IFlagRegisterField IBI_THLD_STAT; 2090 /// <summary> Field "IBI_DONE" at 0xd, width: 1 bits </summary> 2091 public IFlagRegisterField IBI_DONE; 2092 /// <summary> Field "PENDING_INTERRUPT" at 0xf, width: 4 bits </summary> 2093 public IValueRegisterField PENDING_INTERRUPT; 2094 /// <summary> Field "TRANSFER_ABORT_STAT" at 0x19, width: 1 bits </summary> 2095 public IFlagRegisterField TRANSFER_ABORT_STAT; 2096 /// <summary> Field "TRANSFER_ERR_STAT" at 0x1f, width: 1 bits </summary> 2097 public IFlagRegisterField TRANSFER_ERR_STAT; 2098 InterruptStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.InterruptStatusType2099 public InterruptStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2100 { 2101 parent.RegistersCollection.DefineRegister(464, 0, true) 2102 .WithFlag(0, out RX_DESC_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RX_DESC_STAT") 2103 .WithFlag(1, out TX_DESC_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TX_DESC_STAT") 2104 .WithFlag(2, out RX_DESC_TIMEOUT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RX_DESC_TIMEOUT") 2105 .WithFlag(3, out TX_DESC_TIMEOUT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TX_DESC_TIMEOUT") 2106 .WithFlag(8, out TX_DATA_THLD_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TX_DATA_THLD_STAT") 2107 .WithFlag(9, out RX_DATA_THLD_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RX_DATA_THLD_STAT") 2108 .WithFlag(10, out TX_DESC_THLD_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TX_DESC_THLD_STAT") 2109 .WithFlag(11, out RX_DESC_THLD_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "RX_DESC_THLD_STAT") 2110 .WithFlag(12, out IBI_THLD_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "IBI_THLD_STAT") 2111 .WithFlag(13, out IBI_DONE, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "IBI_DONE") 2112 .WithValueField(15, 4, out PENDING_INTERRUPT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "PENDING_INTERRUPT") 2113 .WithFlag(25, out TRANSFER_ABORT_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TRANSFER_ABORT_STAT") 2114 .WithFlag(31, out TRANSFER_ERR_STAT, mode: FieldMode.Read | FieldMode.WriteOneToClear, name: "TRANSFER_ERR_STAT"); 2115 } 2116 } 2117 2118 public struct InterruptEnableType 2119 { 2120 /// <summary> Field "RX_DESC_STAT_EN" at 0x0, width: 1 bits </summary> 2121 public IFlagRegisterField RX_DESC_STAT_EN; 2122 /// <summary> Field "TX_DESC_STAT_EN" at 0x1, width: 1 bits </summary> 2123 public IFlagRegisterField TX_DESC_STAT_EN; 2124 /// <summary> Field "RX_DESC_TIMEOUT_EN" at 0x2, width: 1 bits </summary> 2125 public IFlagRegisterField RX_DESC_TIMEOUT_EN; 2126 /// <summary> Field "TX_DESC_TIMEOUT_EN" at 0x3, width: 1 bits </summary> 2127 public IFlagRegisterField TX_DESC_TIMEOUT_EN; 2128 /// <summary> Field "TX_DATA_THLD_STAT_EN" at 0x8, width: 1 bits </summary> 2129 public IFlagRegisterField TX_DATA_THLD_STAT_EN; 2130 /// <summary> Field "RX_DATA_THLD_STAT_EN" at 0x9, width: 1 bits </summary> 2131 public IFlagRegisterField RX_DATA_THLD_STAT_EN; 2132 /// <summary> Field "TX_DESC_THLD_STAT_EN" at 0xa, width: 1 bits </summary> 2133 public IFlagRegisterField TX_DESC_THLD_STAT_EN; 2134 /// <summary> Field "RX_DESC_THLD_STAT_EN" at 0xb, width: 1 bits </summary> 2135 public IFlagRegisterField RX_DESC_THLD_STAT_EN; 2136 /// <summary> Field "IBI_THLD_STAT_EN" at 0xc, width: 1 bits </summary> 2137 public IFlagRegisterField IBI_THLD_STAT_EN; 2138 /// <summary> Field "IBI_DONE_EN" at 0xd, width: 1 bits </summary> 2139 public IFlagRegisterField IBI_DONE_EN; 2140 /// <summary> Field "TRANSFER_ABORT_STAT_EN" at 0x19, width: 1 bits </summary> 2141 public IFlagRegisterField TRANSFER_ABORT_STAT_EN; 2142 /// <summary> Field "TRANSFER_ERR_STAT_EN" at 0x1f, width: 1 bits </summary> 2143 public IFlagRegisterField TRANSFER_ERR_STAT_EN; 2144 InterruptEnableTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.InterruptEnableType2145 public InterruptEnableType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2146 { 2147 parent.RegistersCollection.DefineRegister(468, 0, true) 2148 .WithFlag(0, out RX_DESC_STAT_EN, name: "RX_DESC_STAT_EN") 2149 .WithFlag(1, out TX_DESC_STAT_EN, name: "TX_DESC_STAT_EN") 2150 .WithFlag(2, out RX_DESC_TIMEOUT_EN, name: "RX_DESC_TIMEOUT_EN") 2151 .WithFlag(3, out TX_DESC_TIMEOUT_EN, name: "TX_DESC_TIMEOUT_EN") 2152 .WithFlag(8, out TX_DATA_THLD_STAT_EN, name: "TX_DATA_THLD_STAT_EN") 2153 .WithFlag(9, out RX_DATA_THLD_STAT_EN, name: "RX_DATA_THLD_STAT_EN") 2154 .WithFlag(10, out TX_DESC_THLD_STAT_EN, name: "TX_DESC_THLD_STAT_EN") 2155 .WithFlag(11, out RX_DESC_THLD_STAT_EN, name: "RX_DESC_THLD_STAT_EN") 2156 .WithFlag(12, out IBI_THLD_STAT_EN, name: "IBI_THLD_STAT_EN") 2157 .WithFlag(13, out IBI_DONE_EN, name: "IBI_DONE_EN") 2158 .WithFlag(25, out TRANSFER_ABORT_STAT_EN, name: "TRANSFER_ABORT_STAT_EN") 2159 .WithFlag(31, out TRANSFER_ERR_STAT_EN, name: "TRANSFER_ERR_STAT_EN"); 2160 } 2161 } 2162 2163 public struct InterruptForceType 2164 { 2165 /// <summary> Field "RX_DESC_STAT_FORCE" at 0x0, width: 1 bits </summary> 2166 public IFlagRegisterField RX_DESC_STAT_FORCE; 2167 /// <summary> Field "TX_DESC_STAT_FORCE" at 0x1, width: 1 bits </summary> 2168 public IFlagRegisterField TX_DESC_STAT_FORCE; 2169 /// <summary> Field "RX_DESC_TIMEOUT_FORCE" at 0x2, width: 1 bits </summary> 2170 public IFlagRegisterField RX_DESC_TIMEOUT_FORCE; 2171 /// <summary> Field "TX_DESC_TIMEOUT_FORCE" at 0x3, width: 1 bits </summary> 2172 public IFlagRegisterField TX_DESC_TIMEOUT_FORCE; 2173 /// <summary> Field "TX_DATA_THLD_FORCE" at 0x8, width: 1 bits </summary> 2174 public IFlagRegisterField TX_DATA_THLD_FORCE; 2175 /// <summary> Field "RX_DATA_THLD_FORCE" at 0x9, width: 1 bits </summary> 2176 public IFlagRegisterField RX_DATA_THLD_FORCE; 2177 /// <summary> Field "TX_DESC_THLD_FORCE" at 0xa, width: 1 bits </summary> 2178 public IFlagRegisterField TX_DESC_THLD_FORCE; 2179 /// <summary> Field "RX_DESC_THLD_FORCE" at 0xb, width: 1 bits </summary> 2180 public IFlagRegisterField RX_DESC_THLD_FORCE; 2181 /// <summary> Field "IBI_THLD_FORCE" at 0xc, width: 1 bits </summary> 2182 public IFlagRegisterField IBI_THLD_FORCE; 2183 /// <summary> Field "IBI_DONE_FORCE" at 0xd, width: 1 bits </summary> 2184 public IFlagRegisterField IBI_DONE_FORCE; 2185 /// <summary> Field "TRANSFER_ABORT_STAT_FORCE" at 0x19, width: 1 bits </summary> 2186 public IFlagRegisterField TRANSFER_ABORT_STAT_FORCE; 2187 /// <summary> Field "TRANSFER_ERR_STAT_FORCE" at 0x1f, width: 1 bits </summary> 2188 public IFlagRegisterField TRANSFER_ERR_STAT_FORCE; 2189 InterruptForceTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.InterruptForceType2190 public InterruptForceType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2191 { 2192 parent.RegistersCollection.DefineRegister(472, 0, true) 2193 .WithFlag(0, out RX_DESC_STAT_FORCE, name: "RX_DESC_STAT_FORCE") 2194 .WithFlag(1, out TX_DESC_STAT_FORCE, name: "TX_DESC_STAT_FORCE") 2195 .WithFlag(2, out RX_DESC_TIMEOUT_FORCE, name: "RX_DESC_TIMEOUT_FORCE") 2196 .WithFlag(3, out TX_DESC_TIMEOUT_FORCE, name: "TX_DESC_TIMEOUT_FORCE") 2197 .WithFlag(8, out TX_DATA_THLD_FORCE, name: "TX_DATA_THLD_FORCE") 2198 .WithFlag(9, out RX_DATA_THLD_FORCE, name: "RX_DATA_THLD_FORCE") 2199 .WithFlag(10, out TX_DESC_THLD_FORCE, name: "TX_DESC_THLD_FORCE") 2200 .WithFlag(11, out RX_DESC_THLD_FORCE, name: "RX_DESC_THLD_FORCE") 2201 .WithFlag(12, out IBI_THLD_FORCE, name: "IBI_THLD_FORCE") 2202 .WithFlag(13, out IBI_DONE_FORCE, name: "IBI_DONE_FORCE") 2203 .WithFlag(25, out TRANSFER_ABORT_STAT_FORCE, name: "TRANSFER_ABORT_STAT_FORCE") 2204 .WithFlag(31, out TRANSFER_ERR_STAT_FORCE, name: "TRANSFER_ERR_STAT_FORCE"); 2205 } 2206 } 2207 2208 public struct RxDescQueuePortType 2209 { 2210 /// <summary> Field "RX_DESC" at 0x0, width: 32 bits </summary> 2211 public IValueRegisterField RX_DESC; 2212 RxDescQueuePortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.RxDescQueuePortType2213 public RxDescQueuePortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2214 { 2215 parent.RegistersCollection.DefineRegister(476, 0, true) 2216 .WithValueField(0, 32, out RX_DESC, mode: FieldMode.Read, name: "RX_DESC"); 2217 } 2218 } 2219 2220 public struct TxDescQueuePortType 2221 { 2222 /// <summary> Field "TX_DESC" at 0x0, width: 32 bits </summary> 2223 public IValueRegisterField TX_DESC; 2224 TxDescQueuePortTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TxDescQueuePortType2225 public TxDescQueuePortType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2226 { 2227 parent.RegistersCollection.DefineRegister(484, 0, true) 2228 .WithValueField(0, 32, out TX_DESC, mode: FieldMode.Write, name: "TX_DESC"); 2229 } 2230 } 2231 2232 public struct IbiQueueSizeType 2233 { 2234 /// <summary> Field "IBI_QUEUE_SIZE" at 0x0, width: 8 bits </summary> 2235 public IValueRegisterField IBI_QUEUE_SIZE; 2236 IbiQueueSizeTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.IbiQueueSizeType2237 public IbiQueueSizeType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2238 { 2239 parent.RegistersCollection.DefineRegister(500, 255, true) 2240 .WithValueField(0, 8, out IBI_QUEUE_SIZE, mode: FieldMode.Read, name: "IBI_QUEUE_SIZE"); 2241 } 2242 } 2243 2244 public struct SocMgmtControlType 2245 { 2246 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2247 public IValueRegisterField PLACEHOLDER; 2248 SocMgmtControlTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtControlType2249 public SocMgmtControlType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2250 { 2251 parent.RegistersCollection.DefineRegister(516, 0, true) 2252 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2253 } 2254 } 2255 2256 public struct SocMgmtStatusType 2257 { 2258 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2259 public IValueRegisterField PLACEHOLDER; 2260 SocMgmtStatusTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtStatusType2261 public SocMgmtStatusType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2262 { 2263 parent.RegistersCollection.DefineRegister(520, 0, true) 2264 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2265 } 2266 } 2267 2268 public struct SocMgmtRsvd0Type 2269 { 2270 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2271 public IValueRegisterField PLACEHOLDER; 2272 SocMgmtRsvd0TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtRsvd0Type2273 public SocMgmtRsvd0Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2274 { 2275 parent.RegistersCollection.DefineRegister(524, 0, true) 2276 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2277 } 2278 } 2279 2280 public struct SocMgmtRsvd1Type 2281 { 2282 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2283 public IValueRegisterField PLACEHOLDER; 2284 SocMgmtRsvd1TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtRsvd1Type2285 public SocMgmtRsvd1Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2286 { 2287 parent.RegistersCollection.DefineRegister(528, 0, true) 2288 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2289 } 2290 } 2291 2292 public struct SocMgmtRsvd2Type 2293 { 2294 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2295 public IValueRegisterField PLACEHOLDER; 2296 SocMgmtRsvd2TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtRsvd2Type2297 public SocMgmtRsvd2Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2298 { 2299 parent.RegistersCollection.DefineRegister(532, 0, true) 2300 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2301 } 2302 } 2303 2304 public struct SocMgmtRsvd3Type 2305 { 2306 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2307 public IValueRegisterField PLACEHOLDER; 2308 SocMgmtRsvd3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtRsvd3Type2309 public SocMgmtRsvd3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2310 { 2311 parent.RegistersCollection.DefineRegister(536, 0, true) 2312 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2313 } 2314 } 2315 2316 public struct SocPadConfType 2317 { 2318 /// <summary> Field "INPUT_ENABLE" at 0x0, width: 1 bits </summary> 2319 public IFlagRegisterField INPUT_ENABLE; 2320 /// <summary> Field "SCHMITT_EN" at 0x1, width: 1 bits </summary> 2321 public IFlagRegisterField SCHMITT_EN; 2322 /// <summary> Field "KEEPER_EN" at 0x2, width: 1 bits </summary> 2323 public IFlagRegisterField KEEPER_EN; 2324 /// <summary> Field "PULL_DIR" at 0x3, width: 1 bits </summary> 2325 public IFlagRegisterField PULL_DIR; 2326 /// <summary> Field "PULL_EN" at 0x4, width: 1 bits </summary> 2327 public IFlagRegisterField PULL_EN; 2328 /// <summary> Field "IO_INVERSION" at 0x5, width: 1 bits </summary> 2329 public IFlagRegisterField IO_INVERSION; 2330 /// <summary> Field "OD_EN" at 0x6, width: 1 bits </summary> 2331 public IFlagRegisterField OD_EN; 2332 /// <summary> Field "VIRTUAL_OD_EN" at 0x7, width: 1 bits </summary> 2333 public IFlagRegisterField VIRTUAL_OD_EN; 2334 /// <summary> Field "PAD_TYPE" at 0x18, width: 8 bits </summary> 2335 public IValueRegisterField PAD_TYPE; 2336 SocPadConfTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocPadConfType2337 public SocPadConfType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2338 { 2339 parent.RegistersCollection.DefineRegister(540, 4278190081, true) 2340 .WithFlag(0, out INPUT_ENABLE, name: "INPUT_ENABLE") 2341 .WithFlag(1, out SCHMITT_EN, name: "SCHMITT_EN") 2342 .WithFlag(2, out KEEPER_EN, name: "KEEPER_EN") 2343 .WithFlag(3, out PULL_DIR, name: "PULL_DIR") 2344 .WithFlag(4, out PULL_EN, name: "PULL_EN") 2345 .WithFlag(5, out IO_INVERSION, name: "IO_INVERSION") 2346 .WithFlag(6, out OD_EN, name: "OD_EN") 2347 .WithFlag(7, out VIRTUAL_OD_EN, name: "VIRTUAL_OD_EN") 2348 .WithValueField(24, 8, out PAD_TYPE, name: "PAD_TYPE"); 2349 } 2350 } 2351 2352 public struct SocPadAttrType 2353 { 2354 /// <summary> Field "DRIVE_SLEW_RATE" at 0x8, width: 8 bits </summary> 2355 public IValueRegisterField DRIVE_SLEW_RATE; 2356 /// <summary> Field "DRIVE_STRENGTH" at 0x18, width: 8 bits </summary> 2357 public IValueRegisterField DRIVE_STRENGTH; 2358 SocPadAttrTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocPadAttrType2359 public SocPadAttrType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2360 { 2361 parent.RegistersCollection.DefineRegister(544, 4278255360, true) 2362 .WithValueField(8, 8, out DRIVE_SLEW_RATE, name: "DRIVE_SLEW_RATE") 2363 .WithValueField(24, 8, out DRIVE_STRENGTH, name: "DRIVE_STRENGTH"); 2364 } 2365 } 2366 2367 public struct SocMgmtFeature2Type 2368 { 2369 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2370 public IValueRegisterField PLACEHOLDER; 2371 SocMgmtFeature2TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtFeature2Type2372 public SocMgmtFeature2Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2373 { 2374 parent.RegistersCollection.DefineRegister(548, 0, true) 2375 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2376 } 2377 } 2378 2379 public struct SocMgmtFeature3Type 2380 { 2381 /// <summary> Field "PLACEHOLDER" at 0x0, width: 32 bits </summary> 2382 public IValueRegisterField PLACEHOLDER; 2383 SocMgmtFeature3TypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.SocMgmtFeature3Type2384 public SocMgmtFeature3Type(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2385 { 2386 parent.RegistersCollection.DefineRegister(552, 0, true) 2387 .WithValueField(0, 32, out PLACEHOLDER, name: "PLACEHOLDER"); 2388 } 2389 } 2390 2391 public struct TRRegType 2392 { 2393 /// <summary> Field "T_R" at 0x0, width: 20 bits </summary> 2394 public IValueRegisterField T_R; 2395 TRRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TRRegType2396 public TRRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2397 { 2398 parent.RegistersCollection.DefineRegister(556, 0, true) 2399 .WithValueField(0, 20, out T_R, name: "T_R"); 2400 } 2401 } 2402 2403 public struct TFRegType 2404 { 2405 /// <summary> Field "T_F" at 0x0, width: 20 bits </summary> 2406 public IValueRegisterField T_F; 2407 TFRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TFRegType2408 public TFRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2409 { 2410 parent.RegistersCollection.DefineRegister(560, 0, true) 2411 .WithValueField(0, 20, out T_F, name: "T_F"); 2412 } 2413 } 2414 2415 public struct TSuDatRegType 2416 { 2417 /// <summary> Field "T_SU_DAT" at 0x0, width: 20 bits </summary> 2418 public IValueRegisterField T_SU_DAT; 2419 TSuDatRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TSuDatRegType2420 public TSuDatRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2421 { 2422 parent.RegistersCollection.DefineRegister(564, 0, true) 2423 .WithValueField(0, 20, out T_SU_DAT, name: "T_SU_DAT"); 2424 } 2425 } 2426 2427 public struct THdDatRegType 2428 { 2429 /// <summary> Field "T_HD_DAT" at 0x0, width: 20 bits </summary> 2430 public IValueRegisterField T_HD_DAT; 2431 THdDatRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.THdDatRegType2432 public THdDatRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2433 { 2434 parent.RegistersCollection.DefineRegister(568, 0, true) 2435 .WithValueField(0, 20, out T_HD_DAT, name: "T_HD_DAT"); 2436 } 2437 } 2438 2439 public struct THighRegType 2440 { 2441 /// <summary> Field "T_HIGH" at 0x0, width: 20 bits </summary> 2442 public IValueRegisterField T_HIGH; 2443 THighRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.THighRegType2444 public THighRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2445 { 2446 parent.RegistersCollection.DefineRegister(572, 0, true) 2447 .WithValueField(0, 20, out T_HIGH, name: "T_HIGH"); 2448 } 2449 } 2450 2451 public struct TLowRegType 2452 { 2453 /// <summary> Field "T_LOW" at 0x0, width: 20 bits </summary> 2454 public IValueRegisterField T_LOW; 2455 TLowRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TLowRegType2456 public TLowRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2457 { 2458 parent.RegistersCollection.DefineRegister(576, 0, true) 2459 .WithValueField(0, 20, out T_LOW, name: "T_LOW"); 2460 } 2461 } 2462 2463 public struct THdStaRegType 2464 { 2465 /// <summary> Field "T_HD_STA" at 0x0, width: 20 bits </summary> 2466 public IValueRegisterField T_HD_STA; 2467 THdStaRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.THdStaRegType2468 public THdStaRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2469 { 2470 parent.RegistersCollection.DefineRegister(580, 0, true) 2471 .WithValueField(0, 20, out T_HD_STA, name: "T_HD_STA"); 2472 } 2473 } 2474 2475 public struct TSuStaRegType 2476 { 2477 /// <summary> Field "T_SU_STA" at 0x0, width: 20 bits </summary> 2478 public IValueRegisterField T_SU_STA; 2479 TSuStaRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TSuStaRegType2480 public TSuStaRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2481 { 2482 parent.RegistersCollection.DefineRegister(584, 0, true) 2483 .WithValueField(0, 20, out T_SU_STA, name: "T_SU_STA"); 2484 } 2485 } 2486 2487 public struct TSuStoRegType 2488 { 2489 /// <summary> Field "T_SU_STO" at 0x0, width: 20 bits </summary> 2490 public IValueRegisterField T_SU_STO; 2491 TSuStoRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TSuStoRegType2492 public TSuStoRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2493 { 2494 parent.RegistersCollection.DefineRegister(588, 0, true) 2495 .WithValueField(0, 20, out T_SU_STO, name: "T_SU_STO"); 2496 } 2497 } 2498 2499 public struct TFreeRegType 2500 { 2501 /// <summary> Field "T_FREE" at 0x0, width: 32 bits </summary> 2502 public IValueRegisterField T_FREE; 2503 TFreeRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TFreeRegType2504 public TFreeRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2505 { 2506 parent.RegistersCollection.DefineRegister(592, 4294967295, true) 2507 .WithValueField(0, 32, out T_FREE, name: "T_FREE"); 2508 } 2509 } 2510 2511 public struct TAvalRegType 2512 { 2513 /// <summary> Field "T_AVAL" at 0x0, width: 32 bits </summary> 2514 public IValueRegisterField T_AVAL; 2515 TAvalRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TAvalRegType2516 public TAvalRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2517 { 2518 parent.RegistersCollection.DefineRegister(596, 4294967295, true) 2519 .WithValueField(0, 32, out T_AVAL, name: "T_AVAL"); 2520 } 2521 } 2522 2523 public struct TIdleRegType 2524 { 2525 /// <summary> Field "T_IDLE" at 0x0, width: 32 bits </summary> 2526 public IValueRegisterField T_IDLE; 2527 TIdleRegTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TIdleRegType2528 public TIdleRegType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2529 { 2530 parent.RegistersCollection.DefineRegister(600, 4294967295, true) 2531 .WithValueField(0, 32, out T_IDLE, name: "T_IDLE"); 2532 } 2533 } 2534 2535 public struct ControllerConfigType 2536 { 2537 /// <summary> Field "OPERATION_MODE" at 0x4, width: 2 bits </summary> 2538 public IValueRegisterField OPERATION_MODE; 2539 ControllerConfigTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.ControllerConfigType2540 public ControllerConfigType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2541 { 2542 parent.RegistersCollection.DefineRegister(612, 48, true) 2543 .WithValueField(4, 2, out OPERATION_MODE, mode: FieldMode.Read, name: "OPERATION_MODE"); 2544 } 2545 } 2546 2547 public struct TerminationExtcapHeaderType 2548 { 2549 /// <summary> Field "CAP_ID" at 0x0, width: 8 bits </summary> 2550 public IValueRegisterField CAP_ID; 2551 /// <summary> Field "CAP_LENGTH" at 0x8, width: 16 bits </summary> 2552 public IValueRegisterField CAP_LENGTH; 2553 TerminationExtcapHeaderTypeAntmicro.Renode.Peripherals.I3C.Caliptra_I3C.TerminationExtcapHeaderType2554 public TerminationExtcapHeaderType(IProvidesRegisterCollection<DoubleWordRegisterCollection> parent) 2555 { 2556 parent.RegistersCollection.DefineRegister(616, 16776960, true) 2557 .WithValueField(0, 8, out CAP_ID, mode: FieldMode.Read, name: "CAP_ID") 2558 .WithValueField(8, 16, out CAP_LENGTH, mode: FieldMode.Read, name: "CAP_LENGTH"); 2559 } 2560 } 2561 2562 protected class Dat_DatMemoryContainer 2563 { 2564 private byte[] memory; 2565 2566 public long Size { 2567 get 2568 { 2569 return 1024L; 2570 } 2571 } 2572 public Dat_DatMemoryWrapper this[long index] { 2573 get 2574 { 2575 if(index < 0 || index >= 128) 2576 { 2577 throw new System.IndexOutOfRangeException(); 2578 } 2579 return new Dat_DatMemoryWrapper(memory, index * 8); 2580 } 2581 } 2582 Dat_DatMemoryContainer()2583 public Dat_DatMemoryContainer() 2584 { 2585 memory = new byte[Size]; 2586 } 2587 ReadDoubleWord(long offset)2588 public uint ReadDoubleWord(long offset) 2589 { 2590 return (uint)memory[offset] + ((uint)memory[offset + 1] << 8) + ((uint)memory[offset + 2] << 16) + ((uint)memory[offset + 3] << 24); 2591 } 2592 WriteDoubleWord(long offset, uint value)2593 public void WriteDoubleWord(long offset, uint value) 2594 { 2595 memory[offset] = (byte)value; 2596 memory[offset + 1] = (byte)(value >> 8); 2597 memory[offset + 2] = (byte)(value >> 16); 2598 memory[offset + 3] = (byte)(value >> 24); 2599 } 2600 2601 public class Dat_DatMemoryWrapper 2602 { 2603 private long spanBegin; 2604 private byte[] memory; 2605 2606 /// <summary> Offset: 0x0, Width: 7 bits </summary> 2607 public byte STATIC_ADDRESS { 2608 get 2609 { 2610 byte temp = 0; 2611 temp = (byte)(temp | (byte)(memory[spanBegin + 0] & 0x7f)); 2612 return temp; 2613 } 2614 set 2615 { 2616 memory[spanBegin + 0] = (byte)(memory[spanBegin + 0] & 0x80U | value & 0x7fU); 2617 } 2618 } 2619 /// <summary> Offset: 0xc, Width: 1 bits </summary> 2620 public bool IBI_PAYLOAD { 2621 get 2622 { 2623 bool temp; 2624 temp = (memory[spanBegin + 1] & 0x10) != 0; 2625 return temp; 2626 } 2627 set 2628 { 2629 memory[spanBegin + 1] = (byte)(memory[spanBegin + 1] & 0xefU | (value ? 1U : 0U) << 4); 2630 } 2631 } 2632 /// <summary> Offset: 0xd, Width: 1 bits </summary> 2633 public bool IBI_REJECT { 2634 get 2635 { 2636 bool temp; 2637 temp = (memory[spanBegin + 1] & 0x20) != 0; 2638 return temp; 2639 } 2640 set 2641 { 2642 memory[spanBegin + 1] = (byte)(memory[spanBegin + 1] & 0xdfU | (value ? 1U : 0U) << 5); 2643 } 2644 } 2645 /// <summary> Offset: 0xe, Width: 1 bits </summary> 2646 public bool CRR_REJECT { 2647 get 2648 { 2649 bool temp; 2650 temp = (memory[spanBegin + 1] & 0x40) != 0; 2651 return temp; 2652 } 2653 set 2654 { 2655 memory[spanBegin + 1] = (byte)(memory[spanBegin + 1] & 0xbfU | (value ? 1U : 0U) << 6); 2656 } 2657 } 2658 /// <summary> Offset: 0xf, Width: 1 bits </summary> 2659 public bool TS { 2660 get 2661 { 2662 bool temp; 2663 temp = (memory[spanBegin + 1] & 0x80) != 0; 2664 return temp; 2665 } 2666 set 2667 { 2668 memory[spanBegin + 1] = (byte)(memory[spanBegin + 1] & 0x7fU | (value ? 1U : 0U) << 7); 2669 } 2670 } 2671 /// <summary> Offset: 0x10, Width: 8 bits </summary> 2672 public byte DYNAMIC_ADDRESS { 2673 get 2674 { 2675 byte temp = 0; 2676 temp = (byte)(temp | (byte)memory[spanBegin + 2]); 2677 return temp; 2678 } 2679 set 2680 { 2681 memory[spanBegin + 2] = (byte)value; 2682 } 2683 } 2684 /// <summary> Offset: 0x1a, Width: 3 bits </summary> 2685 public byte RING_ID { 2686 get 2687 { 2688 byte temp = 0; 2689 temp = (byte)(temp | (byte)(memory[spanBegin + 3] & 0x1c) >> 2); 2690 return temp; 2691 } 2692 set 2693 { 2694 memory[spanBegin + 3] = (byte)(memory[spanBegin + 3] & 0xe3U | (value & 0x7U) << 2); 2695 } 2696 } 2697 /// <summary> Offset: 0x1d, Width: 2 bits </summary> 2698 public byte DEV_NACK_RETRY_CNT { 2699 get 2700 { 2701 byte temp = 0; 2702 temp = (byte)(temp | (byte)(memory[spanBegin + 3] & 0x60) >> 5); 2703 return temp; 2704 } 2705 set 2706 { 2707 memory[spanBegin + 3] = (byte)(memory[spanBegin + 3] & 0x9fU | (value & 0x3U) << 5); 2708 } 2709 } 2710 /// <summary> Offset: 0x1f, Width: 1 bits </summary> 2711 public bool DEVICE { 2712 get 2713 { 2714 bool temp; 2715 temp = (memory[spanBegin + 3] & 0x80) != 0; 2716 return temp; 2717 } 2718 set 2719 { 2720 memory[spanBegin + 3] = (byte)(memory[spanBegin + 3] & 0x7fU | (value ? 1U : 0U) << 7); 2721 } 2722 } 2723 /// <summary> Offset: 0x20, Width: 8 bits </summary> 2724 public byte AUTOCMD_MASK { 2725 get 2726 { 2727 byte temp = 0; 2728 temp = (byte)(temp | (byte)memory[spanBegin + 4]); 2729 return temp; 2730 } 2731 set 2732 { 2733 memory[spanBegin + 4] = (byte)value; 2734 } 2735 } 2736 /// <summary> Offset: 0x28, Width: 8 bits </summary> 2737 public byte AUTOCMD_VALUE { 2738 get 2739 { 2740 byte temp = 0; 2741 temp = (byte)(temp | (byte)memory[spanBegin + 5]); 2742 return temp; 2743 } 2744 set 2745 { 2746 memory[spanBegin + 5] = (byte)value; 2747 } 2748 } 2749 /// <summary> Offset: 0x30, Width: 3 bits </summary> 2750 public byte AUTOCMD_MODE { 2751 get 2752 { 2753 byte temp = 0; 2754 temp = (byte)(temp | (byte)(memory[spanBegin + 6] & 0x7)); 2755 return temp; 2756 } 2757 set 2758 { 2759 memory[spanBegin + 6] = (byte)(memory[spanBegin + 6] & 0xf8U | value & 0x7U); 2760 } 2761 } 2762 /// <summary> Offset: 0x33, Width: 8 bits </summary> 2763 public byte AUTOCMD_HDR_CODE { 2764 get 2765 { 2766 byte temp = 0; 2767 temp = (byte)(temp | (byte)(memory[spanBegin + 6] & 0xf8) >> 3); 2768 return temp; 2769 } 2770 set 2771 { 2772 memory[spanBegin + 6] = (byte)(memory[spanBegin + 6] & 0x7U | value << 3); 2773 } 2774 } 2775 Dat_DatMemoryWrapper(byte[] memory, long spanBegin)2776 public Dat_DatMemoryWrapper(byte[] memory, long spanBegin) 2777 { 2778 this.memory = memory; 2779 this.spanBegin = spanBegin; 2780 } 2781 } 2782 } 2783 2784 protected class Dct_DctMemoryContainer 2785 { 2786 private byte[] memory; 2787 2788 public long Size { 2789 get 2790 { 2791 return 2048L; 2792 } 2793 } 2794 public Dct_DctMemoryWrapper this[long index] { 2795 get 2796 { 2797 if(index < 0 || index >= 128) 2798 { 2799 throw new System.IndexOutOfRangeException(); 2800 } 2801 return new Dct_DctMemoryWrapper(memory, index * 16); 2802 } 2803 } 2804 Dct_DctMemoryContainer()2805 public Dct_DctMemoryContainer() 2806 { 2807 memory = new byte[Size]; 2808 } 2809 ReadDoubleWord(long offset)2810 public uint ReadDoubleWord(long offset) 2811 { 2812 return (uint)memory[offset] + ((uint)memory[offset + 1] << 8) + ((uint)memory[offset + 2] << 16) + ((uint)memory[offset + 3] << 24); 2813 } 2814 WriteDoubleWord(long offset, uint value)2815 public void WriteDoubleWord(long offset, uint value) 2816 { 2817 memory[offset] = (byte)value; 2818 memory[offset + 1] = (byte)(value >> 8); 2819 memory[offset + 2] = (byte)(value >> 16); 2820 memory[offset + 3] = (byte)(value >> 24); 2821 } 2822 2823 public class Dct_DctMemoryWrapper 2824 { 2825 private long spanBegin; 2826 private byte[] memory; 2827 2828 /// <summary> Offset: 0x0, Width: 32 bits </summary> 2829 public uint PID_HI { 2830 get 2831 { 2832 uint temp = 0; 2833 temp = (uint)(temp | (uint)memory[spanBegin + 0]); 2834 temp = (uint)(temp | (uint)memory[spanBegin + 1] << 8); 2835 temp = (uint)(temp | (uint)memory[spanBegin + 2] << 16); 2836 temp = (uint)(temp | (uint)memory[spanBegin + 3] << 24); 2837 return temp; 2838 } 2839 set 2840 { 2841 memory[spanBegin + 0] = (byte)value; 2842 memory[spanBegin + 1] = (byte)(value >> 8); 2843 memory[spanBegin + 2] = (byte)(value >> 16); 2844 memory[spanBegin + 3] = (byte)(value >> 24); 2845 } 2846 } 2847 /// <summary> Offset: 0x20, Width: 16 bits </summary> 2848 public ushort PID_LO { 2849 get 2850 { 2851 ushort temp = 0; 2852 temp = (ushort)(temp | (ushort)memory[spanBegin + 4]); 2853 temp = (ushort)(temp | (ushort)memory[spanBegin + 5] << 8); 2854 return temp; 2855 } 2856 set 2857 { 2858 memory[spanBegin + 4] = (byte)value; 2859 memory[spanBegin + 5] = (byte)(value >> 8); 2860 } 2861 } 2862 /// <summary> Offset: 0x40, Width: 8 bits </summary> 2863 public byte DCR { 2864 get 2865 { 2866 byte temp = 0; 2867 temp = (byte)(temp | (byte)memory[spanBegin + 8]); 2868 return temp; 2869 } 2870 set 2871 { 2872 memory[spanBegin + 8] = (byte)value; 2873 } 2874 } 2875 /// <summary> Offset: 0x48, Width: 8 bits </summary> 2876 public byte BCR { 2877 get 2878 { 2879 byte temp = 0; 2880 temp = (byte)(temp | (byte)memory[spanBegin + 9]); 2881 return temp; 2882 } 2883 set 2884 { 2885 memory[spanBegin + 9] = (byte)value; 2886 } 2887 } 2888 /// <summary> Offset: 0x60, Width: 8 bits </summary> 2889 public byte DYNAMIC_ADDRESS { 2890 get 2891 { 2892 byte temp = 0; 2893 temp = (byte)(temp | (byte)memory[spanBegin + 12]); 2894 return temp; 2895 } 2896 set 2897 { 2898 memory[spanBegin + 12] = (byte)value; 2899 } 2900 } 2901 Dct_DctMemoryWrapper(byte[] memory, long spanBegin)2902 public Dct_DctMemoryWrapper(byte[] memory, long spanBegin) 2903 { 2904 this.memory = memory; 2905 this.spanBegin = spanBegin; 2906 } 2907 } 2908 } 2909 } 2910 } 2911