12#ifndef ZEPHYR_INCLUDE_SWDP_H_
13#define ZEPHYR_INCLUDE_SWDP_H_
39#define SWDP_REQUEST_APnDP BIT(0)
41#define SWDP_REQUEST_RnW BIT(1)
43#define SWDP_REQUEST_A2 BIT(2)
45#define SWDP_REQUEST_A3 BIT(3)
59#define SWDP_ACK_OK BIT(0)
61#define SWDP_ACK_WAIT BIT(1)
63#define SWDP_ACK_FAULT BIT(2)
68#define SWDP_TRANSFER_ERROR BIT(3)
80#define SWDP_SWCLK_PIN 0U
82#define SWDP_SWDIO_PIN 1U
84#define SWDP_nRESET_PIN 7U
state
Definition parser_state.h:29
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Runtime device structure (in ROM) per driver instance.
Definition device.h:510
Serial Wire Debug Port (SWDP) driver API.
Definition swdp.h:92
int(* swdp_input_sequence)(const struct device *dev, uint32_t count, uint8_t *data)
Read count bits from SWDIO into data LSB first.
Definition swdp.h:113
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.
Definition swdp.h:127
int(* swdp_output_sequence)(const struct device *dev, uint32_t count, const uint8_t *data)
Write count bits to SWDIO from data LSB first.
Definition swdp.h:101
int(* swdp_configure)(const struct device *dev, uint8_t turnaround, bool data_phase)
Configure SWDP interface.
Definition swdp.h:172
int(* swdp_port_on)(const struct device *dev)
Enable interface, set pins to default state.
Definition swdp.h:184
int(* swdp_port_off)(const struct device *dev)
Disable interface, set pins to High-Z mode.
Definition swdp.h:192
int(* swdp_set_clock)(const struct device *dev, uint32_t clock)
Set SWDP clock frequency.
Definition swdp.h:162
int(* swdp_get_pins)(const struct device *dev, uint8_t *state)
Get SWCLK, SWDPIO, and nRESET pins state.
Definition swdp.h:153
int(* swdp_set_pins)(const struct device *dev, uint8_t pins, uint8_t value)
Set SWCLK, SWDPIO, and nRESET pins state.
Definition swdp.h:142