Hi,
This series continues to implement RISC-V N-Trace subsystem.
This work implements Synchronization and Ownership messages from
RISC-V N-Trace (Nexus-based Trace) [1] and
RISC-V Trace Control Interface Specification [2]
This is the second patchset of several upcoming patchset series,
that will ultimately provide full support for N-Trace HTM tracing.
Patches based on N-Trace core patchset [3],
which provides initial support support for N-Trace subsystem.
[1] https://docs.riscv.org/reference/nexus-trace/_attachments/RISC-V-N-Trace.pdf
[2] https://docs.riscv.org/reference/trace-control-interface/_attachments/RISC-V-Trace-Control-Interface.pdf
[3] https://lore.kernel.org/all/20260825-upstream-ntrace_core-v1-0-f8be2f40d2fd@gmail.com
Based-on: <20260825-upstream-ntrace_core-v1-0-f8be2f40d2fd@gmail.com>
---
Konstantin Semichastnov (6):
hw/riscv/trace-encoder.c: support ACTIVE ENABLE EMPTY of trTeRamControl
hw/riscv/trace-encoder.c: Support sync messages for N-trace
hw/riscv/trace-encoder.c: Implement Ownership messages for NTrace
hw/riscv/ntrace: emit PPCCD and Ownership on priv change
hw/riscv/trace-encoder: emit Ownership after ProgTraceSync
hw/riscv/trace-encoder.c: implementated SRC field
hw/riscv/rv-trace-messages.c | 114 ++++++++++++++--
hw/riscv/rv-trace-messages.h | 23 +++-
hw/riscv/trace-encoder.c | 303 +++++++++++++++++++++++++++++++++++++++--
hw/riscv/trace-encoder.h | 22 ++-
hw/riscv/trace-ram-sink.c | 19 ++-
target/riscv/cpu_helper.c | 11 +-
target/riscv/op_helper.c | 8 ++
tests/qtest/riscv-trace-test.c | 45 ++++++
8 files changed, 502 insertions(+), 43 deletions(-)
---
base-commit: 2684ff8fd5995eaeac86fc08e3e2940fe8cfc6ba
change-id: 20260826-upstream-ntrace_msg-4ce83419fe1e
Best regards,
--
Konstantin Semichastnov <antikostya2@gmail.com>