|
1 | 1 | /*
|
2 |
| - * Copyright (c) 2013-2020 ARM Limited. All rights reserved. |
| 2 | + * Copyright (c) 2013-2021 ARM Limited. All rights reserved. |
3 | 3 | * Copyright 2019, Cypress Semiconductor Corporation
|
4 | 4 | * or a subsidiary of Cypress Semiconductor Corporation.
|
5 | 5 | *
|
|
19 | 19 | *
|
20 | 20 | * ----------------------------------------------------------------------
|
21 | 21 | *
|
22 |
| - * $Date: 26. November 2019 |
23 |
| - * $Revision: V2.0.0 |
| 22 | + * $Date: 26. May 2021 |
| 23 | + * $Revision: V2.1.0 |
24 | 24 | *
|
25 | 25 | * Project: CMSIS-DAP Include
|
26 | 26 | * Title: DAP.h Definitions
|
|
33 | 33 |
|
34 | 34 | // DAP Firmware Version
|
35 | 35 | #ifdef DAP_FW_V1
|
36 |
| -#define DAP_FW_VER "1.2.0" |
| 36 | +#define DAP_FW_VER "1.3.0" |
37 | 37 | #else
|
38 |
| -#define DAP_FW_VER "2.0.0" |
| 38 | +#define DAP_FW_VER "2.1.0" |
39 | 39 | #endif
|
40 | 40 |
|
41 | 41 | // DAP Command IDs
|
|
65 | 65 | #define ID_DAP_SWO_Status 0x1BU
|
66 | 66 | #define ID_DAP_SWO_ExtendedStatus 0x1EU
|
67 | 67 | #define ID_DAP_SWO_Data 0x1CU
|
| 68 | +#define ID_DAP_UART_Transport 0x1FU |
| 69 | +#define ID_DAP_UART_Configure 0x20U |
| 70 | +#define ID_DAP_UART_Control 0x22U |
| 71 | +#define ID_DAP_UART_Status 0x23U |
| 72 | +#define ID_DAP_UART_Transfer 0x21U |
68 | 73 |
|
69 | 74 | #define ID_DAP_QueueCommands 0x7EU
|
70 | 75 | #define ID_DAP_ExecuteCommands 0x7FU
|
|
118 | 123 | #define DAP_ID_VENDOR 1U
|
119 | 124 | #define DAP_ID_PRODUCT 2U
|
120 | 125 | #define DAP_ID_SER_NUM 3U
|
121 |
| -#define DAP_ID_CMSIS_DAP_VER 4U |
122 |
| -#define DAP_ID_FW_VER 4U // Deprecated alias of DAP_ID_CMSIS_DAP_VER for backwards compatibility. |
| 126 | +#define DAP_ID_DAP_FW_VER 4U |
123 | 127 | #define DAP_ID_DEVICE_VENDOR 5U
|
124 | 128 | #define DAP_ID_DEVICE_NAME 6U
|
125 |
| -#define DAP_ID_PRODUCT_FW_VER 7U |
| 129 | +#define DAP_ID_BOARD_VENDOR 7U |
| 130 | +#define DAP_ID_BOARD_NAME 8U |
| 131 | +#define DAP_ID_PRODUCT_FW_VER 9U |
126 | 132 | #define DAP_ID_CAPABILITIES 0xF0U
|
127 | 133 | #define DAP_ID_TIMESTAMP_CLOCK 0xF1U
|
| 134 | +#define DAP_ID_UART_RX_BUFFER_SIZE 0xFBU |
| 135 | +#define DAP_ID_UART_TX_BUFFER_SIZE 0xFCU |
128 | 136 | #define DAP_ID_SWO_BUFFER_SIZE 0xFDU
|
129 | 137 | #define DAP_ID_PACKET_COUNT 0xFEU
|
130 | 138 | #define DAP_ID_PACKET_SIZE 0xFFU
|
|
174 | 182 | #define DAP_SWO_STREAM_ERROR (1U<<6)
|
175 | 183 | #define DAP_SWO_BUFFER_OVERRUN (1U<<7)
|
176 | 184 |
|
| 185 | +// DAP UART Transport |
| 186 | +#define DAP_UART_TRANSPORT_NONE 0U |
| 187 | +#define DAP_UART_TRANSPORT_USB_COM_PORT 1U |
| 188 | +#define DAP_UART_TRANSPORT_DAP_COMMAND 2U |
| 189 | + |
| 190 | +// DAP UART Control |
| 191 | +#define DAP_UART_CONTROL_RX_ENABLE (1U<<0) |
| 192 | +#define DAP_UART_CONTROL_RX_DISABLE (1U<<1) |
| 193 | +#define DAP_UART_CONTROL_RX_BUF_FLUSH (1U<<2) |
| 194 | +#define DAP_UART_CONTROL_TX_ENABLE (1U<<4) |
| 195 | +#define DAP_UART_CONTROL_TX_DISABLE (1U<<5) |
| 196 | +#define DAP_UART_CONTROL_TX_BUF_FLUSH (1U<<6) |
| 197 | + |
| 198 | +// DAP UART Status |
| 199 | +#define DAP_UART_STATUS_RX_ENABLED (1U<<0) |
| 200 | +#define DAP_UART_STATUS_RX_DATA_LOST (1U<<1) |
| 201 | +#define DAP_UART_STATUS_FRAMING_ERROR (1U<<2) |
| 202 | +#define DAP_UART_STATUS_PARITY_ERROR (1U<<3) |
| 203 | +#define DAP_UART_STATUS_TX_ENABLED (1U<<4) |
| 204 | + |
| 205 | +// DAP UART Configure Error |
| 206 | +#define DAP_UART_CFG_ERROR_DATA_BITS (1U<<0) |
| 207 | +#define DAP_UART_CFG_ERROR_PARITY (1U<<1) |
| 208 | +#define DAP_UART_CFG_ERROR_STOP_BITS (1U<<2) |
177 | 209 |
|
178 | 210 | // Debug Port Register Addresses
|
179 | 211 | #define DP_IDCODE 0x00U // IDCODE Register (SW Read only)
|
@@ -272,17 +304,25 @@ extern void SWO_QueueTransfer (uint8_t *buf, uint32_t num);
|
272 | 304 | extern void SWO_AbortTransfer (void);
|
273 | 305 | extern void SWO_TransferComplete (void);
|
274 | 306 |
|
275 |
| -extern uint32_t UART_SWO_Mode (uint32_t enable); |
276 |
| -extern uint32_t UART_SWO_Baudrate (uint32_t baudrate); |
277 |
| -extern uint32_t UART_SWO_Control (uint32_t active); |
278 |
| -extern void UART_SWO_Capture (uint8_t *buf, uint32_t num); |
279 |
| -extern uint32_t UART_SWO_GetCount (void); |
280 |
| - |
281 |
| -extern uint32_t Manchester_SWO_Mode (uint32_t enable); |
282 |
| -extern uint32_t Manchester_SWO_Baudrate (uint32_t baudrate); |
283 |
| -extern uint32_t Manchester_SWO_Control (uint32_t active); |
284 |
| -extern void Manchester_SWO_Capture (uint8_t *buf, uint32_t num); |
285 |
| -extern uint32_t Manchester_SWO_GetCount (void); |
| 307 | +extern uint32_t SWO_Mode_UART (uint32_t enable); |
| 308 | +extern uint32_t SWO_Baudrate_UART (uint32_t baudrate); |
| 309 | +extern uint32_t SWO_Control_UART (uint32_t active); |
| 310 | +extern void SWO_Capture_UART (uint8_t *buf, uint32_t num); |
| 311 | +extern uint32_t SWO_GetCount_UART (void); |
| 312 | + |
| 313 | +extern uint32_t SWO_Mode_Manchester (uint32_t enable); |
| 314 | +extern uint32_t SWO_Baudrate_Manchester (uint32_t baudrate); |
| 315 | +extern uint32_t SWO_Control_Manchester (uint32_t active); |
| 316 | +extern void SWO_Capture_Manchester (uint8_t *buf, uint32_t num); |
| 317 | +extern uint32_t SWO_GetCount_Manchester (void); |
| 318 | + |
| 319 | +extern uint32_t UART_Transport (const uint8_t *request, uint8_t *response); |
| 320 | +extern uint32_t UART_Configure (const uint8_t *request, uint8_t *response); |
| 321 | +extern uint32_t UART_Control (const uint8_t *request, uint8_t *response); |
| 322 | +extern uint32_t UART_Status (uint8_t *response); |
| 323 | +extern uint32_t UART_Transfer (const uint8_t *request, uint8_t *response); |
| 324 | + |
| 325 | +extern uint8_t USB_COM_PORT_Activate (uint32_t cmd); |
286 | 326 |
|
287 | 327 | extern uint32_t DAP_ProcessVendorCommand (const uint8_t *request, uint8_t *response);
|
288 | 328 | extern uint32_t DAP_ProcessCommand (const uint8_t *request, uint8_t *response);
|
|
0 commit comments