Commit graph

55 commits

Author SHA1 Message Date
bunnie
e8e6b9acfa turn off WDT in swap debug config
would be nice not to have to race the WDT to read the
panic logs.
2024-05-06 13:19:37 +08:00
Sean Cross
b12c08e998 emulation: soc: add _zicsr_zifencei to rv32imac
Add "_zicsr_zifencei" to "rv32imac" when describing the CPU core. This
is required by newer versions of the spec, and will eventually be a
requirement of Renode.

Signed-off-by: Sean Cross <sean@xobs.io>
2023-12-29 18:42:16 +08:00
Sean Cross
153736810b Revert "renode: remove custom LiteX_Timer_32"
The custom litex timer is more custom than we thought.

This reverts commit 46fab8cbc8.
2023-01-30 22:15:01 +08:00
Sean Cross
46fab8cbc8 renode: remove custom LiteX_Timer_32
When we started this project, all Renode Litex modules were 8-bits, and
we had to custom-make a 32-bit timer module. However, in the interim,
upstream has grown a 32-bit variant of this timer. As of this writing,
this change was made two years ago.

Remove our custom variant and use the upstream version instead.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-10-21 08:40:10 +08:00
Sean Cross
4b3d1503e7 renode: place all peripherals under "Betrusted" ns
Give a "Betrusted" namespace to all of the peripherals. This will enable
us to upstream various modules without breaking compatibility with our
own versions of these peripherals.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-10-20 22:19:40 +08:00
bunnie
878c822d9f fix renode paths 2022-09-27 18:32:30 +08:00
bunnie
d0dc2e2a9f add renode as a target to utralib 2022-09-27 18:09:33 +08:00
bunnie
d752c4e87e fix renode build 2022-06-11 23:37:18 +08:00
bunnie
e589de1665 bump renode SVD file to be compatible with latest SoC changes 2022-06-05 13:35:07 +08:00
bunnie
7720b61451 update renode to latest soc 2022-05-06 13:39:28 +08:00
bunnie
49dcbb0a8a update renode to contain USB device mappings 2022-04-27 01:16:14 +08:00
Sean Cross
a74199829a emulation: add initial TLV320AIC3100
This audio codec lives on I2C and doesn't really do much for us.
However, by adding this device we can now pass `test oqc`.

The next step will be to implement `BetrustedI2S` which is where the
actual audio emulation occurs.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-04-21 11:42:02 +08:00
Sean Cross
582be287f4 emulation: add susres to emulation
Signed-off-by: Sean Cross <sean@xobs.io>
2022-04-21 10:20:00 +08:00
Sean Cross
b72b4825f0 emulation: add jtag peripheral
This initial draft of the jtag peripheral is enough to get the test
started.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-04-20 21:29:09 +08:00
Sean Cross
768a7c4b0d emulation: add WF200 ethernet implementation
This adds a working Ethernet implementation based on the WF200. It
currently gets connected to a Linux machine running a udhcpd server,
however it could also get connected to a TUN/TAP connection on Linux or
Mac.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-02-23 21:44:01 +08:00
Sean Cross
317f3136aa emulation: complete initial emulation of spinor/flash
Emulate both the SPINOR block as well as the OSPI flash attached to it.

With this change, the PDDB can now be initialized and resets itself
properly. Additionally, data persists across virtual reboots.

Data does not persist across runs of the emulator. That will follow in
an upcoming patch.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-02-17 18:03:45 +08:00
Sean Cross
49e1eb19c0 emulation: connect EC
Connect the EC to the SoC. This allows for emulating both the EC and SoC
in tandem. Messages flow via a 16-bit bus. When data is not available,
`0xdddd` is returned.

