Merge "Update kelvin renode script to properly support debugging"
diff --git a/platforms/nexus.repl b/platforms/nexus.repl
index 5a26874..bb1386a 100644
--- a/platforms/nexus.repl
+++ b/platforms/nexus.repl
@@ -1,6 +1,6 @@
-using "sim/config/platforms/smc.repl"
+using "sim/config/platforms/nexus_smc.repl"
using "sim/config/platforms/secure.repl"
-using "sim/config/platforms/nexus_ml_core.repl"
+using "sim/config/platforms/kelvin.repl"
// To model the TLUL mailbox spec, we need a Renode peripheral that listens
// to address ranges for both endpoints of the mailbox. This is the current
@@ -27,15 +27,6 @@
rtirq_B -> smc_plic@11 // kTopMatchaPlicIrqIdMailboxSmcRtirq
eirq_B -> smc_plic@12 // kTopMatchaPlicIrqIdMailboxSmcEirq
-vec_controlblock : CPU.KelvinRiscV32_ControlBlock @ sysbus 0x5C000000
- core: cpu2
- tcmSize: 0x00400000
- tcmRangeStart: 0x5A000000
- HostReqIRQ -> smc_plic@13 // kTopMatchaPlicIrqIdVcTopHostReq @ top_matcha.h
- FinishIRQ -> smc_plic@14 // kTopMatchaPlicIrqIdVcTopFinish @ top_matcha.h
- InstructionFaultIRQ -> smc_plic@15 // kTopMatchaPlicIrqIdVcTopInstructionFault @ top_matcha.h
- DataFaultIRQ -> smc_plic@16 // kTopMatchaPlicIrqIdVcTopDataFault @ top_matcha.h
-
// ISP [‘h4200_0000 - ‘h4200_FFFF) 64KB ISP registers
// DMA Ctrl [‘h4201_0000 - ‘h4201_FFFF) 64KB DMA control interface
// DSP Ctrl [‘h4202_0000 - ‘h4202_FFFF) 64KB Audio DSP control interface
diff --git a/platforms/nexus_smc.repl b/platforms/nexus_smc.repl
new file mode 100644
index 0000000..23ba3c4
--- /dev/null
+++ b/platforms/nexus_smc.repl
@@ -0,0 +1,26 @@
+// ***************************************************
+// Nexus-specific SMC
+// ***************************************************
+
+using "sim/config/platforms/smc.repl"
+
+// Remember to update hart_is_mc in rom_crt.S if this changes.
+ram_smc: @ sysbus 0x50000000
+ size: 0x380000
+
+// SMC Specific Peripherals start at 0x54000000
+
+// Control block for the SMC, lets us pause/restart the core at an arbitrary PC.
+smc_control: @ sysbus 0x54020000
+ cpu: cpu1
+
+uart5: @ sysbus 0x54000000
+
+// RV_TIMER_SMC, timer for Cantrip kernel.
+timer_smc: @ sysbus 0x54010000
+ frequency: 2500000
+
+// Timer for Cantrip software timer service.
+timer_smc_sw: @ sysbus 0x54011000
+ frequency: 2500000
+