1using "./cortex-a53-gicv3.repl" 2 3cpu1: CPU.ARMv8A @ sysbus 4 cpuType: "cortex-a53" 5 genericInterruptController: gic 6 cpuId: 1 7 init: 8 IsHalted true 9 10cpu2: CPU.ARMv8A @ sysbus 11 cpuType: "cortex-a53" 12 genericInterruptController: gic 13 cpuId: 2 14 init: 15 IsHalted true 16 17cpu3: CPU.ARMv8A @ sysbus 18 cpuType: "cortex-a53" 19 genericInterruptController: gic 20 cpuId: 3 21 init: 22 IsHalted true 23 24timer1: Timers.ARM_GenericTimer @ cpu1 25 frequency: 62500000 26 EL3PhysicalTimerIRQ -> gic#1@29 27 EL1PhysicalTimerIRQ -> gic#1@30 28 EL1VirtualTimerIRQ -> gic#1@27 29 NonSecureEL2PhysicalTimerIRQ -> gic#1@26 30 NonSecureEL2VirtualTimerIRQ -> gic#1@28 31 32timer2: Timers.ARM_GenericTimer @ cpu2 33 frequency: 62500000 34 EL3PhysicalTimerIRQ -> gic#2@29 35 EL1PhysicalTimerIRQ -> gic#2@30 36 EL1VirtualTimerIRQ -> gic#2@27 37 NonSecureEL2PhysicalTimerIRQ -> gic#2@26 38 NonSecureEL2VirtualTimerIRQ -> gic#2@28 39 40timer3: Timers.ARM_GenericTimer @ cpu3 41 frequency: 62500000 42 EL3PhysicalTimerIRQ -> gic#3@29 43 EL1PhysicalTimerIRQ -> gic#3@30 44 EL1VirtualTimerIRQ -> gic#3@27 45 NonSecureEL2PhysicalTimerIRQ -> gic#3@26 46 NonSecureEL2VirtualTimerIRQ -> gic#3@28 47 48gic: @ { 49 sysbus new Bus.BusMultiRegistration { address: 0x8000000; size: 0x010000; region: "distributor" }; 50 sysbus new IRQControllers.ArmGicRedistributorRegistration { attachedCPU: cpu; address: 0x80a0000 }; 51 sysbus new IRQControllers.ArmGicRedistributorRegistration { attachedCPU: cpu1; address: 0x80c0000 }; 52 sysbus new IRQControllers.ArmGicRedistributorRegistration { attachedCPU: cpu2; address: 0x80e0000 }; 53 sysbus new IRQControllers.ArmGicRedistributorRegistration { attachedCPU: cpu3; address: 0x8100000 } 54 } 55 [4-7] -> cpu1@[0-3] 56 [8-11] -> cpu2@[0-3] 57 [12-15] -> cpu3@[0-3] 58