There is a HOLD line that goes from the EC to the SoC. This is tied to
the inverse of presence of data in the EC FIFO -- when it's empty, HOLD
is `1`, and when there is data it's `0`.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-02-14 12:28:40 +08:00
Sean Cross
fbbb2120ab com: working on getting com functioning
Signed-off-by: Sean Cross <sean@xobs.io>
2022-02-13 10:59:47 +08:00
bunnie
010856406d fix permissions 2021-10-27 23:06:13 +08:00
Sean Cross
b8c23af4fd emulation: fix betrustedsoci2c implementation
This fixes the RTC, which gets things working again.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-30 15:12:13 +08:00
Sean Cross
a3d69684c8 Merge branch 'main' of github.com:betrusted-io/xous-core 2021-08-30 12:36:40 +08:00
Sean Cross
5aaf166541 emulation: implement partial ec i2c
This implements some i2c functionality on the EC. Additionally, it
implements the Betrusted watchdog.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-30 12:36:04 +08:00
bunnie
dcc22a910f update renode.svd with extra register for susres 2021-08-29 22:58:57 +08:00
bunnie
e407e77b4f unbreak renode build 2021-08-24 23:38:26 +08:00
Sean Cross
9e1fec4d78 emulation: update offset of xous.img
This image file should get loaded onto SPI flash rather than into RAM,
since RAM gets cleared by the bootloader now.

Place it at a location that matches real hardware.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-02 18:16:01 +08:00
bunnie
fe581d23ac update renode svd 2021-07-18 18:52:07 +08:00
bunnie
8cb4362824 trying to merge...what are all these changes? 2021-07-18 12:31:29 +08:00
bunnie
2a417557a5 update renode artifacts 2021-07-13 01:02:08 +08:00
Sean Cross
c1d41bb168 emulation: repl: shrink memory range for sram
Signed-off-by: Sean Cross <sean@xobs.io>
2021-07-05 17:34:58 +08:00
Sean Cross
2c2fdaa1b4 emulation: sync svd from precursors
Signed-off-by: Sean Cross <sean@xobs.io>
2021-07-05 17:18:29 +08:00
Sean Cross
3de0b4cf06 emulation: connect sha512 to Renode
Signed-off-by: Sean Cross <sean@xobs.io>
2021-06-28 21:35:17 +08:00
bunnie
4a3258f6bd Merge branch 'bunnie-dev' into main 2021-06-28 01:33:42 +08:00
bunnie
e2ada8f8fe attempt to fix up some build system warts 2021-06-28 01:31:43 +08:00
bunnie
a9cc7c3b53 unbreak the renode build 2021-06-27 16:22:30 +08:00
Sean Cross
24fbdd9c48 emulation: check in newly-minted i2c drivers
Signed-off-by: Sean Cross <sean@xobs.io>
2021-06-25 23:55:50 +08:00
Sean Cross
266a4541d9 emulation: update renode svd file
Signed-off-by: Sean Cross <sean@xobs.io>
2021-06-21 13:56:51 +08:00
Sean Cross
e883dc56d3 emulation: remove unused csr.csv file
This file appears to be completely unused, and is only causing
confusion.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-06-21 13:55:33 +08:00
bunnie
b1d027bc52 adding AES native instruction support 2021-06-04 00:49:34 +08:00
bunnie
fadc9c29ab Merge remote-tracking branch 'origin/master' into bunnie-dev 2021-06-02 03:59:25 +08:00
bunnie
25e6bced00 add power-on utilization reporting
there is now an extra field in the status bar that gives
the %'age of time that the clocks are running.
2021-06-02 01:08:31 +08:00
bunnie
ee2e38be05 add commands to help manage wfi/power debugging 2021-06-01 17:02:30 +08:00
bunnie
61f95363fd mark a commit for the latest build submitted for testing 2021-06-01 15:33:48 +08:00
bunnie
2f9fa57bdd clock-gate based power management now seems to be more or less working 2021-05-31 23:14:35 +08:00
bunnie
d9e56fd321 very preliminary power savings working 2021-05-31 05:20:54 +08:00
bunnie
7c55925926 intermediate check-in on wfi 2021-05-30 23:07:16 +08:00
bunnie
afe8d8733d updates to use the always-on power domain timers 2021-05-30 04:29:03 +08:00
bunnie
52c32cc4d1 auto-powerdown of sha block when not in use 2021-05-30 00:12:18 +08:00
bunnie
1e5bf6131d update precursors with usb PHY reset patch 2021-05-23 23:55:55 +08:00
Sean Cross
51b4a2db82 emulation: check in repl file with warning header
Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-19 14:27:42 +08:00
Sean Cross
e0f4e0c47f emulation: fix missing interrupts in peripherals
Now that we wire up the irq line, ensure the peripherals have actual
interrupts.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-19 14:12:01 +08:00