Files
sw_openocd/src/target/espressif/esp32_sysview.h
Erhan Kurubas a0fecd6c41 target/espressif: add system level tracing feature
Produces traces compatible with SEGGER SystemView tool.

Signed-off-by: Erhan Kurubas <erhan.kurubas@espressif.com>
Change-Id: If1057309edbb91ed2cf1ebf9137c378d3deb9b88
Reviewed-on: https://review.openocd.org/c/openocd/+/7606
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2023-05-27 06:38:51 +00:00

39 lines
1.2 KiB
C

/* SPDX-License-Identifier: GPL-2.0-or-later */
/***************************************************************************
* ESP32 sysview tracing module *
* Copyright (C) 2020 Espressif Systems Ltd. *
***************************************************************************/
#ifndef OPENOCD_TARGET_ESP32_SYSVIEW_H
#define OPENOCD_TARGET_ESP32_SYSVIEW_H
#include <stdint.h>
#include "esp32_apptrace.h"
struct esp32_sysview_cmd_data {
/* Should be the first field. Generic apptrace command handling code accesses it */
struct esp32_apptrace_cmd_data apptrace;
struct esp32_apptrace_dest data_dests[ESP32_APPTRACE_MAX_CORES_NUM];
bool mcore_format;
uint32_t sv_acc_time_delta;
unsigned int sv_last_core_id;
int sv_trace_running;
};
struct esp32_apptrace_cmd_ctx;
int esp32_sysview_cmd_init(struct esp32_apptrace_cmd_ctx *cmd_ctx,
struct command_invocation *cmd,
int mode,
bool mcore_format,
const char **argv,
int argc);
int esp32_sysview_cmd_cleanup(struct esp32_apptrace_cmd_ctx *cmd_ctx);
int esp32_sysview_process_data(struct esp32_apptrace_cmd_ctx *ctx,
unsigned int core_id,
uint8_t *data,
uint32_t data_len);
#endif /* OPENOCD_TARGET_ESP32_SYSVIEW_H */