OpenOCD
|
Go to the source code of this file.
Functions | |
static int | adjust_sink_list (size_t length) |
static int | read_channel_callback (void *user_data) |
bool | rtt_configured (void) |
Get whether RTT is configured. More... | |
int | rtt_exit (void) |
Shutdown Real-Time Transfer (RTT). More... | |
bool | rtt_found_cb (void) |
Get whether RTT control block was found. More... | |
const struct rtt_control * | rtt_get_control (void) |
Get the RTT control block. More... | |
int | rtt_get_polling_interval (unsigned int *interval) |
Get the polling interval. More... | |
int | rtt_init (void) |
Initialize Real-Time Transfer (RTT). More... | |
int | rtt_read_channel_info (unsigned int channel_index, enum rtt_channel_type type, struct rtt_channel_info *info) |
Read channel information. More... | |
int | rtt_register_sink (unsigned int channel_index, rtt_sink_read read, void *user_data) |
Register an RTT sink. More... | |
int | rtt_register_source (const struct rtt_source source, struct target *target) |
Register an RTT source for a target. More... | |
int | rtt_set_polling_interval (unsigned int interval) |
Set the polling interval. More... | |
int | rtt_setup (target_addr_t address, size_t size, const char *id) |
Setup RTT. More... | |
int | rtt_start (void) |
Start Real-Time Transfer (RTT). More... | |
int | rtt_stop (void) |
Stop Real-Time Transfer (RTT). More... | |
int | rtt_unregister_sink (unsigned int channel_index, rtt_sink_read read, void *user_data) |
Unregister an RTT sink. More... | |
int | rtt_write_channel (unsigned int channel_index, const uint8_t *buffer, size_t *length) |
Write to an RTT channel. More... | |
Variables | |
struct { | |
target_addr_t addr | |
Start address to search for the control block. More... | |
bool changed | |
Whether configuration changed. More... | |
bool configured | |
Whether RTT is configured. More... | |
struct rtt_control ctrl | |
Control block. More... | |
bool found_cb | |
Whether the control block was found. More... | |
char id [RTT_CB_MAX_ID_LENGTH] | |
Control block identifier. More... | |
unsigned int polling_interval | |
struct rtt_sink_list ** sink_list | |
size_t sink_list_length | |
size_t size | |
Size of the control block search area. More... | |
struct rtt_source source | |
bool started | |
Whether RTT is started. More... | |
struct target * target | |
} | rtt |
|
static |
Definition at line 185 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, length, NULL, and rtt.
Referenced by rtt_register_sink().
|
static |
Definition at line 72 of file rtt/rtt.c.
References ERROR_OK, NULL, rtt, and target_unregister_timer_callback().
Referenced by rtt_set_polling_interval(), rtt_start(), and rtt_stop().
bool rtt_configured | ( | void | ) |
Get whether RTT is configured.
Definition at line 300 of file rtt/rtt.c.
References rtt.
Referenced by COMMAND_HANDLER().
int rtt_exit | ( | void | ) |
Shutdown Real-Time Transfer (RTT).
Definition at line 65 of file rtt/rtt.c.
Referenced by openocd_main().
bool rtt_found_cb | ( | void | ) |
Get whether RTT control block was found.
Definition at line 305 of file rtt/rtt.c.
References rtt.
Referenced by COMMAND_HANDLER().
const struct rtt_control* rtt_get_control | ( | void | ) |
Get the RTT control block.
Definition at line 310 of file rtt/rtt.c.
References rtt.
Referenced by COMMAND_HANDLER().
int rtt_get_polling_interval | ( | unsigned int * | interval | ) |
Get the polling interval.
[out] | interval | Polling interval in milliseconds. |
Definition at line 262 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, and rtt.
Referenced by COMMAND_HANDLER().
int rtt_init | ( | void | ) |
Initialize Real-Time Transfer (RTT).
Definition at line 48 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, NULL, and rtt.
Referenced by openocd_main().
int rtt_read_channel_info | ( | unsigned int | channel_index, |
enum rtt_channel_type | type, | ||
struct rtt_channel_info * | info | ||
) |
Read channel information.
[in] | channel_index | Channel index. |
[in] | type | Channel type. |
[out] | info | Channel information. |
Definition at line 315 of file rtt/rtt.c.
Referenced by COMMAND_HANDLER().
int rtt_register_sink | ( | unsigned int | channel_index, |
rtt_sink_read | read, | ||
void * | user_data | ||
) |
Register an RTT sink.
[in] | channel_index | Channel index. |
[in] | read | Read callback function. |
[in,out] | user_data | User data to be passed to the callback function. |
Definition at line 206 of file rtt/rtt.c.
References adjust_sink_list(), ERROR_FAIL, ERROR_OK, LOG_DEBUG, rtt_sink_list::next, rtt_sink_list::read, rtt, and rtt_sink_list::user_data.
Referenced by rtt_new_connection().
int rtt_register_source | ( | const struct rtt_source | source, |
struct target * | target | ||
) |
Register an RTT source for a target.
[in] | source | RTT source. |
[in,out] | target | Target. |
Definition at line 106 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, rtt_source::find_cb, rtt_source::read, rtt_source::read_cb, rtt_source::read_channel_info, rtt, source, rtt_source::start, rtt_source::stop, target, and rtt_source::write.
Referenced by COMMAND_HANDLER().
int rtt_set_polling_interval | ( | unsigned int | interval | ) |
Set the polling interval.
[in] | interval | Polling interval in milliseconds. |
Definition at line 272 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, NULL, read_channel_callback(), rtt, target_register_timer_callback(), and target_unregister_timer_callback().
Referenced by COMMAND_HANDLER().
int rtt_setup | ( | target_addr_t | address, |
size_t | size, | ||
const char * | id | ||
) |
Setup RTT.
[in] | address | Start address to search for the control block. |
[in] | size | Size of the control block search area. |
[in] | id | Identifier of the control block. Must be null-terminated. |
Definition at line 88 of file rtt/rtt.c.
References address, ERROR_COMMAND_ARGUMENT_INVALID, ERROR_OK, LOG_ERROR, rtt, RTT_CB_MAX_ID_LENGTH, and size.
Referenced by COMMAND_HANDLER().
int rtt_start | ( | void | ) |
Start Real-Time Transfer (RTT).
Definition at line 124 of file rtt/rtt.c.
References addr, ERROR_OK, LOG_INFO, NULL, read_channel_callback(), rtt, TARGET_PRIxADDR, and target_register_timer_callback().
Referenced by COMMAND_HANDLER().
int rtt_stop | ( | void | ) |
Stop Real-Time Transfer (RTT).
Definition at line 165 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, LOG_ERROR, NULL, read_channel_callback(), rtt, and target_unregister_timer_callback().
Referenced by COMMAND_HANDLER().
int rtt_unregister_sink | ( | unsigned int | channel_index, |
rtt_sink_read | read, | ||
void * | user_data | ||
) |
Unregister an RTT sink.
[in] | channel_index | Channel index. |
[in] | read | Read callback function. |
[in,out] | user_data | User data to be passed to the callback function. |
Definition at line 232 of file rtt/rtt.c.
References ERROR_FAIL, ERROR_OK, LOG_DEBUG, rtt_sink_list::next, rtt_sink_list::read, rtt, and rtt_sink_list::user_data.
Referenced by rtt_connection_closed().
int rtt_write_channel | ( | unsigned int | channel_index, |
const uint8_t * | buffer, | ||
size_t * | length | ||
) |
Write to an RTT channel.
[in] | channel_index | Channel index. |
[in] | buffer | Buffer with data that should be written to the channel. |
[in,out] | length | Number of bytes to write. On success, the argument gets updated with the actual number of written bytes. |
Definition at line 288 of file rtt/rtt.c.
References buffer, ERROR_OK, length, LOG_WARNING, NULL, and rtt.
Referenced by rtt_input().
target_addr_t addr |
Start address to search for the control block.
Definition at line 28 of file rtt/rtt.c.
Referenced by aarch64_resume(), adbg_wb_burst_read(), adbg_wb_burst_write(), align_address_v2(), angie_write_firmware_section(), ap_addr_2_tile(), arc_jtag_enque_register_rw(), arc_jtag_read_aux_reg(), arc_jtag_read_aux_reg_one(), arc_jtag_read_core_reg(), arc_jtag_read_core_reg_one(), arc_jtag_read_memory(), arc_jtag_read_registers(), arc_jtag_write_aux_reg(), arc_jtag_write_aux_reg_one(), arc_jtag_write_core_reg(), arc_jtag_write_core_reg_one(), arc_jtag_write_memory(), arc_jtag_write_registers(), arc_mem_is_slow_memory(), arc_mem_read_block(), arc_mem_write_block16(), arc_mem_write_block32(), arc_mem_write_block8(), arm11_bpwp_enable(), arm_dpm_report_wfar(), avr32_jtag_mwa_read(), avr32_jtag_mwa_set_address(), avr32_jtag_mwa_write(), avr32_jtag_nexus_read(), avr32_jtag_nexus_set_address(), avr32_jtag_nexus_write(), avr32_jtag_read_memory16(), avr32_jtag_read_memory32(), avr32_jtag_read_memory8(), avr32_jtag_write_memory16(), avr32_jtag_write_memory32(), avr32_jtag_write_memory8(), avr_jtagprg_writeflashpage(), calcaddr_physfromlin(), cfi_target_read_memory(), cfi_target_write_memory(), clear_bit(), COMMAND_HANDLER(), COMMAND_HELPER(), coresight_read(), coresight_write(), cortex_a_bpwp_enable(), dap_lookup_cs_component(), dmem_emu_ap_q_read(), dmem_emu_ap_q_write(), dmem_emu_get_ap_reg(), dmem_emu_set_ap_reg(), dpm_bpwp_setup(), dpmv8_bpwp_setup(), dsp563xx_once_read_register(), efm32x_erase_page(), efm32x_priv_write(), efm32x_write_word(), ejtag_dma_read(), ejtag_dma_read_b(), ejtag_dma_read_h(), ejtag_dma_write(), ejtag_dma_write_b(), ejtag_dma_write_h(), ep1_memory_write(), esp32s2_set_peri_reg_mask(), fill_addr(), fill_buffer(), flash_erase_address_range(), flash_iterate_address_range(), flash_iterate_address_range_inner(), flash_unlock_address_range(), flash_write_align_end(), flash_write_align_start(), fm4_flash_erase(), fm4_flash_write(), gdb_query_packet(), gdb_read_memory_packet(), gdb_v_packet(), gdb_write_memory_binary_packet(), gdb_write_memory_packet(), get_flash_bank_by_addr(), handle_bp_command_set(), icdi_usb_read_mem(), icdi_usb_read_mem_int(), icdi_usb_state(), icdi_usb_write_mem(), icdi_usb_write_mem_int(), jtagspi_page_write(), jtagspi_read(), jtagspi_sector_erase(), lpc32xx_dump_oob(), mips32_dmaacc_read_mem(), mips32_dmaacc_read_mem16(), mips32_dmaacc_read_mem32(), mips32_dmaacc_read_mem8(), mips32_dmaacc_write_mem(), mips32_dmaacc_write_mem16(), mips32_dmaacc_write_mem32(), mips32_dmaacc_write_mem8(), mips32_pracc_fastdata_xfer(), mips32_pracc_fastdata_xfer_synchronize_cache(), mips32_pracc_queue_exec(), mips32_pracc_read_mem(), mips32_pracc_read_u32(), mips32_pracc_write_mem(), mips32_pracc_write_mem_generic(), mips64_extend_sign(), mips64_pracc_fastdata_xfer(), mips64_pracc_read_mem(), mips64_pracc_read_mem16(), mips64_pracc_read_mem32(), mips64_pracc_read_mem64(), mips64_pracc_read_mem8(), mips64_pracc_read_u16(), mips64_pracc_read_u32(), mips64_pracc_read_u64(), mips64_pracc_read_u8(), mips64_pracc_write_mem(), mips64_pracc_write_mem16(), mips64_pracc_write_mem32(), mips64_pracc_write_mem64(), mips64_pracc_write_mem8(), mips64_pracc_write_u16(), mips64_pracc_write_u32(), mips64_pracc_write_u64(), mips64_pracc_write_u8(), mips_m4k_isa_filter(), mrvlqspi_set_addr(), mxc_read_page(), mxc_write_page(), nulink_usb_read_mem(), nulink_usb_read_mem32(), nulink_usb_read_mem8(), nulink_usb_state(), nulink_usb_write_mem(), nulink_usb_write_mem32(), nulink_usb_write_mem8(), numicro_fmc_cmd(), or1k_add_breakpoint(), or1k_adv_jtag_read_cpu(), or1k_adv_jtag_read_memory(), or1k_adv_jtag_write_cpu(), or1k_adv_jtag_write_memory(), or1k_debug_entry(), or1k_remove_breakpoint(), pracc_add(), psoc4_test_flash_wounding(), psoc6_erase_row(), psoc6_erase_sector(), psoc6_probe(), psoc6_program_row(), qn908x_load_lock_stat(), read_mem(), read_sfdp_block(), remote_bitbang_init_unix(), rpc_hf_xfer(), rpchf_target_read_memory(), rpchf_target_write_memory(), rshim_ap_q_read(), rshim_ap_q_write(), rshim_dev_read(), rshim_dev_write(), rtos_qsymbol(), rtt_start(), samv_page_read(), samv_page_write(), semihosting_common(), set_bit(), sim3x_erase_page(), stlink_read_dap_register(), stlink_swim_op_read_mem(), stlink_swim_op_write_mem(), stlink_swim_readbytes(), stlink_swim_writebytes(), stlink_usb_buf_rw_segment(), stlink_usb_read_ap_mem(), stlink_usb_read_mem(), stlink_usb_read_mem16(), stlink_usb_read_mem32(), stlink_usb_read_mem32_noaddrinc(), stlink_usb_read_mem8(), stlink_usb_v2_read_debug_reg(), stlink_usb_write_ap_mem(), stlink_usb_write_debug_reg(), stlink_usb_write_mem(), stlink_usb_write_mem16(), stlink_usb_write_mem32(), stlink_usb_write_mem32_noaddrinc(), stlink_usb_write_mem8(), stm32lx_erase_sector(), stm32x_get_device_id(), stm32x_get_flash_size(), stm32x_get_property_addr(), stm8_adapter_read_memory(), stm8_adapter_write_memory(), stm8_read_u8(), stm8_set_hwbreak(), stm8_write_u8(), swim_read_mem(), swim_write_mem(), target_jim_write_memory(), target_rtt_find_control_block(), test_bit(), thumb_alignpc4(), tms470_erase_check(), tms470_write(), ublast2_write_firmware_section(), ulink_write_firmware_section(), vdebug_run_reg_queue(), w600_start(), w600_start_do(), write_mem(), x86_32_common_read_io(), x86_32_common_read_memory(), x86_32_common_write_io(), x86_32_common_write_memory(), xmc1xxx_write(), xmc4xxx_flash_unprotect(), xtensa_addr_in_mem(), xtensa_data_addr_valid(), xtensa_dm_read(), xtensa_dm_write(), xtensa_region_ar_exec(), zephyr_get_arc_state(), zephyr_get_arm_state(), and zephyr_get_thread_reg_list().
bool changed |
Whether configuration changed.
Definition at line 38 of file rtt/rtt.c.
Referenced by same5_modify_user_row_masked().
struct rtt_control ctrl |
Control block.
Definition at line 315 of file rtt/rtt.c.
Referenced by armv7m_arch_state(), COMMAND_HANDLER(), cortex_m_dcc_read(), cortex_m_handle_target_request(), cortex_m_target_request_data(), dw_spi_ctrl_mode(), dw_spi_ctrl_mode_configure(), hl_dcc_read(), hl_handle_target_request(), hl_target_request_data(), lpc32xx_make_dma_list(), mips32_pracc_finish(), mips32_pracc_queue_exec(), mips_ejtag_add_scan_96(), read_rtt_channel(), stm32l4_unlock_option_reg(), stm32l4_unlock_reg(), stm32x_unlock_option_reg(), stm32x_unlock_reg(), target_rtt_read_callback(), target_rtt_read_channel_info(), target_rtt_read_control_block(), target_rtt_write_callback(), and wait_for_pracc_rw().
char id[RTT_CB_MAX_ID_LENGTH] |
Control block identifier.
Definition at line 32 of file rtt/rtt.c.
Referenced by cmsis_dap_usb_open(), COMMAND_HELPER(), eneispif_probe(), esirisc_trace_analyze_full(), gowin_load_to_sram(), jep106_table_manufacturer(), jtagspi_probe(), sam4l_probe(), samd_get_reservedmask(), samd_probe(), same5_probe(), versaloon_set_pending_id(), and xcf_probe().
struct { ... } rtt |
Referenced by adjust_sink_list(), read_channel_callback(), rtt_configured(), rtt_exit(), rtt_found_cb(), rtt_get_control(), rtt_get_polling_interval(), rtt_init(), rtt_register_sink(), rtt_register_source(), rtt_set_polling_interval(), rtt_setup(), rtt_start(), rtt_stop(), rtt_unregister_sink(), and rtt_write_channel().
struct rtt_sink_list** sink_list |
size_t size |
Size of the control block search area.
Definition at line 30 of file rtt/rtt.c.
Referenced by rtt_setup().
struct rtt_source source |
Definition at line 315 of file rtt/rtt.c.
Referenced by aduc702x_write_block(), bluenrgx_write(), cfi_intel_write_block(), cfi_spansion_write_block(), cfi_spansion_write_block_mips(), COMMAND_HANDLER(), csrw(), efm32x_write_block(), em357_write_block(), fm3_write_block(), kinetis_ke_write_words(), kinetis_write_block(), max32xxx_write_block(), mdr_write_block(), mips32_pracc_fastdata_xfer(), mips64_pracc_fastdata_xfer(), niietcm4_write_block(), nrf5_ll_flash_write(), numicro_writeblock(), pic32mx_write_block(), rsl10_ll_flash_write(), rtt_register_source(), sim3x_write_block(), stellaris_write_block(), stm32l4_write_block(), stm32lx_write_half_pages(), stm32x_write_block(), stm32x_write_block_async(), stm32x_write_block_riscv(), str7x_write_block(), and str9x_write_block().
Definition at line 26 of file rtt/rtt.c.
Referenced by __attribute__(), aarch64_halt_smp(), aarch64_prepare_halt_smp(), aarch64_resume(), aarch64_step_restart_smp(), append_to_list_all_targets(), arm_build_reg_cache(), arm_init_arch_info(), armv7a_init_arch_info(), armv7m_build_reg_cache(), armv8_build_reg_cache(), armv8_init_arch_info(), at91sam7_read_part_info(), avr32_build_reg_cache(), COMMAND_HANDLER(), COMMAND_HELPER(), cortex_m_step(), dsp563xx_build_reg_cache(), esirisc_target_create(), esp32_apptrace_cmd_ctx_init(), esp_xtensa_smp_run_func_image(), esp_xtensa_smp_run_onboard_func(), esp_xtensa_smp_update_halt_gdb(), find_target(), FLASH_BANK_COMMAND_HANDLER(), gdb_connection_closed(), gdb_handle_vcont_packet(), gdb_input_inner(), gdb_new_connection(), gdb_signal_reply(), gdb_target_start(), get_cortex_a(), get_current_target(), get_dm(), get_halted_esp_xtensa_smp(), get_mips_m4k(), get_target(), get_target_with_common_rtos_type(), handle_target(), hwthread_find_thread(), hwthread_update_threads(), image_open(), kinetis_check_run_mode(), mips32_build_reg_cache(), mips64_build_reg_cache(), or1k_build_reg_cache(), or1k_init_target(), os_alloc(), riscv_batch_alloc(), riscv_init_registers(), riscv_program_init(), rtt_register_source(), scans_new(), sim3x_erase_page(), sim3x_flash_erase(), sim3x_flash_protect(), sim3x_flash_write(), sim3x_init(), stm8_build_reg_cache(), target_configure(), target_create(), target_examine(), target_handle_event(), target_init(), target_process_reset(), target_quit(), update_halt_gdb(), xscale_build_reg_cache(), and xtensa_init_arch_info().