- Jun 10, 2024
-
-
Román Cárdenas Rodríguez authored
mstatus: Support vector extension
-
- Jun 08, 2024
-
-
Jason White authored
-
Jason White authored
-
- May 28, 2024
-
-
Román Cárdenas Rodríguez authored
riscv: add `mcounteren` in-memory update functions
-
- May 25, 2024
-
-
rmsyn authored
Adds functions for updating the in-memory `Mcounteren` structure without touching the CSR. Allows manipulating all bitfields in-memory, and writing the entire value back to the CSR at once.
-
rmsyn authored
Uses the new `bf_extract` helper for the `mcounteren` register.
-
Román Cárdenas Rodríguez authored
Fix semihosting::debug::exit() on riscv64 QEMU targets.
-
Kevin Vigor authored
QEMU's handler for REPORT_EXCEPTION (a.k.a. TARGET_SYS_EXIT in QEMU sources) expects two arguments for 64-bit systems, including riscv64. In the event that a second argument is not provided, QEMU takes an error path which does *not* exit the simulation. The net result is that semihosting::debug::exit() hangs on riscv64 qemu simulation. Provide the necessry extra paramater to the syscall so that exit now works properly. Note that the second parameter only affects the simulator exit code if the first parameter is ApplicationExit, and we use ApplicationExit only for successful exit, so we can simply hardcode 0 as second parameter. On the error path we set first parameter to RunTimeErrorUnknown and QEMU properly returns exit code 1 regardless of second parameter.
-
Román Cárdenas Rodríguez authored
riscv: add `mcountinhibit` module
-
- May 24, 2024
-
-
rmsyn authored
Adds the `riscv::register::mcountinhibit` module for the `mcountinhibit` CSR.
-
- May 22, 2024
-
-
Aleš Katona authored
fixup: riscv: fix `mstatus` test
-
rmsyn authored
Fixes the assignment in the `mstatus` unti tests.
-
- May 18, 2024
-
-
Román Cárdenas Rodríguez authored
Align jump targets to 4 bytes
-
Henri Lunnikivi authored
We use unconditional jumps to reach these locations but I think the RISC-V unconditional jump cannot express locations that are not aligned to 4 bytes.
-
- May 16, 2024
-
-
Román Cárdenas Rodríguez authored
`riscv-rt`: Support for vectored mode interrupt handling
-
- May 12, 2024
-
-
Román Cárdenas Rodríguez authored
Add Mstatus helpers to allow setting fields in Mstatus
-
- May 10, 2024
-
-
Jeremy Fitzhardinge authored
Also remove local bf_* helpers
-
- May 09, 2024
-
-
Román Cárdenas Rodríguez authored
-
Román Cárdenas Rodríguez authored
Co-authored-by:rmsyn <117854522+rmsyn@users.noreply.github.com>
-
Jeremy Fitzhardinge authored
-
Jeremy Fitzhardinge authored
-
Jeremy Fitzhardinge authored
-
Jeremy Fitzhardinge authored
Allow `Mstatus` values to be directly written back to the CSR.
-
Jeremy Fitzhardinge authored
This adds a macro to generate `write(value:T)` function for writing a structured value to a CSR.
-
Jeremy Fitzhardinge authored
And add a clarifying doc comment that this is an operation on Mstatus values, not on the CSR itself.
-
Jeremy Fitzhardinge authored
Without needing to touch the CSR. This allows multiple changes in a single register write.
-
- May 08, 2024
-
-
Román Cárdenas Rodríguez authored
-
Román Cárdenas Rodríguez authored
`riscv`: register: fix target architecture conditional compilation
-
rmsyn authored
Uses `cfg(target_arch)` conditional compilation selectors for exported macros, since `cfg` flags generated from `build.rs` are not present for downstream users.
-
- May 07, 2024
-
-
Román Cárdenas Rodríguez authored
Implement Eq and PartialEq for Range and Permission
-
Román Cárdenas Rodríguez authored
Tidy per-ext check-cfg flags
-
Jeremy Fitzhardinge authored
It's useful to be able to do equality tests for these for unit tests.
-
Jeremy Fitzhardinge authored
-
Román Cárdenas Rodríguez authored
riscv: build: make `cfg` variables more robust
-
rmsyn authored
Uses new lint checks for `cfg` variables.
-
rmsyn authored
Uses new lint checks for `cfg` variables.
-
rmsyn authored
Uses new lint checks for `cfg` variables.
-
- May 05, 2024
-
-
rmsyn authored
Change which Cargo `CFG` environment variables are used to select the custom `cfg` variables. See https://github.com/rust-embedded/riscv/pull/204#issuecomment-2094089195 for discussion.
-
Román Cárdenas Rodríguez authored
-
- May 02, 2024
-
-
Román Cárdenas Rodríguez authored
`riscv`: register: exports macros for custom CSRs
-