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

Go to the source code of this file.

Functions

 COMMAND_HANDLER (cortex_a_handle_cache_info_command)
 
 COMMAND_HANDLER (cortex_a_handle_dbginit_command)
 
 COMMAND_HANDLER (handle_cortex_a_dacrfixup_command)
 
 COMMAND_HANDLER (handle_cortex_a_mask_interrupts_command)
 
static int cortex_a_add_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_add_context_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_add_hybrid_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_add_watchpoint (struct target *target, struct watchpoint *watchpoint)
 Add a watchpoint to an Cortex-A target. More...
 
static int cortex_a_assert_reset (struct target *target)
 
static int cortex_a_bpwp_disable (struct arm_dpm *dpm, unsigned index_t)
 
static int cortex_a_bpwp_enable (struct arm_dpm *dpm, unsigned index_t, uint32_t addr, uint32_t control)
 
static int cortex_a_dap_write_memap_register_u32 (struct target *target, uint32_t address, uint32_t value)
 
static int cortex_a_deassert_reset (struct target *target)
 
static int cortex_a_debug_entry (struct target *target)
 
static void cortex_a_deinit_target (struct target *target)
 
static int cortex_a_dfsr_to_error_code (uint32_t dfsr)
 
static int cortex_a_dpm_finish (struct arm_dpm *dpm)
 
static int cortex_a_dpm_prepare (struct arm_dpm *dpm)
 
static int cortex_a_dpm_setup (struct cortex_a_common *a, uint32_t didr)
 
static int cortex_a_examine (struct target *target)
 
static int cortex_a_examine_first (struct target *target)
 
static int cortex_a_exec_opcode (struct target *target, uint32_t opcode, uint32_t *dscr_p)
 
static int cortex_a_halt (struct target *target)
 
static int cortex_a_halt_smp (struct target *target)
 
static int cortex_a_handle_target_request (void *priv)
 
static int cortex_a_init_arch_info (struct target *target, struct cortex_a_common *cortex_a, struct adiv5_dap *dap)
 
static int cortex_a_init_debug_access (struct target *target)
 
static int cortex_a_init_target (struct command_context *cmd_ctx, struct target *target)
 
static int cortex_a_instr_cpsr_sync (struct arm_dpm *dpm)
 
static int cortex_a_instr_read_data_dcc (struct arm_dpm *dpm, uint32_t opcode, uint32_t *data)
 
static int cortex_a_instr_read_data_r0 (struct arm_dpm *dpm, uint32_t opcode, uint32_t *data)
 
static int cortex_a_instr_read_data_r0_r1 (struct arm_dpm *dpm, uint32_t opcode, uint64_t *data)
 
static int cortex_a_instr_read_data_rt_dcc (struct arm_dpm *dpm, uint8_t rt, uint32_t *data)
 
static int cortex_a_instr_write_data_dcc (struct arm_dpm *dpm, uint32_t opcode, uint32_t data)
 
static int cortex_a_instr_write_data_r0 (struct arm_dpm *dpm, uint32_t opcode, uint32_t data)
 
static int cortex_a_instr_write_data_r0_r1 (struct arm_dpm *dpm, uint32_t opcode, uint64_t data)
 
static int cortex_a_instr_write_data_rt_dcc (struct arm_dpm *dpm, uint8_t rt, uint32_t data)
 
static int cortex_a_internal_restart (struct target *target)
 
static int cortex_a_internal_restore (struct target *target, int current, target_addr_t *address, int handle_breakpoints, int debug_execution)
 
static int cortex_a_mmu (struct target *target, int *enabled)
 
static int cortex_a_mmu_modify (struct target *target, int enable)
 
static int cortex_a_poll (struct target *target)
 
static int cortex_a_post_debug_entry (struct target *target)
 
static int cortex_a_post_memaccess (struct target *target, int phys_access)
 
static int cortex_a_prep_memaccess (struct target *target, int phys_access)
 
static int cortex_a_read_buffer (struct target *target, target_addr_t address, uint32_t count, uint8_t *buffer)
 
static int cortex_a_read_copro (struct target *target, uint32_t opcode, uint32_t *data, uint32_t *dscr)
 
static int cortex_a_read_cpu_memory (struct target *target, uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer)
 
static int cortex_a_read_cpu_memory_fast (struct target *target, uint32_t count, uint8_t *buffer, uint32_t *dscr)
 
static int cortex_a_read_cpu_memory_slow (struct target *target, uint32_t size, uint32_t count, uint8_t *buffer, uint32_t *dscr)
 
