| Bits | Identifier | Access | Reset | Decoded | Name | |
|---|---|---|---|---|---|---|
| [31] | haltreq | r | 0x0 | - | ||
| [30] | resumereq | r | 0x0 | - | ||
| [29] | hartreset | r | 0x0 | - | ||
| [28] | ackhavereset | r | 0x0 | - | ||
| [27] | - | - | - | - | ||
| [26] | hasel | r | 0x0 | - | ||
| [25:16] | hartsello | r | 0x0 | - | ||
| [15:6] | hartselhi | r | 0x0 | - | ||
| [5:4] | - | - | - | - | ||
| [3] | setresethaltreq | r | 0x0 | - | ||
| [2] | clrresethaltreq | w, woclr | 0x0 | - | ||
| [1] | ndmreset | r | 0x0 | - | ||
| [0] | dmactive | r | 0x0 | - |
This bit controls the reset signal from the DM to the rest of the system.
The signal should reset every part of the system, including every hart, except for the DM and any logic required to access the DM.
To perform a system reset the debugger writes 1, and then writes 0 to deassert the reset.
This bit serves as a reset signal for the Debug Module itself.
A debugger may pulse this bit low to get the Debug Module into a known state.
Implementations may pay attention to this bit to further aid debugging, for example by preventing the Debug Module from being power gated while debugging is active.