+// SPDX-License-Identifier: GPL-2.0-or-later
+
/***************************************************************************
* Copyright (C) 2017 by Intel Corporation
* Leandro Pereira <leandro.pereira@intel.com>
* Daniel Glöckner <dg@emlix.com>*
* Copyright (C) 2021 by Synopsys, Inc.
* Evgeniy Didin <didin@synopsys.com>
- * *
- * SPDX-License-Identifier: GPL-2.0-or-later *
***************************************************************************/
#ifdef HAVE_CONFIG_H
{ ARMV7M_R13, -2, 32 },
{ ARMV7M_R14, 20, 32 },
{ ARMV7M_PC, 24, 32 },
- { ARMV7M_xPSR, 28, 32 },
+ { ARMV7M_XPSR, 28, 32 },
};
static struct stack_register_offset arc_cpu_saved[] = {
ZEPHYR_VAL_COUNT
};
-static int64_t zephyr_cortex_m_stack_align(struct target *target,
+static target_addr_t zephyr_cortex_m_stack_align(struct target *target,
const uint8_t *stack_data,
- const struct rtos_register_stacking *stacking, int64_t stack_ptr)
+ const struct rtos_register_stacking *stacking, target_addr_t stack_ptr)
{
- return rtos_Cortex_M_stack_align(target, stack_data, stacking,
+ return rtos_cortex_m_stack_align(target, stack_data, stacking,
stack_ptr, ARM_XPSR_OFFSET);
}
.cpu_saved_fp_stacking = &arm_cpu_saved_fp_stacking,
.get_cpu_state = &zephyr_get_arm_state,
},
+ {
+ .target_name = "cortex_r4",
+ .pointer_width = 4,
+ .callee_saved_stacking = &arm_callee_saved_stacking,
+ .cpu_saved_nofp_stacking = &arm_cpu_saved_nofp_stacking,
+ .cpu_saved_fp_stacking = &arm_cpu_saved_fp_stacking,
+ .get_cpu_state = &zephyr_get_arm_state,
+ },
{
.target_name = "hla_target",
.pointer_width = 4,
.optional = false
},
{
- .symbol_name = "_kernel_openocd_offsets",
+ .symbol_name = "_kernel_thread_info_offsets",
.optional = false
},
{
- .symbol_name = "_kernel_openocd_size_t_size",
+ .symbol_name = "_kernel_thread_info_size_t_size",
.optional = false
},
{
- .symbol_name = "_kernel_openocd_num_offsets",
+ .symbol_name = "_kernel_thread_info_num_offsets",
.optional = true
},
{
static bool zephyr_detect_rtos(struct target *target)
{
- if (target->rtos->symbols == NULL) {
+ if (!target->rtos->symbols) {
LOG_INFO("Zephyr: no symbols while detecting RTOS");
return false;
}
LOG_INFO("Getting thread %" PRId64 " reg list", thread_id);
- if (rtos == NULL)
+ if (!rtos)
return ERROR_FAIL;
if (thread_id == 0)
return ERROR_FAIL;
params = rtos->rtos_specific_params;
- if (params == NULL)
+ if (!params)
return ERROR_FAIL;
addr = thread_id + params->offsets[OFFSET_T_STACK_POINTER]