Zephyr API Documentation 4.2.99
A Scalable Open Source RTOS
|
Serial Wire Debug Port (SWDP) driver API. More...
#include <zephyr/drivers/swdp.h>
Data Fields | |
int(* | swdp_output_sequence )(const struct device *dev, uint32_t count, const uint8_t *data) |
Write count bits to SWDIO from data LSB first. | |
int(* | swdp_input_sequence )(const struct device *dev, uint32_t count, uint8_t *data) |
Read count bits from SWDIO into data LSB first. | |
int(* | swdp_transfer )(const struct device *dev, uint8_t request, uint32_t *data, uint8_t idle_cycles, uint8_t *response) |
Perform SWDP transfer and store response. | |
int(* | swdp_set_pins )(const struct device *dev, uint8_t pins, uint8_t value) |
Set SWCLK, SWDPIO, and nRESET pins state. | |
int(* | swdp_get_pins )(const struct device *dev, uint8_t *state) |
Get SWCLK, SWDPIO, and nRESET pins state. | |
int(* | swdp_set_clock )(const struct device *dev, uint32_t clock) |
Set SWDP clock frequency. | |
int(* | swdp_configure )(const struct device *dev, uint8_t turnaround, bool data_phase) |
Configure SWDP interface. | |
int(* | swdp_port_on )(const struct device *dev) |
Enable interface, set pins to default state. | |
int(* | swdp_port_off )(const struct device *dev) |
Disable interface, set pins to High-Z mode. |
Serial Wire Debug Port (SWDP) driver API.
This is the mandatory API any Serial Wire Debug Port driver needs to expose.
Configure SWDP interface.
dev | SWDP device |
turnaround | Line turnaround cycles |
data_phase | Always generate Data Phase (also on WAIT/FAULT) |
Get SWCLK, SWDPIO, and nRESET pins state.
dev | SWDP device |
state | Place to store pins state |
Read count bits from SWDIO into data LSB first.
dev | SWDP device |
count | Number of bits to read |
data | Buffer to store bits read |
int(* swdp_api::swdp_output_sequence) (const struct device *dev, uint32_t count, const uint8_t *data) |
Write count bits to SWDIO from data LSB first.
dev | SWDP device |
count | Number of bits to write |
data | Bits to write |
int(* swdp_api::swdp_port_off) (const struct device *dev) |
Disable interface, set pins to High-Z mode.
dev | SWDP device |
int(* swdp_api::swdp_port_on) (const struct device *dev) |
Enable interface, set pins to default state.
dev | SWDP device |
Set SWDP clock frequency.
dev | SWDP device |
clock | Clock frequency in Hz |
Set SWCLK, SWDPIO, and nRESET pins state.
dev | SWDP device |
pins | Bitmask of pins to set |
value | Value to set pins to |
int(* swdp_api::swdp_transfer) (const struct device *dev, uint8_t request, uint32_t *data, uint8_t idle_cycles, uint8_t *response) |
Perform SWDP transfer and store response.
dev | SWDP device |
request | SWDP request bits |
data | Data to be transferred with request |
idle_cycles | Idle cycles between request and response |
response | Buffer to store response (ACK/WAIT/FAULT) |