OpenOCD
esp_xtensa.c File Reference
Include dependency graph for esp_xtensa.c:

Go to the source code of this file.

Macros

#define ESP_XTENSA_DBGSTUBS_UPDATE_CODE_ENTRY(_e_)
 
#define ESP_XTENSA_DBGSTUBS_UPDATE_DATA_ENTRY(_e_)
 
#define MAX_PASS   1000
 
#define MIN_PASS   200
 

Functions

int esp_xtensa_arch_state (struct target *target)
 
int esp_xtensa_breakpoint_add (struct target *target, struct breakpoint *breakpoint)
 
int esp_xtensa_breakpoint_remove (struct target *target, struct breakpoint *breakpoint)
 
static void esp_xtensa_dbgstubs_addr_check (struct target *target)
 
static void esp_xtensa_dbgstubs_info_update (struct target *target)
 
static int esp_xtensa_dbgstubs_restore (struct target *target)
 
int esp_xtensa_init_arch_info (struct target *target, struct esp_xtensa_common *esp_xtensa, struct xtensa_debug_module_config *dm_cfg, const struct esp_semihost_ops *semihost_ops)
 
int esp_xtensa_on_halt (struct target *target)
 
int esp_xtensa_poll (struct target *target)
 
int esp_xtensa_profiling (struct target *target, uint32_t *samples, uint32_t max_num_samples, uint32_t *num_samples, uint32_t seconds)
 
void esp_xtensa_target_deinit (struct target *target)
 
int esp_xtensa_target_init (struct command_context *cmd_ctx, struct target *target)
 

Macro Definition Documentation

◆ ESP_XTENSA_DBGSTUBS_UPDATE_CODE_ENTRY

#define ESP_XTENSA_DBGSTUBS_UPDATE_CODE_ENTRY (   _e_)
Value:
do { \
uint32_t __internal_val = (_e_); \
if (__internal_val == 0) { \
LOG_ERROR("No valid stub code entry found (0x%" PRIx32 ")!", __internal_val); \
return; \
} \
} while (0)

Definition at line 31 of file esp_xtensa.c.

◆ ESP_XTENSA_DBGSTUBS_UPDATE_DATA_ENTRY

#define ESP_XTENSA_DBGSTUBS_UPDATE_DATA_ENTRY (   _e_)
Value:
do { \
uint32_t __internal_val = (_e_); \
if (!xtensa_data_addr_valid(target, __internal_val)) { \
LOG_ERROR("No valid stub data entry found (0x%" PRIx32 ")!", __internal_val); \
return; \
} \
} while (0)
Definition: target.h:116
static bool xtensa_data_addr_valid(struct target *target, uint32_t addr)
Definition: xtensa.h:314

Definition at line 22 of file esp_xtensa.c.

◆ MAX_PASS

#define MAX_PASS   1000

◆ MIN_PASS

#define MIN_PASS   200

Function Documentation

◆ esp_xtensa_arch_state()

int esp_xtensa_arch_state ( struct target target)

Definition at line 100 of file esp_xtensa.c.

References ERROR_OK.

◆ esp_xtensa_breakpoint_add()

int esp_xtensa_breakpoint_add ( struct target target,
struct breakpoint breakpoint 
)

Definition at line 171 of file esp_xtensa.c.

References xtensa_breakpoint_add().

◆ esp_xtensa_breakpoint_remove()

int esp_xtensa_breakpoint_remove ( struct target target,
struct breakpoint breakpoint 
)

Definition at line 177 of file esp_xtensa.c.

References xtensa_breakpoint_remove().

◆ esp_xtensa_dbgstubs_addr_check()

◆ esp_xtensa_dbgstubs_info_update()

◆ esp_xtensa_dbgstubs_restore()

static int esp_xtensa_dbgstubs_restore ( struct target target)
static

◆ esp_xtensa_init_arch_info()

◆ esp_xtensa_on_halt()

int esp_xtensa_on_halt ( struct target target)

Definition at line 58 of file esp_xtensa.c.

References ERROR_OK, and esp_xtensa_dbgstubs_info_update().

Referenced by esp32s2_on_halt(), and esp_xtensa_smp_on_halt().

◆ esp_xtensa_poll()

◆ esp_xtensa_profiling()

int esp_xtensa_profiling ( struct target target,
uint32_t *  samples,
uint32_t  max_num_samples,
uint32_t *  num_samples,
uint32_t  seconds 
)

◆ esp_xtensa_target_deinit()

void esp_xtensa_target_deinit ( struct target target)

◆ esp_xtensa_target_init()

int esp_xtensa_target_init ( struct command_context cmd_ctx,
struct target target 
)

Definition at line 82 of file esp_xtensa.c.

References xtensa_target_init().

Referenced by esp_xtensa_smp_target_init().