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

Go to the source code of this file.

Data Structures

struct  hwthread_params
 

Macros

#define HW_THREAD_NAME_STR_SIZE   (32)
 

Functions

static int hwthread_create (struct target *target)
 
static bool hwthread_detect_rtos (struct target *target)
 
static int hwthread_fill_thread (struct rtos *rtos, struct target *curr, int thread_num, threadid_t tid)
 
static struct targethwthread_find_thread (struct target *target, threadid_t thread_id)
 
static int hwthread_get_symbol_list_to_lookup (struct symbol_table_elem *symbol_list[])
 
static int hwthread_get_thread_reg (struct rtos *rtos, int64_t thread_id, uint32_t reg_num, struct rtos_reg *rtos_reg)
 
static int hwthread_get_thread_reg_list (struct rtos *rtos, int64_t thread_id, struct rtos_reg **reg_list, int *num_regs)
 
static int hwthread_read_buffer (struct rtos *rtos, target_addr_t address, uint32_t size, uint8_t *buffer)
 
static int hwthread_set_reg (struct rtos *rtos, uint32_t reg_num, uint8_t *reg_value)
 
static int hwthread_smp_init (struct target *target)
 
static int hwthread_target_for_threadid (struct connection *connection, int64_t thread_id, struct target **p_target)
 
static int hwthread_thread_packet (struct connection *connection, const char *packet, int packet_size)
 
static int hwthread_update_threads (struct rtos *rtos)
 
static int hwthread_write_buffer (struct rtos *rtos, target_addr_t address, uint32_t size, const uint8_t *buffer)
 
static threadid_t threadid_from_target (const struct target *target)
 

Variables

const struct rtos_type hwthread_rtos
 

Macro Definition Documentation

◆ HW_THREAD_NAME_STR_SIZE

#define HW_THREAD_NAME_STR_SIZE   (32)

Definition at line 32 of file hwthread.c.

Function Documentation

◆ hwthread_create()

◆ hwthread_detect_rtos()

static bool hwthread_detect_rtos ( struct target target)
static

Definition at line 369 of file hwthread.c.

◆ hwthread_fill_thread()

static int hwthread_fill_thread ( struct rtos rtos,
struct target curr,
int  thread_num,
threadid_t  tid 
)
static

◆ hwthread_find_thread()

◆ hwthread_get_symbol_list_to_lookup()

static int hwthread_get_symbol_list_to_lookup ( struct symbol_table_elem symbol_list[])
static

Definition at line 348 of file hwthread.c.

References NULL.

◆ hwthread_get_thread_reg()

static int hwthread_get_thread_reg ( struct rtos rtos,
int64_t  thread_id,
uint32_t  reg_num,
struct rtos_reg rtos_reg 
)
static

◆ hwthread_get_thread_reg_list()

static int hwthread_get_thread_reg_list ( struct rtos rtos,
int64_t  thread_id,
struct rtos_reg **  reg_list,
int *  num_regs 
)
static

◆ hwthread_read_buffer()

static int hwthread_read_buffer ( struct rtos rtos,
target_addr_t  address,
uint32_t  size,
uint8_t *  buffer 
)
static

◆ hwthread_set_reg()

static int hwthread_set_reg ( struct rtos rtos,
uint32_t  reg_num,
uint8_t *  reg_value 
)
static

◆ hwthread_smp_init()

static int hwthread_smp_init ( struct target target)
static

Definition at line 213 of file hwthread.c.

References hwthread_update_threads(), and target::rtos.

◆ hwthread_target_for_threadid()

static int hwthread_target_for_threadid ( struct connection connection,
int64_t  thread_id,
struct target **  p_target 
)
static

◆ hwthread_thread_packet()

static int hwthread_thread_packet ( struct connection connection,
const char *  packet,
int  packet_size 
)
static

◆ hwthread_update_threads()

◆ hwthread_write_buffer()

static int hwthread_write_buffer ( struct rtos rtos,
target_addr_t  address,
uint32_t  size,
const uint8_t *  buffer 
)
static

◆ threadid_from_target()

static threadid_t threadid_from_target ( const struct target target)
inlinestatic

Definition at line 34 of file hwthread.c.

Referenced by hwthread_thread_packet(), and hwthread_update_threads().

Variable Documentation

◆ hwthread_rtos

const struct rtos_type hwthread_rtos
Initial value:
= {
.name = "hwthread",
.detect_rtos = hwthread_detect_rtos,
.create = hwthread_create,
.update_threads = hwthread_update_threads,
.get_thread_reg_list = hwthread_get_thread_reg_list,
.get_thread_reg = hwthread_get_thread_reg,
.get_symbol_list_to_lookup = hwthread_get_symbol_list_to_lookup,
.smp_init = hwthread_smp_init,
.set_reg = hwthread_set_reg,
.read_buffer = hwthread_read_buffer,
.write_buffer = hwthread_write_buffer,
}
static int hwthread_create(struct target *target)
Definition: hwthread.c:405
static bool hwthread_detect_rtos(struct target *target)
Definition: hwthread.c:369
static int hwthread_read_buffer(struct rtos *rtos, target_addr_t address, uint32_t size, uint8_t *buffer)
Definition: hwthread.c:417
static int hwthread_update_threads(struct rtos *rtos)
Definition: hwthread.c:85
static int hwthread_set_reg(struct rtos *rtos, uint32_t reg_num, uint8_t *reg_value)
Definition: hwthread.c:330
static int hwthread_get_symbol_list_to_lookup(struct symbol_table_elem *symbol_list[])
Definition: hwthread.c:348
static int hwthread_write_buffer(struct rtos *rtos, target_addr_t address, uint32_t size, const uint8_t *buffer)
Definition: hwthread.c:432
static int hwthread_get_thread_reg(struct rtos *rtos, int64_t thread_id, uint32_t reg_num, struct rtos_reg *rtos_reg)
Definition: hwthread.c:292
static int hwthread_get_thread_reg_list(struct rtos *rtos, int64_t thread_id, struct rtos_reg **reg_list, int *num_regs)
Definition: hwthread.c:233
static int hwthread_smp_init(struct target *target)
Definition: hwthread.c:213

Definition at line 34 of file hwthread.c.