|
Zephyr API Documentation 4.3.0-rc2
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) |