static int cortex_a_read_dcc (struct cortex_a_common *a, uint32_t *data, uint32_t *dscr_p)
 
static int cortex_a_read_dfar_dfsr (struct target *target, uint32_t *dfar, uint32_t *dfsr, uint32_t *dscr)
 
static int cortex_a_read_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, uint8_t *buffer)
 
static int cortex_a_read_phys_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, uint8_t *buffer)
 
static int cortex_a_remove_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_remove_watchpoint (struct target *target, struct watchpoint *watchpoint)
 Remove a watchpoint from an Cortex-A target. More...
 
static int cortex_a_restore_context (struct target *target, bool bpwp)
 
static int cortex_a_restore_cp15_control_reg (struct target *target)
 
static int cortex_a_restore_smp (struct target *target, int handle_breakpoints)
 
static int cortex_a_resume (struct target *target, int current, target_addr_t address, int handle_breakpoints, int debug_execution)
 
static int cortex_a_set_breakpoint (struct target *target, struct breakpoint *breakpoint, uint8_t matchmode)
 
static int cortex_a_set_context_breakpoint (struct target *target, struct breakpoint *breakpoint, uint8_t matchmode)
 
static int cortex_a_set_dcc_mode (struct target *target, uint32_t mode, uint32_t *dscr)
 
static int cortex_a_set_dscr_bits (struct target *target, unsigned long bit_mask, unsigned long value)
 
static int cortex_a_set_hybrid_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_set_watchpoint (struct target *target, struct watchpoint *watchpoint)
 Sets a watchpoint for an Cortex-A target in one of the watchpoint units. More...
 
static int cortex_a_step (struct target *target, int current, target_addr_t address, int handle_breakpoints)
 
static int cortex_a_target_create (struct target *target, Jim_Interp *interp)
 
static int cortex_a_unset_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int cortex_a_unset_watchpoint (struct target *target, struct watchpoint *watchpoint)
 Unset an existing watchpoint and clear the used watchpoint unit. More...
 
static int cortex_a_virt2phys (struct target *target, target_addr_t virt, target_addr_t *phys)
 
static int cortex_a_wait_dscr_bits (struct target *target, uint32_t mask, uint32_t value, uint32_t *dscr)
 
static int cortex_a_wait_instrcmpl (struct target *target, uint32_t *dscr, bool force)
 
static int cortex_a_write_buffer (struct target *target, target_addr_t address, uint32_t count, const uint8_t *buffer)
 
static int cortex_a_write_copro (struct target *target, uint32_t opcode, uint32_t data, uint32_t *dscr)
 
static int cortex_a_write_cpu_memory (struct target *target, uint32_t address, uint32_t size, uint32_t count, const uint8_t *buffer)
 
static int cortex_a_write_cpu_memory_fast (struct target *target, uint32_t count, const uint8_t *buffer, uint32_t *dscr)
 
static int cortex_a_write_cpu_memory_slow (struct target *target, uint32_t size, uint32_t count, const uint8_t *buffer, uint32_t *dscr)
 
static int cortex_a_write_dcc (struct cortex_a_common *a, uint32_t data)
 
static int cortex_a_write_dfar_dfsr (struct target *target, uint32_t dfar, uint32_t dfsr, uint32_t *dscr)
 
static int cortex_a_write_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, const uint8_t *buffer)
 
static int cortex_a_write_phys_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, const uint8_t *buffer)
 
static int cortex_r4_target_create (struct target *target, Jim_Interp *interp)
 
static struct cortex_a_commondpm_to_a (struct arm_dpm *dpm)
 
static struct targetget_cortex_a (struct target *target, int32_t coreid)
 
static unsigned int ilog2 (unsigned int x)
 
static int update_halt_gdb (struct target *target)
 

Variables

static const struct command_registration cortex_a_command_handlers []
 
static const struct command_registration cortex_a_exec_command_handlers []
 
static const struct command_registration cortex_r4_command_handlers []
 
static const struct command_registration cortex_r4_exec_command_handlers []
 
struct target_type cortexa_target
 
struct target_type cortexr4_target
 

Function Documentation

◆ COMMAND_HANDLER() [1/4]

COMMAND_HANDLER ( cortex_a_handle_cache_info_command  )

◆ COMMAND_HANDLER() [2/4]

COMMAND_HANDLER ( cortex_a_handle_dbginit_command  )

◆ COMMAND_HANDLER() [3/4]

◆ COMMAND_HANDLER() [4/4]

