pub enum DebugFunction {
Show 37 variants
Read8 {
addr: Expression,
},
Read16 {
addr: Expression,
},
Read32 {
addr: Expression,
},
Read64 {
addr: Expression,
},
Write8 {
addr: Expression,
val: Expression,
},
Write16 {
addr: Expression,
val: Expression,
},
Write32 {
addr: Expression,
val: Expression,
},
Write64 {
addr: Expression,
val: Expression,
},
ReadAP {
addr: Expression,
},
WriteAP {
addr: Expression,
val: Expression,
},
ReadDP {
addr: Expression,
},
WriteDP {
addr: Expression,
val: Expression,
},
ReadAccessAP {
addr: Expression,
},
WriteAccessAP {
addr: Expression,
val: Expression,
},
DapDelay {
delay: Expression,
},
DapWriteAbort {
value: Expression,
},
DapSwjPins {
pinout: Expression,
pinselect: Expression,
pinwait: Expression,
},
DapSwjClock {
val: Expression,
},
DapSwjSequence {
cnt: Expression,
val: Expression,
},
DapJtagSequence {
cnt: Expression,
tms: Expression,
tdi: Expression,
},
Sequence {
name: Expression,
},
Query {
query_type: Expression,
message: Expression,
default: Expression,
},
QueryValue {
message: Expression,
default: Expression,
},
Message {
msg_type: Expression,
format: Expression,
args: Vec<Expression>,
},
FlashWriteBuffer {
addr: Expression,
offs: Expression,
len: Expression,
mode: Expression,
},
FlashLoadAlgorithm {
algo_path: Expression,
ram_start: Expression,
ram_size: Expression,
},
BufferSet {
buff_id: Expression,
buff_offset: Expression,
count: Expression,
size: Expression,
value: Expression,
},
BufferGet {
buff_id: Expression,
buff_offset: Expression,
size: Expression,
},
BufferSize {
buff_id: Expression,
},
BufferRead {
buff_id: Expression,
buff_offset: Expression,
addr: Expression,
length: Expression,
mode: Expression,
},
BufferWrite {
buff_id: Expression,
buff_offset: Expression,
addr: Expression,
length: Expression,
mode: Expression,
},
BufferStreamIn {
buff_id: Expression,
buff_offset: Expression,
length: Expression,
path: Expression,
mode: Expression,
timeout: Expression,
},
BufferStreamOut {
buff_id: Expression,
buff_offset: Expression,
length: Expression,
dest_path: Expression,
dest_mode: Expression,
timeout: Expression,
},
RunApplication {
app_path: Expression,
arguments: Expression,
work_directory: Expression,
timeout: Expression,
},
RunPythonScript {
script_path: Expression,
arguments: Expression,
work_directory: Expression,
timeout: Expression,
},
FilePathExists {
path: Expression,
timeout: Expression,
},
LoadDebugInfo {
file: Expression,
},
}Expand description
A predefined PDSC debug access function.
Unknown function names are a parse error — if the spec adds new functions they will surface as panics.
Variants§
Read8
Read 8-bit value from target memory
Fields
addr: ExpressionRead16
Read 16-bit value from target memory
Fields
addr: ExpressionRead32
Read 32-bit value from target memory
Fields
addr: ExpressionRead64
Read 64-bit value from target memory
Fields
addr: ExpressionWrite8
Write 8-bit value to target memory
Write16
Write 16-bit value to target memory
Write32
Write 32-bit value to target memory
Write64
Write 64-bit value to target memory
ReadAP
Read access port register
Fields
addr: ExpressionWriteAP
Write access port register
ReadDP
Read debug port register
Fields
addr: ExpressionWriteDP
Write debug port register
ReadAccessAP
APv2/ADIv6 access port read
Fields
addr: ExpressionWriteAccessAP
APv2/ADIv6 access port write
DapDelay
Wait for a specific delay (microseconds)
Fields
delay: ExpressionDapWriteAbort
Write abort request to CoreSight register
Fields
value: ExpressionDapSwjPins
Monitor and control debugger I/O pins
DapSwjClock
Set JTAG/SWD clock frequency (Hz)
Fields
val: ExpressionDapSwjSequence
Generate SWJ sequences
DapJtagSequence
Generate JTAG sequences
Sequence
Execute a debug access sequence by name
Fields
name: ExpressionQuery
Prompt user for confirmation or selection
QueryValue
Query an input value from the user
Message
Output a formatted message to the debug log (variadic: msg_type, format, then optional extra args)
FlashWriteBuffer
Write flash buffer contents into target memory
FlashLoadAlgorithm
Select FLM flash algorithm for operations
BufferSet
Fill buffer with a value pattern
Fields
buff_id: Expressionbuff_offset: Expressioncount: Expressionsize: Expressionvalue: ExpressionBufferGet
Retrieve an item from a buffer
BufferSize
Get current buffer size in bytes
Fields
buff_id: ExpressionBufferRead
Read target data into a buffer
Fields
buff_id: Expressionbuff_offset: Expressionaddr: Expressionlength: Expressionmode: ExpressionBufferWrite
Transfer buffer data to target
Fields
buff_id: Expressionbuff_offset: Expressionaddr: Expressionlength: Expressionmode: ExpressionBufferStreamIn
Stream data from an external source into a buffer
Fields
buff_id: Expressionbuff_offset: Expressionlength: Expressionpath: Expressionmode: Expressiontimeout: ExpressionBufferStreamOut
Transfer buffer data to an external sink
Fields
buff_id: Expressionbuff_offset: Expressionlength: Expressiondest_path: Expressiondest_mode: Expressiontimeout: ExpressionRunApplication
Execute an external application
RunPythonScript
Run a Python script on the host system
FilePathExists
Check if a path exists on the host filesystem
LoadDebugInfo
Load DWARF debug information
Fields
file: ExpressionTrait Implementations§
Source§impl Clone for DebugFunction
impl Clone for DebugFunction
Source§fn clone(&self) -> DebugFunction
fn clone(&self) -> DebugFunction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DebugFunction
impl Debug for DebugFunction
Source§impl Default for DebugFunction
impl Default for DebugFunction
Source§impl<'de> Deserialize<'de> for DebugFunction
impl<'de> Deserialize<'de> for DebugFunction
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for DebugFunction
impl Display for DebugFunction
impl Eq for DebugFunction
Source§impl PartialEq for DebugFunction
impl PartialEq for DebugFunction
Source§impl Serialize for DebugFunction
impl Serialize for DebugFunction
impl StructuralPartialEq for DebugFunction
Source§impl TryFrom<(String, Vec<Expression>)> for DebugFunction
impl TryFrom<(String, Vec<Expression>)> for DebugFunction
Source§fn try_from(
(name, args): (String, Vec<Expression>),
) -> Result<Self, Self::Error>
fn try_from( (name, args): (String, Vec<Expression>), ) -> Result<Self, Self::Error>
Parses a debug access function by name and argument list.
Returns Err if the function name is not in the CMSIS-Pack spec or the argument count is wrong.