Commit graph

36 commits

Author SHA1 Message Date
bunnie
7db56d59f9 update generated soc utralib file 2023-09-15 20:45:43 +08:00
bunnie
f04d7bebe7 update latest SVDs to RTL 2023-09-15 20:45:15 +08:00
bunnie
c79edf3fa5 harmonize simulation models to soc description 2023-08-09 03:10:11 +08:00
bunnie
162b87b9b0 update cramium register descriptions 2023-08-08 18:18:48 +08:00
bunnie
e05c34c6be more fixes on the register space for cramium target 2023-08-04 01:31:28 +08:00
bunnie
2e3c774604 pull in latest cramium artifacts 2023-08-03 13:28:04 +08:00
bunnie
bead89a6ac update utralib with latest soc model for cramium target 2023-07-29 01:02:19 +08:00
bunnie
56de4c586f bump utralib artifacts 2023-07-18 03:56:52 +08:00
bunnie
2c53eb0508 add cramium targets to utralib 2023-07-17 18:24:10 +08:00
bunnie
5a2df4432c technical debt: cleanup UTRA package
- make the "base" field no longer public. It is accessible, but only
through an `unsafe` method, because, it is unsafe.
- add accessors to offest/mask fields. Because, it's not at all
unsafe to access these, and it can be useful for bit-ops that are
not part of the generic set of UTRA.
- add Arc to AtomicCSR, and require `std` for AtomicCSR types.
This should not break anything, I checked inside @foundation-devices
keyOS and they don't seem to be using AtomicCSR anywhere.

The Arc makes it a bit safer to clone the AtomicCSR base pointer
and share it between threads, but it will have an impact on performance.
The USB stack (which requires AtomicCSR) was regression testing and the
impact seems minimal.

Recall that the main purpose of AtomicCSR is to provide a CSR accessor
that does not require a mutable reference to the base object. This
can make certain Rust idioms a bit cleaner. We wrap the base accessor
in Arc+Atomic to try and improve the safety of throwing the borrow
checker under the bus, but it's still not perfect because hardware
mutable state can have side-effects within hardware itself that cannot
be modeled or checked by Rust's borrow checker.
2023-05-23 18:11:24 +08:00
bunnie
f3dc258a6a reinstate app-uart into the svd tree 2023-04-09 00:46:28 +08:00
bunnie
dc58abfa04 commit latest renode.rs version 2023-03-14 16:37:45 +08:00
bunnie
7af6749877 harmonize renode.rs *again* 2023-03-14 16:18:12 +08:00
bunnie
1c67712912 fix renode harmonization issue 2023-03-08 04:37:21 +08:00
bunnie
b36290fd79 update the precursor_pvt.rs file with the autogen version to avoid errors on publish 2023-03-08 04:02:36 +08:00
bunnie
dc75d8cd54 these were supposed to be renamed, not deleted 2023-03-08 03:48:06 +08:00
bunnie
0dd74fe7b3 remove gitrev from precursor soc type
in practice this has not been a useful indicator, and we
have stabilized the SVD format so that changes in the code don't
cause the SVD files to go incompatible anymore.

this should make maintenance a bit easier going forward, hopefully.

also merge in cramium support to harmonize the forks for easier
cross-patches in the future.
2023-03-08 03:46:03 +08:00
eupn
de296fb6c0
utralib: add SAMA5D27 svd and cargo feature 2023-03-05 16:39:23 +04:00
bunnie
08cf863ff5 update SoC artifacts for 0.9.11 build 2022-12-12 16:05:15 +08:00
bunnie
156e60d1dd fix regressions from litex 2022.08 2022-11-17 22:12:32 +08:00
bunnie
280d61db34 trial commit latest soc artifacts
updating Litex, seems to have broken things. trying to see
if a rebuild with new SVD file helps.
2022-11-17 19:37:17 +08:00
bunnie
b5f4814bb4 cleanup some stragglers in utralib push 2022-10-28 15:10:00 +08:00
bunnie
a8fde09229 adjust build states to match 2022-10-27 03:30:11 +08:00
bunnie
7d80fb7598 rebuild and commit all the prebuild utralib artifacts 2022-10-27 03:27:39 +08:00
bunnie
87d3a32b3d commit utralib mods 2022-10-27 03:11:01 +08:00
bunnie
820f2d6180 ...and commit the artifacts referenced in the previous commit :P 2022-10-20 04:59:17 +08:00
bunnie
dcbf028c5c bump soc rev
minor rev to fix a dangling git reference
2022-10-20 04:58:48 +08:00
bunnie
77e1379fc0 add SoC with new Vex core
updated codebase, hopefully pulls in fixes for cache clear
2022-10-20 04:24:00 +08:00
bunnie
74fe8c989c add dvt target
resurrecting some old hardware as an efuse testing target;
new hardware is too precious at the moment given the ridiculous
shortage of FPGAs on the market.
2022-10-18 21:47:16 +08:00
bunnie
d88f9cf685 absorb regenerated utralib files from previous patch 2022-10-15 01:29:49 +08:00
bunnie
4d52bb40f0 update artifacts from svd patch 2022-10-14 16:22:24 +08:00
bunnie
d0dc2e2a9f add renode as a target to utralib 2022-09-27 18:09:33 +08:00
bunnie
4f7f5855ec add the generated.rs top file which routes to specific configs with feature flags 2022-09-27 16:32:40 +08:00
bunnie
e35dc90ce5 add specific targets so we can pass crates.io guidelines 2022-09-27 16:30:09 +08:00
Sean Cross
35af35381a kernel: integrate kernel into main monorepo
This moves the kernel into the main monorepo, allowing it to share
packages with the rest of the system. This change will allow us to
reduce the number of rebuilds that take place, as well as reducing disk
usage.

Note that the loader is still an indepenent project, and the integration
of that into the monorepo is pending.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-01-14 15:31:36 +08:00
bunnie
9a50de8b4e refactor: utra -> utralib naming
this cleans up some namespace issues when including
the utra crate which also refers to utra::generated::utra,
and there are CONST at the crate-level, and also functions
at the module-level which need disambiguation. By naming
the crate utra-lib this saves a bit of syntatic wrangling
at the top of every file.
2020-10-12 03:56:10 +08:00