◆ cortex_a_add_breakpoint()

static int cortex_a_add_breakpoint ( struct target target,
struct breakpoint breakpoint 
)
static

◆ cortex_a_add_context_breakpoint()

static int cortex_a_add_context_breakpoint ( struct target target,
struct breakpoint breakpoint 
)
static

◆ cortex_a_add_hybrid_breakpoint()

static int cortex_a_add_hybrid_breakpoint ( struct target target,
struct breakpoint breakpoint 
)
static

◆ cortex_a_add_watchpoint()

static int cortex_a_add_watchpoint ( struct target target,
struct watchpoint watchpoint 
)
static

Add a watchpoint to an Cortex-A target.

If there are no watchpoint units available, an error response is returned.

Parameters
targetPointer to the Cortex-A target to add a watchpoint to
watchpointPointer to the watchpoint to be added
Returns
Error status while trying to add the watchpoint

Definition at line 1862 of file cortex_a.c.

References cortex_a_set_watchpoint(), ERROR_OK, ERROR_TARGET_RESOURCE_NOT_AVAILABLE, LOG_INFO, target_to_cortex_a(), and cortex_a_common::wrp_num_available.

◆ cortex_a_assert_reset()

◆ cortex_a_bpwp_disable()

static int cortex_a_bpwp_disable ( struct arm_dpm dpm,
unsigned  index_t 
)
static

◆ cortex_a_bpwp_enable()

static int cortex_a_bpwp_enable ( struct arm_dpm dpm,
unsigned  index_t,
uint32_t  addr,
uint32_t  control 
)
static

◆ cortex_a_dap_write_memap_register_u32()

static int cortex_a_dap_write_memap_register_u32 ( struct target target,
uint32_t  address,
uint32_t  value 
)
static

◆ cortex_a_deassert_reset()

◆ cortex_a_debug_entry()

◆ cortex_a_deinit_target()

◆ cortex_a_dfsr_to_error_code()

static int cortex_a_dfsr_to_error_code ( uint32_t  dfsr)
static

◆ cortex_a_dpm_finish()

static int cortex_a_dpm_finish ( struct arm_dpm dpm)
static

Definition at line 410 of file cortex_a.c.

References ERROR_OK.

Referenced by cortex_a_dpm_setup().

◆ cortex_a_dpm_prepare()

static int cortex_a_dpm_prepare ( struct arm_dpm dpm)
static

◆ cortex_a_dpm_setup()

◆ cortex_a_examine()

static int cortex_a_examine ( struct target target)
static

Definition at line 3098 of file cortex_a.c.

References cortex_a_examine_first(), cortex_a_init_debug_access(), and ERROR_OK.

◆ cortex_a_examine_first()

static int cortex_a_examine_first ( struct target target)
static

Definition at line 2912 of file cortex_a.c.

References adiv5_ap::ap_num, adiv5_private_config::ap_num, AP_TYPE_APB_AP, adiv5_dap::apsel, armv7a_common::arm, ARM_CORE_TYPE_SEC_EXT, ARM_CORE_TYPE_VIRT_EXT, ARM_CS_C9_DEVTYPE_CORE_DEBUG, cortex_a_common::armv7a_common, BRP_CONTEXT, cortex_a_common::brp_list, BRP_NORMAL, cortex_a_common::brp_num, cortex_a_common::brp_num_available, cortex_a_common::brp_num_context, cortex_a_brp::brpn, target::cmd_name, cortex_a_brp::control, cortex_a_wrp::control, arm::core_type, target::coreid, cortex_a_dpm_setup(), CPUDBG_CPUID, CPUDBG_DIDR, CPUDBG_ID_PFR1, CPUDBG_OSLAR, CPUDBG_OSLSR, CPUDBG_PRSR, cortex_a_common::cpuid, arm::dap, dap_find_get_ap(), dap_get_ap(), dap_lookup_cs_component(), target::dbgbase, target::dbgbase_set, armv7a_common::debug_ap, armv7a_common::debug_base, cortex_a_common::didr, DP_APSEL_INVALID, ERROR_FAIL, ERROR_OK, ERROR_TARGET_INIT_FAILED, LOG_DEBUG, LOG_ERROR, LOG_TARGET_DEBUG, LOG_TARGET_ERROR, LOG_WARNING, mem_ap_init(), mem_ap_read_atomic_u32(), mem_ap_write_atomic_u32(), adiv5_ap::memaccess_tck, OSLSR_OSLK, OSLSR_OSLM, OSLSR_OSLM0, OSLSR_OSLM1, target::private_config, PRSR_POWERUP_STATUS, PRSR_STICKY_RESET_STATUS, target::state, TARGET_ADDR_FMT, target_name(), target_set_examined(), target_to_cortex_a(), TARGET_UNKNOWN, target_was_examined(), cortex_a_brp::type, cortex_a_brp::used, cortex_a_wrp::used, cortex_a_brp::value, cortex_a_wrp::value, cortex_a_common::wrp_list, cortex_a_common::wrp_num, cortex_a_common::wrp_num_available, and cortex_a_wrp::wrpn.

