Tested with 1.8 and 1.9 binary Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>pull/90/head
parent
c1dee8527e
commit
5a10f27be1
8 changed files with 646 additions and 125 deletions
@ -0,0 +1,104 @@ |
||||
/**
|
||||
****************************************************************************** |
||||
* @file dbg_trace.h |
||||
* @author MCD Application Team |
||||
* @brief Header for dbg_trace.c |
||||
****************************************************************************** |
||||
* @attention |
||||
* |
||||
* <h2><center>© Copyright (c) 2019 STMicroelectronics.
|
||||
* All rights reserved.</center></h2> |
||||
* |
||||
* This software component is licensed by ST under BSD 3-Clause license, |
||||
* the "License"; You may not use this file except in compliance with the
|
||||
* License. You may obtain a copy of the License at: |
||||
* opensource.org/licenses/BSD-3-Clause |
||||
* |
||||
****************************************************************************** |
||||
*/ |
||||
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/ |
||||
#ifndef __DBG_TRACE_H |
||||
#define __DBG_TRACE_H |
||||
|
||||
#ifdef __cplusplus |
||||
extern "C" |
||||
{ |
||||
#endif |
||||
|
||||
/* Exported types ------------------------------------------------------------*/ |
||||
/* External variables --------------------------------------------------------*/ |
||||
/* Exported macros -----------------------------------------------------------*/ |
||||
#if ( ( CFG_DEBUG_TRACE_FULL != 0 ) || ( CFG_DEBUG_TRACE_LIGHT != 0 ) ) |
||||
#define PRINT_LOG_BUFF_DBG(...) DbgTraceBuffer(__VA_ARGS__) |
||||
#if ( CFG_DEBUG_TRACE_FULL != 0 ) |
||||
#define PRINT_MESG_DBG(...) do{printf("\r\n [%s][%s][%d] ", DbgTraceGetFileName(__FILE__),__FUNCTION__,__LINE__);printf(__VA_ARGS__);}while(0); |
||||
#else |
||||
#define PRINT_MESG_DBG printf |
||||
#endif |
||||
#else |
||||
#define PRINT_LOG_BUFF_DBG(...) |
||||
#define PRINT_MESG_DBG(...) |
||||
#endif |
||||
|
||||
#define PRINT_NO_MESG(...) |
||||
|
||||
/* Exported functions ------------------------------------------------------- */ |
||||
|
||||
/**
|
||||
* @brief Request the user to initialize the peripheral to output traces |
||||
* |
||||
* @param None |
||||
* @retval None |
||||
*/ |
||||
extern void DbgOutputInit( void ); |
||||
|
||||
/**
|
||||
* @brief Request the user to sent the traces on the output peripheral |
||||
* |
||||
* @param p_data: Address of the buffer to be sent |
||||
* @param size: Size of the data to be sent |
||||
* @param cb: Function to be called when the data has been sent |
||||
* @retval None |
||||
*/ |
||||
extern void DbgOutputTraces( uint8_t *p_data, uint16_t size, void (*cb)(void) ); |
||||
|
||||
/**
|
||||
* @brief DbgTraceInit Initialize Logging feature. |
||||
* |
||||
* @param: None |
||||
* @retval: None |
||||
*/ |
||||
void DbgTraceInit( void ); |
||||
|
||||
/**********************************************************************************************************************/ |
||||
/** This function outputs into the log the buffer (in hex) and the provided format string and arguments.
|
||||
*********************************************************************************************************************** |
||||
* |
||||
* @param pBuffer Buffer to be output into the logs. |
||||
* @param u32Length Length of the buffer, in bytes. |
||||
* @param strFormat The format string in printf() style. |
||||
* @param ... Arguments of the format string. |
||||
* |
||||
**********************************************************************************************************************/ |
||||
void DbgTraceBuffer( const void *pBuffer , uint32_t u32Length , const char *strFormat , ... ); |
||||
|
||||
const char *DbgTraceGetFileName( const char *fullpath ); |
||||
|
||||
/**
|
||||
* @brief Override the standard lib function to redirect printf to USART. |
||||
* @param handle output handle (STDIO, STDERR...) |
||||
* @param buf buffer to write |
||||
* @param bufsize buffer size |
||||
* @retval Number of elements written |
||||
*/ |
||||
size_t DbgTraceWrite(int handle, const unsigned char * buf, size_t bufSize); |
||||
|
||||
#ifdef __cplusplus |
||||
} |
||||
#endif |
||||
|
||||
#endif /*__DBG_TRACE_H */ |
||||
|
||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
@ -0,0 +1,126 @@ |
||||
/**
|
||||
****************************************************************************** |
||||
* File Name : tl_dbg_conf.h |
||||
* Description : Debug configuration file for stm32wpan transport layer interface. |
||||
* |
||||
****************************************************************************** |
||||
* @attention |
||||
* |
||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. |
||||
* All rights reserved.</center></h2> |
||||
* |
||||
* This software component is licensed by ST under Ultimate Liberty license |
||||
* SLA0044, the "License"; You may not use this file except in compliance with |
||||
* the License. You may obtain a copy of the License at: |
||||
* www.st.com/SLA0044 |
||||
* |
||||
****************************************************************************** |
||||
*/ |
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/ |
||||
#ifndef __TL_DBG_CONF_H |
||||
#define __TL_DBG_CONF_H |
||||
|
||||
/* USER CODE BEGIN Tl_Conf */ |
||||
|
||||
/* Includes ------------------------------------------------------------------*/ |
||||
#include "app_conf.h" /* required as some configuration used in dbg_trace.h are set there */ |
||||
#include "dbg_trace.h" |
||||
#include "hw_if.h" |
||||
|
||||
/**
|
||||
* Enable or Disable traces |
||||
* The raw data output is the hci binary packet format as specified by the BT specification * |
||||
*/ |
||||
#define TL_SHCI_CMD_DBG_EN 0 /* Reports System commands sent to CPU2 and the command response */ |
||||
#define TL_SHCI_CMD_DBG_RAW_EN 0 /* Reports raw data System commands sent to CPU2 and the command response */ |
||||
#define TL_SHCI_EVT_DBG_EN 0 /* Reports System Asynchronous Events received from CPU2 */ |
||||
#define TL_SHCI_EVT_DBG_RAW_EN 0 /* Reports raw data System Asynchronous Events received from CPU2 */ |
||||
|
||||
#define TL_HCI_CMD_DBG_EN 0 /* Reports BLE command sent to CPU2 and the command response */ |
||||
#define TL_HCI_CMD_DBG_RAW_EN 0 /* Reports raw data BLE command sent to CPU2 and the command response */ |
||||
#define TL_HCI_EVT_DBG_EN 0 /* Reports BLE Asynchronous Events received from CPU2 */ |
||||
#define TL_HCI_EVT_DBG_RAW_EN 0 /* Reports raw data BLE Asynchronous Events received from CPU2 */ |
||||
|
||||
#define TL_MM_DBG_EN 0 /* Reports the informations of the buffer released to CPU2 */ |
||||
|
||||
/**
|
||||
* Macro definition |
||||
*/ |
||||
|
||||
/**
|
||||
* System Transport Layer |
||||
*/ |
||||
#if (TL_SHCI_CMD_DBG_EN != 0) |
||||
#define TL_SHCI_CMD_DBG_MSG PRINT_MESG_DBG |
||||
#define TL_SHCI_CMD_DBG_BUF PRINT_LOG_BUFF_DBG |
||||
#else |
||||
#define TL_SHCI_CMD_DBG_MSG(...) |
||||
#define TL_SHCI_CMD_DBG_BUF(...) |
||||
#endif |
||||
|
||||
#if (TL_SHCI_CMD_DBG_RAW_EN != 0) |
||||
#define TL_SHCI_CMD_DBG_RAW(_PDATA_, _SIZE_) HW_UART_Transmit(hw_uart1, (uint8_t*)_PDATA_, _SIZE_, (~0)) |
||||
#else |
||||
#define TL_SHCI_CMD_DBG_RAW(...) |
||||
#endif |
||||
|
||||
#if (TL_SHCI_EVT_DBG_EN != 0) |
||||
#define TL_SHCI_EVT_DBG_MSG PRINT_MESG_DBG |
||||
#define TL_SHCI_EVT_DBG_BUF PRINT_LOG_BUFF_DBG |
||||
#else |
||||
#define TL_SHCI_EVT_DBG_MSG(...) |
||||
#define TL_SHCI_EVT_DBG_BUF(...) |
||||
#endif |
||||
|
||||
#if (TL_SHCI_EVT_DBG_RAW_EN != 0) |
||||
#define TL_SHCI_EVT_DBG_RAW(_PDATA_, _SIZE_) HW_UART_Transmit(hw_uart1, (uint8_t*)_PDATA_, _SIZE_, (~0)) |
||||
#else |
||||
#define TL_SHCI_EVT_DBG_RAW(...) |
||||
#endif |
||||
|
||||
/**
|
||||
* BLE Transport Layer |
||||
*/ |
||||
#if (TL_HCI_CMD_DBG_EN != 0) |
||||
#define TL_HCI_CMD_DBG_MSG PRINT_MESG_DBG |
||||
#define TL_HCI_CMD_DBG_BUF PRINT_LOG_BUFF_DBG |
||||
#else |
||||
#define TL_HCI_CMD_DBG_MSG(...) |
||||
#define TL_HCI_CMD_DBG_BUF(...) |
||||
#endif |
||||
|
||||
#if (TL_HCI_CMD_DBG_RAW_EN != 0) |
||||
#define TL_HCI_CMD_DBG_RAW(_PDATA_, _SIZE_) HW_UART_Transmit(hw_uart1, (uint8_t*)_PDATA_, _SIZE_, (~0)) |
||||
#else |
||||
#define TL_HCI_CMD_DBG_RAW(...) |
||||
#endif |
||||
|
||||
#if (TL_HCI_EVT_DBG_EN != 0) |
||||
#define TL_HCI_EVT_DBG_MSG PRINT_MESG_DBG |
||||
#define TL_HCI_EVT_DBG_BUF PRINT_LOG_BUFF_DBG |
||||
#else |
||||
#define TL_HCI_EVT_DBG_MSG(...) |
||||
#define TL_HCI_EVT_DBG_BUF(...) |
||||
#endif |
||||
|
||||
#if (TL_HCI_EVT_DBG_RAW_EN != 0) |
||||
#define TL_HCI_EVT_DBG_RAW(_PDATA_, _SIZE_) HW_UART_Transmit(hw_uart1, (uint8_t*)_PDATA_, _SIZE_, (~0)) |
||||
#else |
||||
#define TL_HCI_EVT_DBG_RAW(...) |
||||
#endif |
||||
|
||||
/**
|
||||
* Memory Manager - Released buffer tracing |
||||
*/ |
||||
#if (TL_MM_DBG_EN != 0) |
||||
#define TL_MM_DBG_MSG PRINT_MESG_DBG |
||||
#else |
||||
#define TL_MM_DBG_MSG(...) |
||||
#endif |
||||
|
||||
/* USER CODE END Tl_Conf */ |
||||
|
||||
#endif /*__TL_DBG_CONF_H */ |
||||
|
||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
Loading…
Reference in new issue