[keymgr_dpe] Error in `keymgr_dpe_smoke`
@rroth-lowrisc is already working on this.
Since Aug 28, 2026.
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
### Description
When running the smoketest with
`dvsim ./hw/ip/keymgr_dpe/dv/keymgr_dpe_sim_cfg.hjson -i keymgr_dpe_smoke -fs 77939691554180265764819117161517532074041895310557502310414840160084918042912`
on commit 72ff50ed197e9a6114a8c26ac275674d6a62274e results in the following error:
```
UVM_INFO @ 586663410 ps: (keymgr_dpe_scoreboard.sv:420) uvm_test_top.env.scoreboard [uvm_test_top.env.scoreboard] process_update_after_op_done: op OpDpeGenSwOut state StWorkDpeAvailable
UVM_INFO @ 586663410 ps: (keymgr_dpe_scoreboard.sv:433) uvm_test_top.env.scoreboard [uvm_test_top.env.scoreboard] process_update_after_op_done: op OpDpeGenSwOut state StWorkDpeAvailable get_err_code 3get_fault_err 0
process_tl_access: a csr control_shadowed was received that isn't handled
process_tl_access: a csr control_shadowed was received that isn't handled
process_tl_access: a csr control_shadowed was received that isn't handled
process_tl_access: a csr control_shadowed was received that isn't handled
UVM_INFO @ 588471955 ps: (keymgr_dpe_scoreboard.sv:1647) uvm_test_top.env.scoreboard [uvm_test_top.env.scoreboard] get_key_slots '{src_slot:'h0, dst_slot:'h2}
UVM_INFO @ 588471955 ps: (keymgr_dpe_scoreboard.sv:767) uvm_test_top.env.scoreboard [uvm_test_top.env.scoreboard] Start: At StWorkDpeAvailable, OpDpeDisable is issued
UVM_ERROR @ 588663448 ps: (keymgr_dpe_scoreboard.sv:658) uvm_test_top.env.scoreboard [uvm_test_top.env.scoreboard] After a disable kmac sideload key was not presevedexp 'h1d30e68b0e08e5681910c8d5e59e690e371fe15a1a67bce26eed314f1d249864ae0c9999f887e2bfdcae6feba92af88c2577a6649a17cc16f605dd225f69f07a vs. act 'h0
UVM_INFO @ 588663448 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]
--- UVM Report catcher Summary ---
```
This should be further investigated!
Edit: One suspicion is that the DV doesn't handle the shared `kmac` interface properly. The sideload interface to the `kmac` is used twofold: Sideload a Key which the `kmac` can use for its own good and sideload a `DPE context` for either a new context derivation or for a key generation.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.