Referenced by cortex_a_examine().

◆ cortex_a_exec_opcode()

◆ cortex_a_halt()

◆ cortex_a_halt_smp()

static int cortex_a_halt_smp ( struct target target)
static

◆ cortex_a_handle_target_request()

◆ cortex_a_init_arch_info()

◆ cortex_a_init_debug_access()

◆ cortex_a_init_target()

static int cortex_a_init_target ( struct command_context cmd_ctx,
struct target target 
)
static

Definition at line 3116 of file cortex_a.c.

References arm_semihosting_init(), and ERROR_OK.

◆ cortex_a_instr_cpsr_sync()

static int cortex_a_instr_cpsr_sync ( struct arm_dpm dpm)
static

Definition at line 496 of file cortex_a.c.

References arm_dpm::arm, ARMV4_5_MCR, cortex_a_exec_opcode(), DSCR_INSTR_COMP, and arm::target.

Referenced by cortex_a_dpm_setup().

◆ cortex_a_instr_read_data_dcc()

static int cortex_a_instr_read_data_dcc ( struct arm_dpm dpm,
uint32_t  opcode,
uint32_t *  data 
)
static

◆ cortex_a_instr_read_data_r0()

static int cortex_a_instr_read_data_r0 ( struct arm_dpm dpm,
uint32_t  opcode,
uint32_t *  data 
)
static

◆ cortex_a_instr_read_data_r0_r1()

static int cortex_a_instr_read_data_r0_r1 ( struct arm_dpm dpm,
uint32_t  opcode,
uint64_t *  data 
)
static

◆ cortex_a_instr_read_data_rt_dcc()

static int cortex_a_instr_read_data_rt_dcc ( struct arm_dpm dpm,
uint8_t  rt,
uint32_t *  data 
)
static

◆ cortex_a_instr_write_data_dcc()

static int cortex_a_instr_write_data_dcc ( struct arm_dpm dpm,
uint32_t  opcode,
uint32_t  data 
)
static

◆ cortex_a_instr_write_data_r0()

static int cortex_a_instr_write_data_r0 ( struct arm_dpm dpm,
uint32_t  opcode,
uint32_t  data 
)
static

◆ cortex_a_instr_write_data_r0_r1()

static int cortex_a_instr_write_data_r0_r1 ( struct arm_dpm dpm,
uint32_t  opcode,
uint64_t  data 
)
static

◆ cortex_a_instr_write_data_rt_dcc()

static int cortex_a_instr_write_data_rt_dcc ( struct arm_dpm dpm,
uint8_t  rt,
uint32_t  data 
)
static

◆ cortex_a_internal_restart()

◆ cortex_a_internal_restore()

◆ cortex_a_mmu()

◆ cortex_a_mmu_modify()

◆ cortex_a_poll()

◆ cortex_a_post_debug_entry()

◆ cortex_a_post_memaccess()

◆ cortex_a_prep_memaccess()

◆ cortex_a_read_buffer()

static int cortex_a_read_buffer ( struct target target,
target_addr_t  address,
uint32_t  count,
uint8_t *  buffer 
)
static

Definition at line 2803 of file cortex_a.c.

References buffer, count, ERROR_OK, size, and target_read_memory().

◆ cortex_a_read_copro()

static int cortex_a_read_copro ( struct target target,
uint32_t  opcode,
uint32_t *  data,
uint32_t *  dscr 
)
static

◆ cortex_a_read_cpu_memory()

◆ cortex_a_read_cpu_memory_fast()

◆ cortex_a_read_cpu_memory_slow()

◆ cortex_a_read_dcc()

◆ cortex_a_read_dfar_dfsr()

static int cortex_a_read_dfar_dfsr ( struct target target,
uint32_t *  dfar,
uint32_t *  dfsr,
uint32_t *  dscr 
)
static

Definition at line 2061 of file cortex_a.c.

References ARMV4_5_MRC, cortex_a_read_copro(), and ERROR_OK.

