Sean Cross
d2316d2d23
Bring up the second cpu. This requires the most recent version of Renode. Signed-off-by: Sean Cross <sean@xobs.io> |
||
---|---|---|
peripherals | ||
.gitattributes | ||
.gitignore | ||
badge.repl | ||
badge.resc | ||
blackmagic.elf | ||
bootloader.elf | ||
esp32s3-drom.bin | ||
esp32s3-efuses.bin | ||
esp32s3-irom.bin | ||
esp32s3-rtc-rom.bin | ||
esp32s3-rtccntrl.bin | ||
esp32s3.svd | ||
partition-table.bin | ||
peripherals.csproj.template | ||
README.md | ||
svd-to-renode.py |
ESP32S3 Device
This is an attempt to get ESP32S3 working under Renode. It is a work in progress.
Usage
For emulation, you will need to install Renode (use the nightly to get CPU support). Then, run renode
on badge.resc
. For example:
renode badge.repl
Editing Renode Peripherals
Renode supports adding peripherals written in C#. For example, many Betrusted peripherals have models created under the peripherals/
directory.
Since there is no external compiler, it can be difficult to know if your code is correct. In fact, if you're unfamiliar with C# or the Renode codebase, editing unfamiliar C# code can be a slow exercise in frustration.
Fortunately, Visual Studio Code is free and has excellent C# tooling. All you need to do is point it at your Renode installation, load the C# plugin, and open a .cs
file.
- Copy
peripherals.csproj.template
toperipherals.csproj
- Open
peripherals.csproj
and point<RenodePath>
to your Renode installation directory. On ubuntu, this may be/opt/renode/bin/
. - Install C# for VSCode
- You can refer to core Renode peripherals as examples of what C# code looks like.
Debugging with GDB
When running Renode, you can attach a GDB instance. It runs on port 3333. Simply run tar ext :3333
in gdb to attach.