armv7m_trace, stlink: provide APIs to capture trace with an adapter
Change-Id: I9d193dd5af382912e4fe838bd4f612cffd11b295 Signed-off-by: Paul Fertser <fercerpav@gmail.com> Reviewed-on: http://openocd.zylin.com/2540 Tested-by: jenkins
This commit is contained in:
committed by
Spencer Oliver
parent
a09a75653d
commit
6819468a78
@@ -28,6 +28,7 @@
|
||||
#define OPENOCD_JTAG_INTERFACE_H
|
||||
|
||||
#include <jtag/jtag.h>
|
||||
#include <target/armv7m_trace.h>
|
||||
|
||||
/* @file
|
||||
* The "Cable Helper API" is what the cable drivers can use to help
|
||||
@@ -298,11 +299,39 @@ struct jtag_interface {
|
||||
* @returns ERROR_OK on success, or an error code on failure.
|
||||
*/
|
||||
int (*srst_asserted)(int *srst_asserted);
|
||||
|
||||
/**
|
||||
* Configure trace parameters for the adapter
|
||||
*
|
||||
* @param enabled Whether to enable trace
|
||||
* @param pin_protocol Configured pin protocol
|
||||
* @param port_size Trace port width for sync mode
|
||||
* @param trace_freq A pointer to the configured trace
|
||||
* frequency; if it points to 0, the adapter driver must write
|
||||
* its maximum supported rate there
|
||||
* @returns ERROR_OK on success, an error code on failure.
|
||||
*/
|
||||
int (*config_trace)(bool enabled, enum tpio_pin_protocol pin_protocol,
|
||||
uint32_t port_size, unsigned int *trace_freq);
|
||||
|
||||
/**
|
||||
* Poll for new trace data
|
||||
*
|
||||
* @param buf A pointer to buffer to store received data
|
||||
* @param size A pointer to buffer size; must be filled with
|
||||
* the actual amount of bytes written
|
||||
*
|
||||
* @returns ERROR_OK on success, an error code on failure.
|
||||
*/
|
||||
int (*poll_trace)(uint8_t *buf, size_t *size);
|
||||
};
|
||||
|
||||
extern const char * const jtag_only[];
|
||||
|
||||
void adapter_assert_reset(void);
|
||||
void adapter_deassert_reset(void);
|
||||
int adapter_config_trace(bool enabled, enum tpio_pin_protocol pin_protocol,
|
||||
uint32_t port_size, unsigned int *trace_freq);
|
||||
int adapter_poll_trace(uint8_t *buf, size_t *size);
|
||||
|
||||
#endif /* OPENOCD_JTAG_INTERFACE_H */
|
||||
|
||||
Reference in New Issue
Block a user