Referenced by cortex_a_read_cpu_memory(), and cortex_a_write_cpu_memory().

◆ cortex_a_read_memory()

static int cortex_a_read_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
uint8_t *  buffer 
)
static

◆ cortex_a_read_phys_memory()

static int cortex_a_read_phys_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
uint8_t *  buffer 
)
static

◆ cortex_a_remove_breakpoint()

static int cortex_a_remove_breakpoint ( struct target target,
struct breakpoint breakpoint 
)
static

◆ cortex_a_remove_watchpoint()

static int cortex_a_remove_watchpoint ( struct target target,
struct watchpoint watchpoint 
)
static

Remove a watchpoint from an Cortex-A target.

The watchpoint will be unset and the used watchpoint unit will be reopened.

Parameters
targetPointer to the target to remove a watchpoint from
watchpointPointer to the watchpoint to be removed
Returns
Result of trying to unset the watchpoint

Definition at line 1887 of file cortex_a.c.

References cortex_a_unset_watchpoint(), ERROR_OK, watchpoint::is_set, target_to_cortex_a(), and cortex_a_common::wrp_num_available.

◆ cortex_a_restore_context()

static int cortex_a_restore_context ( struct target target,
bool  bpwp 
)
static

◆ cortex_a_restore_cp15_control_reg()

static int cortex_a_restore_cp15_control_reg ( struct target target)
static

◆ cortex_a_restore_smp()

static int cortex_a_restore_smp ( struct target target,
int  handle_breakpoints 
)
static

◆ cortex_a_resume()

◆ cortex_a_set_breakpoint()

◆ cortex_a_set_context_breakpoint()

◆ cortex_a_set_dcc_mode()

◆ cortex_a_set_dscr_bits()

static int cortex_a_set_dscr_bits ( struct target target,
unsigned long  bit_mask,
unsigned long  value 
)
static

◆ cortex_a_set_hybrid_breakpoint()

◆ cortex_a_set_watchpoint()

static int cortex_a_set_watchpoint ( struct target target,
struct watchpoint watchpoint 
)
static

Sets a watchpoint for an Cortex-A target in one of the watchpoint units.

It is considered a bug to call this function when there are no available watchpoint units.

Parameters
targetPointer to an Cortex-A target to set a watchpoint on
watchpointPointer to the watchpoint to be set
Returns
Error status if watchpoint set fails or the result of executing the JTAG queue

Definition at line 1715 of file cortex_a.c.

References watchpoint::address, cortex_a_common::armv7a_common, BIT, cortex_a_wrp::control, cortex_a_dap_write_memap_register_u32(), CPUDBG_WCR_BASE, CPUDBG_WVR_BASE, armv7a_common::debug_base, ERROR_FAIL, ERROR_OK, ilog2(), watchpoint::is_set, watchpoint::length, LOG_DEBUG, LOG_ERROR, LOG_WARNING, target_to_cortex_a(), cortex_a_wrp::used, cortex_a_wrp::value, watchpoint_set(), cortex_a_common::wrp_list, cortex_a_common::wrp_num, and cortex_a_wrp::wrpn.

Referenced by cortex_a_add_watchpoint().

◆ cortex_a_step()

◆ cortex_a_target_create()

◆ cortex_a_unset_breakpoint()

◆ cortex_a_unset_watchpoint()

static int cortex_a_unset_watchpoint ( struct target target,
struct watchpoint watchpoint 
)
static

Unset an existing watchpoint and clear the used watchpoint unit.

Parameters
targetPointer to the target to have the watchpoint removed
watchpointPointer to the watchpoint to be removed
Returns
Error status while trying to unset the watchpoint or the result of executing the JTAG queue

Definition at line 1817 of file cortex_a.c.

References cortex_a_common::armv7a_common, cortex_a_wrp::control, cortex_a_dap_write_memap_register_u32(), CPUDBG_WCR_BASE, CPUDBG_WVR_BASE, armv7a_common::debug_base, ERROR_OK, watchpoint::is_set, LOG_DEBUG, LOG_WARNING, watchpoint::number, target_to_cortex_a(), cortex_a_wrp::used, cortex_a_wrp::value, cortex_a_common::wrp_list, cortex_a_common::wrp_num, and cortex_a_wrp::wrpn.

Referenced by cortex_a_remove_watchpoint().

◆ cortex_a_virt2phys()

static int cortex_a_virt2phys ( struct target target,
target_addr_t  virt,
target_addr_t phys 
)
static

◆ cortex_a_wait_dscr_bits()

