]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace/streamports/USB_CDC/include/trcStreamingPort.h
Update trace recorder code.
[freertos] / FreeRTOS-Plus / Source / FreeRTOS-Plus-Trace / streamports / USB_CDC / include / trcStreamingPort.h
index 65ffc3b2799b9522c26b5d9f735c5fac7625a4a7..34c2e0c5f3911493134f4da571a6c51da740d836 100644 (file)
@@ -1,5 +1,5 @@
 /*******************************************************************************\r
- * Trace Recorder Library for Tracealyzer v3.1.2\r
+ * Trace Recorder Library for Tracealyzer v4.1.1\r
  * Percepio AB, www.percepio.com\r
  *\r
  * trcStreamingPort.h\r
@@ -40,7 +40,7 @@
  *\r
  * Tabs are used for indent in this file (1 tab = 4 spaces)\r
  *\r
- * Copyright Percepio AB, 2017.\r
+ * Copyright Percepio AB, 2018.\r
  * www.percepio.com\r
  ******************************************************************************/\r
 \r
 extern "C" {\r
 #endif\r
 \r
-/*******************************************************************************\r
- * Implement the below macros to define your own stream port. If your transfer \r
- * method uses RTOS functions, you should not send the data directly but use \r
- * the recorder's internal buffer to store the trace data, for later transfer by\r
- * the TzCtrl task. Check the predefined stream ports for examples on how to use \r
- * the internal buffer (e.g., TCP/IP, UART or USB CDC).\r
- *\r
- * Read more at http://percepio.com/2016/10/05/rtos-tracing/  \r
- ******************************************************************************/\r
-\r
 /* Include files as needed, in this case it is files from STM32Cube FW_F7 V1.4.1 */\r
 #include "usb_device.h"\r
 #include "usbd_cdc.h"\r
@@ -70,32 +60,21 @@ extern "C" {
 /* Tested on STM32 devices using Keil/CMSIS USB stack */\r
 \r
 extern USBD_CDC_ItfTypeDef  USBD_Interface_fops_FS;\r
+\r
 uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len);\r
 \r
 int32_t trcCDCReceive(void *data, uint32_t size, int32_t* NumBytes);\r
-int32_t trcCDCTransmit(void* data, uint32_t size, int32_t * noOfBytesSent );\r
 \r
-#if TRC_RECORDER_BUFFER_ALLOCATION == TRC_RECORDER_BUFFER_ALLOCATION_STATIC\r
-#define TRC_STREAM_PORT_ALLOCATE_FIELDS() static char _TzTraceData[TRC_CFG_PAGED_EVENT_BUFFER_PAGE_COUNT * TRC_CFG_PAGED_EVENT_BUFFER_PAGE_SIZE];       /* Static allocation. */\r
-#define TRC_STREAM_PORT_MALLOC() /* Static allocation. Not used. */\r
-#else\r
-#define TRC_STREAM_PORT_ALLOCATE_FIELDS() static char* _TzTraceData = NULL;     /* Dynamic allocation. */\r
-#define TRC_STREAM_PORT_MALLOC() _TzTraceData = TRC_PORT_MALLOC(TRC_PAGED_EVENT_BUFFER_PAGE_COUNT * TRC_PAGED_EVENT_BUFFER_PAGE_SIZE);\r
-#endif\r
+int32_t trcCDCTransmit(void* data, uint32_t size, int32_t * noOfBytesSent );\r
 \r
 #define TRC_STREAM_PORT_INIT() \\r
         MX_USB_DEVICE_Init(); \\r
         TRC_STREAM_PORT_MALLOC(); /*Dynamic allocation or empty if static */\r
 \r
-#define TRC_STREAM_PORT_ALLOCATE_EVENT(_type, _ptrData, _size) _type* _ptrData; _ptrData = (_type*)prvPagedEventBufferGetWritePointer(_size);\r
+#define TRC_STREAM_PORT_READ_DATA(_ptrData, _size, _ptrBytesRead) trcCDCReceive(_ptrData, _size, _ptrBytesRead)\r
 \r
-#define TRC_STREAM_PORT_ALLOCATE_DYNAMIC_EVENT(_type, _ptrData, _size) TRC_STREAM_PORT_ALLOCATE_EVENT(_type, _ptrData, _size) /* We do the same thing as for non-dynamic event sizes */\r
-#define TRC_STREAM_PORT_COMMIT_EVENT(_ptrData, _size) /* Not needed since we write immediately into the buffer received above by TRC_STREAM_PORT_ALLOCATE_EVENT, and the TRC_STREAM_PORT_PERIODIC_SEND_DATA defined below will take care of the actual trace transfer. */\r
-#define TRC_STREAM_PORT_READ_DATA(_ptrData, _size, _ptrBytesRead) trcCDCReceive(_ptrData, _size, _ptrBytesRead);\r
-#define TRC_STREAM_PORT_PERIODIC_SEND_DATA(_ptrBytesSent) prvPagedEventBufferTransfer(trcCDCTransmit, _ptrBytesSent);\r
+#define TRC_STREAM_PORT_WRITE_DATA(_ptrData, _size, _ptrBytesSent) trcCDCTransmit(_ptrData, _size, _ptrBytesSent)\r
 \r
-#define TRC_STREAM_PORT_ON_TRACE_BEGIN() { prvPagedEventBufferInit(_TzTraceData); }\r
-#define TRC_STREAM_PORT_ON_TRACE_END() /* Do nothing */\r
 \r
 #ifdef __cplusplus\r
 }\r