◆ cortex_a_wait_instrcmpl()

◆ cortex_a_write_buffer()

static int cortex_a_write_buffer ( struct target target,
target_addr_t  address,
uint32_t  count,
const uint8_t *  buffer 
)
static

Definition at line 2837 of file cortex_a.c.

References buffer, count, ERROR_OK, size, and target_write_memory().

◆ cortex_a_write_copro()

static int cortex_a_write_copro ( struct target target,
uint32_t  opcode,
uint32_t  data,
uint32_t *  dscr 
)
static

◆ cortex_a_write_cpu_memory()

◆ cortex_a_write_cpu_memory_fast()

static int cortex_a_write_cpu_memory_fast ( struct target target,
uint32_t  count,
const uint8_t *  buffer,
uint32_t *  dscr 
)
static

◆ cortex_a_write_cpu_memory_slow()

◆ cortex_a_write_dcc()

static int cortex_a_write_dcc ( struct cortex_a_common a,
uint32_t  data 
)
static

◆ cortex_a_write_dfar_dfsr()

static int cortex_a_write_dfar_dfsr ( struct target target,
uint32_t  dfar,
uint32_t  dfsr,
uint32_t *  dscr 
)
static

Definition at line 2114 of file cortex_a.c.

References ARMV4_5_MCR, cortex_a_write_copro(), and ERROR_OK.

Referenced by cortex_a_read_cpu_memory(), and cortex_a_write_cpu_memory().

◆ cortex_a_write_memory()

static int cortex_a_write_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
const uint8_t *  buffer 
)
static

◆ cortex_a_write_phys_memory()

static int cortex_a_write_phys_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
const uint8_t *  buffer 
)
static

◆ cortex_r4_target_create()

◆ dpm_to_a()

◆ get_cortex_a()

static struct target* get_cortex_a ( struct target target,
int32_t  coreid 
)
static

◆ ilog2()

static unsigned int ilog2 ( unsigned int  x)
static

Definition at line 78 of file cortex_a.c.

Referenced by cortex_a_set_watchpoint().

◆ update_halt_gdb()

Variable Documentation

◆ cortex_a_command_handlers

const struct command_registration cortex_a_command_handlers[]
static
Initial value:
= {
{
},
{
},
{
.name = "cortex_a",
.mode = COMMAND_ANY,
.help = "Cortex-A command group",
.usage = "",
},
}
const struct command_registration arm_command_handlers[]
Definition: armv4_5.c:1247
const struct command_registration armv7a_command_handlers[]
Definition: armv7a.c:588
#define COMMAND_REGISTRATION_DONE
Use this as the last entry in an array of command_registration records.
Definition: command.h:253
@ COMMAND_ANY
Definition: command.h:42
static const struct command_registration cortex_a_exec_command_handlers[]
Definition: cortex_a.c:3343
const char * name
Definition: command.h:235
const struct command_registration * chain
If non-NULL, the commands in chain will be registered in the same context and scope of this registrat...
Definition: command.h:249

Definition at line 3317 of file cortex_a.c.

◆ cortex_a_exec_command_handlers

const struct command_registration cortex_a_exec_command_handlers[]
static

Definition at line 3317 of file cortex_a.c.

◆ cortex_r4_command_handlers

const struct command_registration cortex_r4_command_handlers[]
static
Initial value:
= {
{
},
{
.name = "cortex_r4",
.mode = COMMAND_ANY,
.help = "Cortex-R4 command group",
.usage = "",
},
}
static const struct command_registration cortex_r4_exec_command_handlers[]
Definition: cortex_a.c:3447

Definition at line 3317 of file cortex_a.c.

◆ cortex_r4_exec_command_handlers

const struct command_registration cortex_r4_exec_command_handlers[]
static
Initial value:
= {
{
.name = "dbginit",
.handler = cortex_a_handle_dbginit_command,
.mode = COMMAND_EXEC,
.help = "Initialize core debug",
.usage = "",
},
{
.name = "maskisr",
.handler = handle_cortex_a_mask_interrupts_command,
.mode = COMMAND_EXEC,
.help = "mask cortex_r4 interrupts",
.usage = "['on'|'off']",
},
}
@ COMMAND_EXEC
Definition: command.h:40

Definition at line 3317 of file cortex_a.c.

◆ cortexa_target

struct target_type cortexa_target

Definition at line 3317 of file cortex_a.c.

◆ cortexr4_target

struct target_type cortexr4_target

Definition at line 3317 of file cortex_a.c.