|
OpenOCD
|

Go to the source code of this file.
Macros | |
| #define | _E "DSP5680XX_ERROR:%d\nAt:%s:%d:%s" |
| #define | CMD1 eonce_instruction_exec_single(target, DSP5680XX_ONCE_ORX, 0, 0, 0, NULL); |
| #define | CMD2 jtag_data_write16((t, data) |
| #define | core_move_at_pr0_inc_to_y0(target) exe(target, 1, 0x8568, 0, 0) |
| #define | core_move_at_pr0_inc_to_y0(target) exe(target, 1, 0x8568, 0, 0) |
| #define | core_move_at_pr0_inc_to_y1(target) exe(target, 1, 0x8768, 0, 0) |
| #define | core_move_at_pr2_inc_to_y0(target) exe(target, 1, 0x856A, 0, 0) |
| #define | core_move_at_r0_inc_to_y0(target) exe(target, 1, 0xf500, 0, 0) |
| #define | core_move_at_r0_to_y0(target) exe(target, 1, 0xF514, 0, 0) |
| #define | core_move_at_r0_to_y1(target) exe(target, 1, 0xF714, 0, 0) |
| #define | core_move_at_r0_y0(target) exe(target, 1, 0xF514, 0, 0) |
| #define | core_move_at_r2_disp_to_y0(target, disp) exe(target, 2, 0xF542, disp, 0) |
| #define | core_move_at_r2_to_y0(target) exe(target, 1, 0xF516, 0, 0) |
| #define | core_move_byte_y0_at_r0(target) exe(target, 1, 0xd5a0, 0, 0) |
| #define | core_move_long_at_r0_y(target) exe(target, 1, 0xF734, 0, 0) |
| #define | core_move_long_to_n(target, value) exe(target, 3, 0xe41e, value&0xffff, value>>16) |
| #define | core_move_long_to_r0(target, value) exe(target, 3, 0xe418, value&0xffff, value>>16) |
| #define | core_move_long_to_r1(target, value) exe(target, 3, 0xE419, value&0xffff, value>>16) |
| #define | core_move_long_to_r2(target, value) exe(target, 3, 0xe41A, value&0xffff, value>>16) |
| #define | core_move_long_to_r3(target, value) exe(target, 3, 0xE41B, value&0xffff, value>>16) |
| #define | core_move_long_to_r4(target, value) exe(target, 3, 0xE41C, value&0xffff, value>>16) |
| #define | core_move_long_to_y(target, value) exe(target, 3, 0xe417, value&0xffff, value>>16) |
| #define | core_move_pc_to_r4(target) exe(target, 1, 0xE716, 0, 0) |
| #define | core_move_r4_to_y(target) exe(target, 1, 0xe764, 0, 0) |
| #define | core_move_value_at_r0(target, value) exe(target, 2, 0x8640, value, 0) |
| #define | core_move_value_at_r2(target, value) exe(target, 2, 0x8642, value, 0) |
| #define | core_move_value_at_r2_disp(target, value, disp) exe(target, 3, 0x8646, value, disp) |
| #define | core_move_value_to_y0(target, value) exe(target, 2, 0x8745, value, 0) |
| #define | core_move_y0_at_pr0_inc(target) exe(target, 1, 0x8560, 0, 0) |
| #define | core_move_y0_at_pr3_inc(target) exe(target, 1, 0x8563, 0, 0) |
| #define | core_move_y0_at_r0(target) exe(target, 1, 0xd514, 0, 0) |
| #define | core_move_y0_at_r0_inc(target) exe(target, 1, 0xd500, 0, 0) |
| #define | core_move_y0_at_r2(target) exe(target, 1, 0xd516, 0, 0) |
| #define | core_move_y0_at_r3(target) exe(target, 1, 0xD503, 0, 0) |
| #define | core_move_y1_at_pr0_inc(target) exe(target, 1, 0x8760, 0, 0) |
| #define | core_move_y1_at_r0(target) exe(target, 1, 0xd714, 0, 0) |
| #define | core_move_y1_at_r0_inc(target) exe(target, 1, 0xD700, 0, 0) |
| #define | core_move_y1_at_r2(target) exe(target, 1, 0xd716, 0, 0) |
| #define | core_tx_lower_data(t, data) PT1\ PT2 |
| #define | DEBUG_MSG "Debug mode be enabled to read mem." |
| #define | dsp5680xx_exe_1(target, oc1, oc2, oc3) dsp5680xx_exe1(target, oc1) |
| #define | dsp5680xx_exe_2(target, oc1, oc2, oc3) dsp5680xx_exe2(target, oc1, oc2) |
| #define | dsp5680xx_exe_3(target, oc1, oc2, oc3) dsp5680xx_exe3(target, oc1, oc2, oc3) |
| #define | dsp5680xx_exe_generic(t, words, oc1, oc2, oc3) dsp5680xx_exe_##words(t, oc1, oc2, oc3) |
| #define | eonce_bfclr_at_r0(target, value) exe(target, 2, 0x8040, value, 0) |
| #define | eonce_nop(target) exe(target, 1, 0xe700, 0, 0) |
| #define | err_log(c, m) LOG_ERROR(_E, c, __func__, __LINE__, m) |
| #define | exe(a, b, c, d, e) dsp5680xx_exe_generic(a, b, c, d, e) |
| #define | HALT_MSG "Target must be halted." |
| #define | jtag_data_read16(target, data_read) jtag_data_read(target, data_read, 16) |
| #define | jtag_data_read32(target, data_read) jtag_data_read(target, data_read, 32) |
| #define | jtag_data_read8(target, data_read) jtag_data_read(target, data_read, 8) |
| #define | jtag_data_write16(target, instr, data_read) jtag_data_write(target, instr, 16, data_read) |
| #define | jtag_data_write24(target, instr, data_read) jtag_data_write(target, instr, 24, data_read) |
| #define | jtag_data_write32(target, instr, data_read) jtag_data_write(target, instr, 32, data_read) |
| #define | jtag_data_write8(target, instr, data_read) jtag_data_write(target, instr, 8, data_read) |
Functions | |
| static int | core_load_tx_rx_high_addr_to_r0 (struct target *target) |
| static int | core_move_value_to_pc (struct target *target, uint32_t value) |
| static int | core_rx_lower_data (struct target *target, uint8_t *data_read) |
| static int | core_rx_upper_data (struct target *target, uint8_t *data_read) |
| static int | core_tx_upper_data (struct target *target, uint16_t data, uint32_t *eonce_status_low) |
| static int | dsp5680xx_arch_state (struct target *target) |
| static int | dsp5680xx_assert_reset (struct target *target) |
| static int | dsp5680xx_checksum_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t *checksum) |
| This function is not implemented. More... | |
| static int | dsp5680xx_convert_address (uint32_t *address, int *pmem) |
| The value of address determines if it corresponds to P: (program) or X: (dat) memory. More... | |
| static int | dsp5680xx_deassert_reset (struct target *target) |
| static int | dsp5680xx_drscan (struct target *target, uint8_t *d_in, uint8_t *d_out, int len) |
| static int | dsp5680xx_exe1 (struct target *target, uint16_t opcode) |
| static int | dsp5680xx_exe2 (struct target *target, uint16_t opcode1, uint16_t opcode2) |
| static int | dsp5680xx_exe3 (struct target *target, uint16_t opcode1, uint16_t opcode2, uint16_t opcode3) |
| static int | dsp5680xx_execute_queue (void) |
| int | dsp5680xx_f_erase (struct target *target, int first, int last) |
| Erases either a sector or the complete flash array. More... | |
| int | dsp5680xx_f_erase_check (struct target *target, uint8_t *erased, uint32_t sector) |
| The FM has the functionality of checking if the flash array is erased. More... | |
| static int | dsp5680xx_f_ex (struct target *target, uint16_t c, uint32_t address, uint32_t data, uint16_t *hfm_ustat, int pmem) |
| Executes a command on the FM module. More... | |
| int | dsp5680xx_f_lock (struct target *target) |
| Writes the flash security words with a specific value. More... | |
| int | dsp5680xx_f_protect_check (struct target *target, uint16_t *protected) |
| Reads the memory mapped protection register. More... | |
| static int | dsp5680xx_f_signature (struct target *target, uint32_t address, uint32_t words, uint16_t *signature) |
| Executes the FM calculate signature command. More... | |
| static int | dsp5680xx_f_sim_reset (struct target *target) |
| Resets the SIM. More... | |
| int | dsp5680xx_f_unlock (struct target *target) |
| Executes a mass erase command. More... | |
| int | dsp5680xx_f_wr (struct target *t, const uint8_t *b, uint32_t a, uint32_t count, int is_flash_lock) |
| Writes to flash memory. More... | |
| static int | dsp5680xx_halt (struct target *target) |
| static int | dsp5680xx_init_target (struct command_context *cmd_ctx, struct target *target) |
| static int | dsp5680xx_irscan (struct target *target, uint32_t *d_in, uint32_t *d_out, uint8_t ir_len) |
| Test func. More... | |
| static int | dsp5680xx_jtag_status (struct target *target, uint8_t *status) |
| static int | dsp5680xx_poll (struct target *target) |
| static int | dsp5680xx_read (struct target *t, target_addr_t a, uint32_t size, uint32_t count, uint8_t *buf) |
| static int | dsp5680xx_read_16_single (struct target *t, uint32_t a, uint8_t *data_read, int r_pmem) |
| static int | dsp5680xx_read_32_single (struct target *t, uint32_t a, uint8_t *data_read, int r_pmem) |
| static int | dsp5680xx_read_buffer (struct target *target, target_addr_t address, uint32_t size, uint8_t *buffer) |
| This function is called by verify_image, it is used to read data from memory. More... | |
| static int | dsp5680xx_read_core_reg (struct target *target, uint8_t reg_addr, uint16_t *data_read) |
| static int | dsp5680xx_resume (struct target *target, bool current, target_addr_t address, bool handle_breakpoints, bool debug_execution) |
| static int | dsp5680xx_soft_reset_halt (struct target *target) |
| Halts the core and resets the SIM. More... | |
| static int | dsp5680xx_step (struct target *target, bool current, target_addr_t address, bool handle_breakpoints) |
| static int | dsp5680xx_target_create (struct target *target) |
| static int | dsp5680xx_write (struct target *target, target_addr_t a, uint32_t size, uint32_t count, const uint8_t *b) |
| Writes buffer to memory. More... | |
| static int | dsp5680xx_write_16 (struct target *t, uint32_t a, uint32_t c, const uint8_t *d, int pmem) |
| static int | dsp5680xx_write_16_single (struct target *t, uint32_t a, uint16_t data, uint8_t w_pmem) |
| static int | dsp5680xx_write_32 (struct target *t, uint32_t a, uint32_t c, const uint8_t *d, int pmem) |
| static int | dsp5680xx_write_32_single (struct target *t, uint32_t a, uint32_t data, int w_pmem) |
| static int | dsp5680xx_write_8 (struct target *t, uint32_t a, uint32_t c, const uint8_t *d, int pmem) |
| static int | dsp5680xx_write_buffer (struct target *t, target_addr_t a, uint32_t size, const uint8_t *b) |
| static int | eonce_enter_debug_mode (struct target *target, uint16_t *eonce_status) |
| Puts the core into debug mode, enabling the EOnCE module. More... | |
| static int | eonce_enter_debug_mode_without_reset (struct target *target, uint16_t *eonce_status) |
| Puts the core into debug mode, enabling the EOnCE module. More... | |
| static int | eonce_exit_debug_mode (struct target *target, uint8_t *eonce_status) |
| Takes the core out of debug mode. More... | |
| static int | eonce_instruction_exec_single (struct target *target, uint8_t instr, uint8_t rw, uint8_t go, uint8_t ex, uint8_t *eonce_status) |
| Executes EOnCE instruction. More... | |
| static int | eonce_load_tx_rx_to_r0 (struct target *target) |
| static int | eonce_pc_store (struct target *target) |
| Reads the current value of the program counter and stores it. More... | |
| static int | eonce_read_status_reg (struct target *target, uint16_t *data) |
| static int | erase_sector (struct target *target, int sector, uint16_t *hfm_ustat) |
| Executes the FM page erase command. More... | |
| static int | jtag_data_read (struct target *target, uint8_t *data_read, int num_bits) |
| static int | jtag_data_write (struct target *target, uint32_t instr, int num_bits, uint32_t *data_read) |
| static int | mass_erase (struct target *target, uint16_t *hfm_ustat) |
| Executes the FM mass erase command. More... | |
| static int | perl_crc (const uint8_t *buff8, uint32_t word_count) |
| Calculates a signature over word_count words in the data from buff8. More... | |
| static int | reset_jtag (void) |
| Reset state machine. More... | |
| static int | set_fm_ck_div (struct target *target) |
| Prior to the execution of any Flash module command, the Flash module Clock Divider (CLKDIV) register must be initialized. More... | |
| static int | switch_tap (struct target *target, struct jtag_tap *master_tap, struct jtag_tap *core_tap) |
Variables | |
| static uint32_t | data_read_dummy |
| static struct dsp5680xx_common | dsp5680xx_context |
| struct target_type | dsp5680xx_target |
| Holds methods for dsp5680xx targets. More... | |
| static const uint16_t | pgm_write_pflash [] |
| static const uint32_t | pgm_write_pflash_length = 31 |
| #define _E "DSP5680XX_ERROR:%d\nAt:%s:%d:%s" |
Definition at line 21 of file dsp5680xx.c.
| #define CMD1 eonce_instruction_exec_single(target, DSP5680XX_ONCE_ORX, 0, 0, 0, NULL); |
Definition at line 286 of file dsp5680xx.c.
| #define CMD2 jtag_data_write16((t, data) |
Definition at line 287 of file dsp5680xx.c.
Definition at line 409 of file dsp5680xx.c.
Definition at line 409 of file dsp5680xx.c.
Definition at line 364 of file dsp5680xx.c.
Definition at line 385 of file dsp5680xx.c.
Definition at line 412 of file dsp5680xx.c.
Definition at line 337 of file dsp5680xx.c.
Definition at line 340 of file dsp5680xx.c.
Definition at line 415 of file dsp5680xx.c.
Definition at line 421 of file dsp5680xx.c.
Definition at line 382 of file dsp5680xx.c.
Definition at line 430 of file dsp5680xx.c.
Definition at line 343 of file dsp5680xx.c.
Definition at line 334 of file dsp5680xx.c.
Definition at line 331 of file dsp5680xx.c.
Definition at line 388 of file dsp5680xx.c.
Definition at line 367 of file dsp5680xx.c.
Definition at line 391 of file dsp5680xx.c.
Definition at line 400 of file dsp5680xx.c.
Definition at line 439 of file dsp5680xx.c.
Definition at line 403 of file dsp5680xx.c.
Definition at line 406 of file dsp5680xx.c.
Definition at line 376 of file dsp5680xx.c.
Definition at line 373 of file dsp5680xx.c.
Definition at line 379 of file dsp5680xx.c.
Definition at line 352 of file dsp5680xx.c.
Definition at line 358 of file dsp5680xx.c.
Definition at line 394 of file dsp5680xx.c.
Definition at line 346 of file dsp5680xx.c.
Definition at line 355 of file dsp5680xx.c.
Definition at line 370 of file dsp5680xx.c.
Definition at line 397 of file dsp5680xx.c.
Definition at line 433 of file dsp5680xx.c.
Definition at line 427 of file dsp5680xx.c.
Definition at line 436 of file dsp5680xx.c.
Definition at line 424 of file dsp5680xx.c.
| #define core_tx_lower_data | ( | t, | |
| data | |||
| ) | PT1\ PT2 |
Definition at line 288 of file dsp5680xx.c.
| #define DEBUG_MSG "Debug mode be enabled to read mem." |
Definition at line 23 of file dsp5680xx.c.
| #define dsp5680xx_exe_1 | ( | target, | |
| oc1, | |||
| oc2, | |||
| oc3 | |||
| ) | dsp5680xx_exe1(target, oc1) |
Definition at line 209 of file dsp5680xx.c.
| #define dsp5680xx_exe_2 | ( | target, | |
| oc1, | |||
| oc2, | |||
| oc3 | |||
| ) | dsp5680xx_exe2(target, oc1, oc2) |
Definition at line 210 of file dsp5680xx.c.
| #define dsp5680xx_exe_3 | ( | target, | |
| oc1, | |||
| oc2, | |||
| oc3 | |||
| ) | dsp5680xx_exe3(target, oc1, oc2, oc3) |
Definition at line 211 of file dsp5680xx.c.
| #define dsp5680xx_exe_generic | ( | t, | |
| words, | |||
| oc1, | |||
| oc2, | |||
| oc3 | |||
| ) | dsp5680xx_exe_##words(t, oc1, oc2, oc3) |
Definition at line 212 of file dsp5680xx.c.
Definition at line 349 of file dsp5680xx.c.
Definition at line 418 of file dsp5680xx.c.
Definition at line 22 of file dsp5680xx.c.
| #define exe | ( | a, | |
| b, | |||
| c, | |||
| d, | |||
| e | |||
| ) | dsp5680xx_exe_generic(a, b, c, d, e) |
Definition at line 328 of file dsp5680xx.c.
| #define HALT_MSG "Target must be halted." |
Definition at line 24 of file dsp5680xx.c.
| #define jtag_data_read16 | ( | target, | |
| data_read | |||
| ) | jtag_data_read(target, data_read, 16) |
Definition at line 157 of file dsp5680xx.c.
| #define jtag_data_read32 | ( | target, | |
| data_read | |||
| ) | jtag_data_read(target, data_read, 32) |
Definition at line 158 of file dsp5680xx.c.
| #define jtag_data_read8 | ( | target, | |
| data_read | |||
| ) | jtag_data_read(target, data_read, 8) |
Definition at line 156 of file dsp5680xx.c.
| #define jtag_data_write16 | ( | target, | |
| instr, | |||
| data_read | |||
| ) | jtag_data_write(target, instr, 16, data_read) |
Definition at line 176 of file dsp5680xx.c.
| #define jtag_data_write24 | ( | target, | |
| instr, | |||
| data_read | |||
| ) | jtag_data_write(target, instr, 24, data_read) |
Definition at line 177 of file dsp5680xx.c.
| #define jtag_data_write32 | ( | target, | |
| instr, | |||
| data_read | |||
| ) | jtag_data_write(target, instr, 32, data_read) |
Definition at line 178 of file dsp5680xx.c.
| #define jtag_data_write8 | ( | target, | |
| instr, | |||
| data_read | |||
| ) | jtag_data_write(target, instr, 8, data_read) |
Definition at line 175 of file dsp5680xx.c.
|
static |
Definition at line 463 of file dsp5680xx.c.
References core_move_long_to_r0, MC568013_EONCE_OBASE_ADDR, and MC568013_EONCE_TX1_RX1_HIGH_ADDR.
Referenced by dsp5680xx_f_ex(), dsp5680xx_f_wr(), and set_fm_ck_div().
|
static |
Definition at line 441 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_exe_generic, err_log, ERROR_FAIL, HALT_MSG, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_resume().
|
static |
| target | |
| data_read | Returns the data read from the lower OTX register via JTAG. |
Definition at line 312 of file dsp5680xx.c.
References DSP5680XX_ONCE_OTX, eonce_instruction_exec_single(), ERROR_OK, jtag_data_read16, and NULL.
Referenced by dsp5680xx_read_16_single(), dsp5680xx_read_32_single(), and eonce_pc_store().
|
static |
| target | |
| data_read | Returns the data read from the upper OTX register via JTAG. |
Definition at line 296 of file dsp5680xx.c.
References DSP5680XX_ONCE_OTX1, eonce_instruction_exec_single(), ERROR_OK, jtag_data_read16, and NULL.
Referenced by dsp5680xx_f_ex(), dsp5680xx_read_32_single(), and set_fm_ck_div().
|
static |
Definition at line 274 of file dsp5680xx.c.
References DSP5680XX_ONCE_ORX1, eonce_instruction_exec_single(), ERROR_OK, jtag_data_write16, and NULL.
Referenced by dsp5680xx_f_wr().
|
static |
Definition at line 830 of file dsp5680xx.c.
|
static |
Definition at line 836 of file dsp5680xx.c.
References ERROR_OK, target::state, and TARGET_RESET.
|
static |
This function is not implemented.
It returns an error in order to get OpenOCD to do read out the data and calculate the CRC, or try a binary comparison.
| target | |
| address | Start address of the image. |
| size | In bytes. |
| checksum |
Definition at line 1469 of file dsp5680xx.c.
References ERROR_FAIL.
|
static |
The value of address determines if it corresponds to P: (program) or X: (dat) memory.
If the address is over 0x200000 then it is considered X: memory, and pmem = 0. The special case of 0xFFXXXX is not modified, since it allows to read out the memory mapped EOnCE registers.
| address | |
| pmem |
Definition at line 1031 of file dsp5680xx.c.
References address, ERROR_OK, and S_FILE_DATA_OFFSET.
Referenced by dsp5680xx_read(), and dsp5680xx_write().
|
static |
Definition at line 842 of file dsp5680xx.c.
References ERROR_OK, target::state, and TARGET_RUNNING.
|
static |
Definition at line 42 of file dsp5680xx.c.
References dsp5680xx_context, DSP5680XX_ERROR_JTAG_DR_LEN_OVERFLOW, DSP5680XX_ERROR_JTAG_DRSCAN, DSP5680XX_ERROR_JTAG_INVALID_TAP, dsp5680xx_execute_queue(), err_log, ERROR_FAIL, ERROR_OK, dsp5680xx_common::flush, jtag_add_plain_dr_scan(), LOG_DEBUG, target::tap, and TAP_IDLE.
Referenced by dsp5680xx_f_unlock(), dsp5680xx_read_core_reg(), eonce_enter_debug_mode(), jtag_data_read(), jtag_data_write(), and switch_tap().
|
static |
Definition at line 215 of file dsp5680xx.c.
References eonce_instruction_exec_single(), ERROR_OK, jtag_data_write16, and NULL.
|
static |
Definition at line 224 of file dsp5680xx.c.
References eonce_instruction_exec_single(), ERROR_OK, jtag_data_write16, and NULL.
|
static |
Definition at line 240 of file dsp5680xx.c.
References eonce_instruction_exec_single(), ERROR_OK, jtag_data_write16, and NULL.
|
static |
Definition at line 26 of file dsp5680xx.c.
References jtag_execute_queue().
Referenced by dsp5680xx_drscan(), dsp5680xx_f_ex(), dsp5680xx_f_wr(), dsp5680xx_irscan(), and dsp5680xx_read().
| int dsp5680xx_f_erase | ( | struct target * | target, |
| int | first, | ||
| int | last | ||
| ) |
Erases either a sector or the complete flash array.
If either the range first-last covers the complete array or if first == 0 and last == 0 then a mass erase command is executed on the FM. If not, then individual sectors are erased.
| target | |
| first | |
| last |
Definition at line 1860 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, dsp5680xx_f_sim_reset(), dsp5680xx_halt(), erase_sector(), ERROR_OK, HFM_SECTOR_COUNT, mass_erase(), and set_fm_ck_div().
Referenced by dsp5680xx_flash_erase().
| int dsp5680xx_f_erase_check | ( | struct target * | target, |
| uint8_t * | erased, | ||
| uint32_t | sector | ||
| ) |
The FM has the functionality of checking if the flash array is erased.
This function executes it. It does not support individual sector analysis.
| target | |
| erased | |
| sector | This parameter is ignored because the FM does not support checking if individual sectors are erased. |
Definition at line 1801 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, dsp5680xx_f_ex(), dsp5680xx_halt(), ERROR_OK, HFM_ERASE_VERIFY, HFM_FLASH_BASE_ADDR, HFM_SECTOR_SIZE, HFM_USTAT_MASK_BLANK, and set_fm_ck_div().
|
static |
Executes a command on the FM module.
Some commands use the parameters address and data, others ignore them.
| target | |
| c | Command to execute. |
| address | Command parameter. |
| data | Command parameter. |
| hfm_ustat | FM status register. |
| pmem | Address is P: (program) memory (pmem == 1) or X: (dat) memory (pmem == 0) |
Definition at line 1580 of file dsp5680xx.c.
References address, core_load_tx_rx_high_addr_to_r0(), core_move_at_r2_disp_to_y0, core_move_long_to_r2, core_move_long_to_r3, core_move_value_at_r2_disp, core_move_value_to_y0, core_move_y0_at_pr3_inc, core_move_y0_at_r0, core_move_y0_at_r3, core_rx_upper_data(), dsp5680xx_context, DSP5680XX_ERROR_FM_BUSY, DSP5680XX_ERROR_FM_CMD_TIMED_OUT, DSP5680XX_ERROR_FM_EXEC, dsp5680xx_execute_queue(), err_log, ERROR_OK, ERROR_TARGET_FAILURE, dsp5680xx_common::flush, HFM_BASE_ADDR, HFM_CMD, HFM_CNFG, HFM_PROT, HFM_PROTB, HFM_USTAT, and HFM_USTAT_MASK_PVIOL_ACCER.
Referenced by dsp5680xx_f_erase_check(), dsp5680xx_f_signature(), erase_sector(), and mass_erase().
| int dsp5680xx_f_lock | ( | struct target * | target | ) |
Writes the flash security words with a specific value.
The chip's security will be enabled after the first reset following the execution of this function.
| target |
Definition at line 2221 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, DSP5680XX_ERROR_JTAG_RESET, DSP5680XX_ERROR_JTAG_TAP_ENABLE_CORE, DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER, dsp5680xx_f_wr(), jtag_tap::enabled, err_log, ERROR_FAIL, ERROR_OK, HFM_LOCK_ADDR_L, HFM_LOCK_FLASH, jtag_add_reset(), jtag_add_sleep(), jtag_tap_by_string(), reset_jtag(), target::state, switch_tap(), TARGET_RUNNING, and TIME_DIV_FREESCALE.
Referenced by dsp5680xx_flash_protect().
| int dsp5680xx_f_protect_check | ( | struct target * | target, |
| uint16_t * | protected | ||
| ) |
Reads the memory mapped protection register.
A 1 implies the sector is protected, a 0 implies the sector is not protected.
| target | |
| protected | Data read from the protection register. |
Definition at line 1547 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_PROTECT_CHECK_INVALID_ARGS, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_read_16_single(), err_log, ERROR_FAIL, HALT_MSG, HFM_BASE_ADDR, HFM_PROT, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_flash_protect_check().
|
static |
Executes the FM calculate signature command.
The FM will calculate over the data from address to address + words -1. The result is written to a register, then read out by this function and returned in signature. The value signature may be compared to the one returned by perl_crc to verify the flash was written correctly.
| target | |
| address | Start of flash array where the signature should be calculated. |
| words | Number of words over which the signature should be calculated. |
| signature | Value calculated by the FM. |
Definition at line 1775 of file dsp5680xx.c.
References address, dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, DSP5680XX_ERROR_HALT, dsp5680xx_f_ex(), dsp5680xx_read_16_single(), eonce_enter_debug_mode_without_reset(), err_log, ERROR_OK, HFM_BASE_ADDR, HFM_CALCULATE_DATA_SIGNATURE, HFM_DATA, and NULL.
Referenced by dsp5680xx_f_wr().
|
static |
Resets the SIM.
(System Integration Modul).
| target |
Definition at line 1519 of file dsp5680xx.c.
References jtag_tap::chip, dsp5680xx_write(), ERROR_OK, MC568013_SIM_BASE_ADDR, S_FILE_DATA_OFFSET, SIM_CMD_RESET, and target::tap.
Referenced by dsp5680xx_f_erase(), and dsp5680xx_soft_reset_halt().
| int dsp5680xx_f_unlock | ( | struct target * | target | ) |
Executes a mass erase command.
The must be done from the Master tap. It is up to the user to select the master tap (jtag tapenable dsp5680xx.chp) before running this function. The flash array will be unsecured (and erased) after the first reset following the execution of this function.
| target |
Definition at line 2114 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, dsp5680xx_drscan(), DSP5680XX_ERROR_JTAG_RESET, DSP5680XX_ERROR_JTAG_TAP_ENABLE_CORE, DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER, dsp5680xx_irscan(), DSP5680XX_JTAG_CORE_TAP_IRLEN, DSP5680XX_JTAG_MASTER_TAP_IRLEN, jtag_tap::enabled, eonce_enter_debug_mode_without_reset(), err_log, ERROR_FAIL, ERROR_OK, HFM_CLK_DEFAULT, jtag_add_reset(), jtag_add_sleep(), JTAG_INSTR_DEBUG_REQUEST, jtag_tap_by_string(), LOG_WARNING, MASTER_TAP_CMD_FLASH_ERASE, reset_jtag(), target::state, switch_tap(), TARGET_RUNNING, and TIME_DIV_FREESCALE.
Referenced by dsp5680xx_flash_protect().
| int dsp5680xx_f_wr | ( | struct target * | target, |
| const uint8_t * | buffer, | ||
| uint32_t | address, | ||
| uint32_t | count, | ||
| int | is_flash_lock | ||
| ) |
Writes to flash memory.
Does not check if flash is erased, it's up to the user to erase the flash before running this function. The flashing algorithm runs from RAM, reading from a register to which this function writes to. The algorithm is open loop, there is no control to verify that the FM read the register before writing the next data. A closed loop approach was much slower, and the current implementation does not fail, and if it did the crc check would detect it, allowing to flash again.
| target | |
| buffer | |
| address | Word addressing. |
| count | In bytes. |
| is_flash_lock |
Definition at line 1959 of file dsp5680xx.c.
References address, buffer, core_load_tx_rx_high_addr_to_r0(), core_move_long_to_r2, core_move_long_to_r3, core_move_value_at_r2_disp, core_tx_upper_data(), count, dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, DSP5680XX_ERROR_FLASHING_CRC, DSP5680XX_ERROR_FLASHING_INVALID_WORD_COUNT, dsp5680xx_execute_queue(), dsp5680xx_f_signature(), dsp5680xx_resume(), dsp5680xx_write(), eonce_enter_debug_mode(), err_log, ERROR_FAIL, ERROR_OK, dsp5680xx_common::flush, FLUSH_COUNT_FLASH, HFM_BASE_ADDR, HFM_CNFG, HFM_PROT, HFM_PROTB, HFM_SIZE_WORDS, HFM_USTAT, NULL, perl_crc(), pgm_write_pflash, pgm_write_pflash_length, and set_fm_ck_div().
Referenced by dsp5680xx_f_lock(), and dsp5680xx_flash_write().
|
static |
Definition at line 848 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, eonce_enter_debug_mode(), eonce_pc_store(), ERROR_OK, LOG_USER, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_f_erase(), dsp5680xx_f_erase_check(), dsp5680xx_poll(), and dsp5680xx_soft_reset_halt().
|
static |
Definition at line 818 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, ERROR_OK, dsp5680xx_common::flush, LOG_DEBUG, and dsp5680xx_common::stored_pc.
|
static |
Test func.
| target | |
| d_in | This is the data that will be shifted into the JTAG IR reg. |
| d_out | The data that will be shifted out of the JTAG IR reg will be stored here. |
| ir_len | Length of the data to be shifted to JTAG IR. |
Definition at line 92 of file dsp5680xx.c.
References dsp5680xx_context, DSP5680XX_ERROR_INVALID_IR_LEN, DSP5680XX_ERROR_JTAG_INVALID_TAP, DSP5680XX_ERROR_JTAG_IRSCAN, dsp5680xx_execute_queue(), DSP5680XX_JTAG_MASTER_TAP_IRLEN, jtag_tap::enabled, err_log, ERROR_FAIL, ERROR_OK, dsp5680xx_common::flush, jtag_tap::ir_length, jtag_add_plain_ir_scan(), jtag_tap_by_string(), target::tap, and TAP_IDLE.
Referenced by dsp5680xx_f_unlock(), dsp5680xx_jtag_status(), eonce_enter_debug_mode(), eonce_enter_debug_mode_without_reset(), and switch_tap().
|
static |
Definition at line 127 of file dsp5680xx.c.
References dsp5680xx_irscan(), DSP5680XX_JTAG_CORE_TAP_IRLEN, ERROR_OK, JTAG_INSTR_ENABLE_ONCE, and status.
Referenced by dsp5680xx_poll(), and dsp5680xx_resume().
|
static |
Definition at line 873 of file dsp5680xx.c.
References dsp5680xx_halt(), dsp5680xx_jtag_status(), DSP5680XX_ONCE_OSCR_DEBUG_M, DSP5680XX_ONCE_OSCR_NORMAL_M, eonce_enter_debug_mode(), eonce_exit_debug_mode(), eonce_read_status_reg(), EONCE_STAT_MASK, ERROR_OK, ERROR_TARGET_FAILURE, JTAG_STATUS_DEAD, JTAG_STATUS_DEBUG, JTAG_STATUS_NORMAL, LOG_ERROR, LOG_WARNING, target::state, TARGET_HALTED, TARGET_RESET, TARGET_RUNNING, and TARGET_UNKNOWN.
|
static |
Definition at line 1121 of file dsp5680xx.c.
References address, buffer, count, dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, dsp5680xx_convert_address(), DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_execute_queue(), dsp5680xx_read_16_single(), dsp5680xx_read_32_single(), err_log, ERROR_FAIL, ERROR_OK, dsp5680xx_common::flush, FLUSH_COUNT_READ_WRITE, HALT_MSG, LOG_USER, size, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_read_buffer(), and dsp5680xx_write_8().
|
static |
Definition at line 1045 of file dsp5680xx.c.
References address, core_move_at_pr0_inc_to_y0, core_move_at_r0_to_y0, core_move_long_to_r0, core_move_y0_at_r0, core_rx_lower_data(), eonce_load_tx_rx_to_r0(), ERROR_OK, and LOG_DEBUG.
Referenced by dsp5680xx_f_protect_check(), dsp5680xx_f_signature(), and dsp5680xx_read().
|
static |
Definition at line 1076 of file dsp5680xx.c.
References address, core_move_at_pr0_inc_to_y0, core_move_at_pr0_inc_to_y1, core_move_at_r0_inc_to_y0, core_move_at_r0_to_y1, core_move_long_to_r0, core_move_y0_at_r0_inc, core_move_y1_at_r0, core_rx_lower_data(), core_rx_upper_data(), eonce_load_tx_rx_to_r0(), and ERROR_OK.
Referenced by dsp5680xx_read().
|
static |
This function is called by verify_image, it is used to read data from memory.
| target | |
| address | Word addressing. |
| size | In bytes. |
| buffer |
Definition at line 1441 of file dsp5680xx.c.
References address, buffer, dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_read(), err_log, ERROR_FAIL, HALT_MSG, size, target::state, and TARGET_HALTED.
|
static |
Definition at line 470 of file dsp5680xx.c.
References dsp5680xx_drscan(), eonce_instruction_exec_single(), ERROR_OK, LOG_DEBUG, and NULL.
Referenced by eonce_read_status_reg().
|
static |
Definition at line 950 of file dsp5680xx.c.
References address, core_move_value_to_pc(), dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, DSP5680XX_ERROR_EXIT_DEBUG_MODE, DSP5680XX_ERROR_JTAG_RESET, DSP5680XX_ERROR_RESUME, dsp5680xx_jtag_status(), DSP5680XX_ONCE_OSCR_NORMAL_M, eonce_exit_debug_mode(), err_log, ERROR_OK, ERROR_TARGET_FAILURE, jtag_add_reset(), jtag_add_sleep(), JTAG_STATUS_MASK, JTAG_STATUS_NORMAL, LOG_DEBUG, LOG_USER, reset_jtag(), target::state, TARGET_RUNNING, and TIME_DIV_FREESCALE.
Referenced by dsp5680xx_f_wr().
|
static |
Halts the core and resets the SIM.
(System Integration Modul).
| target |
Definition at line 1538 of file dsp5680xx.c.
References dsp5680xx_f_sim_reset(), dsp5680xx_halt(), and ERROR_OK.
|
static |
Definition at line 2260 of file dsp5680xx.c.
References DSP5680XX_ERROR_NOT_IMPLEMENTED_STEP, err_log, and ERROR_FAIL.
|
static |
Definition at line 810 of file dsp5680xx.c.
References target::arch_info, and ERROR_OK.
|
static |
Writes buffer to memory.
The parameter address determines whether buffer should be written to P: (program) memory or X: (dat) memory.
| target | |
| a | address |
| size | Bytes (1), Half words (2), Words (4). |
| count | In bytes. |
| b | buffer |
Definition at line 1374 of file dsp5680xx.c.
References address, buffer, count, dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, dsp5680xx_convert_address(), DSP5680XX_ERROR_INVALID_DATA_SIZE_UNIT, DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_write_16(), dsp5680xx_write_32(), dsp5680xx_write_8(), err_log, ERROR_FAIL, ERROR_OK, ERROR_TARGET_DATA_ABORT, HALT_MSG, size, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_f_sim_reset(), dsp5680xx_f_wr(), and dsp5680xx_write_buffer().
|
static |
Definition at line 1291 of file dsp5680xx.c.
References address, count, dsp5680xx_context, dsp5680xx_write_16_single(), ERROR_OK, dsp5680xx_common::flush, FLUSH_COUNT_READ_WRITE, and LOG_ERROR.
Referenced by dsp5680xx_write().
|
static |
Definition at line 1184 of file dsp5680xx.c.
References address, core_move_long_to_r0, core_move_value_at_r0, core_move_value_to_y0, core_move_y0_at_pr0_inc, and ERROR_OK.
Referenced by dsp5680xx_write_16(), and dsp5680xx_write_8().
|
static |
Definition at line 1326 of file dsp5680xx.c.
References address, count, dsp5680xx_context, dsp5680xx_write_32_single(), ERROR_OK, dsp5680xx_common::flush, FLUSH_COUNT_READ_WRITE, and LOG_ERROR.
Referenced by dsp5680xx_write().
|
static |
Definition at line 1205 of file dsp5680xx.c.
References address, core_move_long_to_r0, core_move_long_to_y, core_move_y0_at_pr0_inc, core_move_y0_at_r0_inc, core_move_y1_at_pr0_inc, core_move_y1_at_r0_inc, and ERROR_OK.
Referenced by dsp5680xx_write_32().
|
static |
Definition at line 1231 of file dsp5680xx.c.
References address, count, dsp5680xx_context, dsp5680xx_read(), dsp5680xx_write_16_single(), ERROR_OK, dsp5680xx_common::flush, FLUSH_COUNT_READ_WRITE, and LOG_ERROR.
Referenced by dsp5680xx_write().
|
static |
Definition at line 1417 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, DEBUG_MSG, dsp5680xx_context, DSP5680XX_ERROR_NOT_IN_DEBUG, DSP5680XX_ERROR_TARGET_RUNNING, dsp5680xx_write(), err_log, ERROR_FAIL, HALT_MSG, size, target::state, and TARGET_HALTED.
|
static |
Puts the core into debug mode, enabling the EOnCE module.
| target | |
| eonce_status | Data read from the EOnCE status register. |
Definition at line 648 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, dsp5680xx_drscan(), DSP5680XX_ERROR_ENTER_DEBUG_MODE, DSP5680XX_ERROR_HALT, DSP5680XX_ERROR_JTAG_TAP_FIND_CORE, DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER, dsp5680xx_irscan(), DSP5680XX_JTAG_CORE_TAP_IRLEN, DSP5680XX_JTAG_MASTER_TAP_IRLEN, jtag_tap::enabled, eonce_enter_debug_mode_without_reset(), eonce_read_status_reg(), err_log, ERROR_FAIL, ERROR_OK, ERROR_TARGET_FAILURE, jtag_add_reset(), jtag_add_sleep(), JTAG_INSTR_DEBUG_REQUEST, JTAG_INSTR_ENABLE_ONCE, JTAG_STATUS_DEBUG, JTAG_STATUS_MASK, jtag_tap_by_string(), LOG_DEBUG, MASTER_TAP_CMD_IDCODE, target::state, switch_tap(), TARGET_HALTED, and TIME_DIV_FREESCALE.
Referenced by dsp5680xx_f_wr(), dsp5680xx_halt(), and dsp5680xx_poll().
|
static |
Puts the core into debug mode, enabling the EOnCE module.
This will not always work, eonce_enter_debug_mode executes much more complicated routine, which is guaranteed to work, but requires a reset. This will complicate comm with the flash module, since after a reset clock divisors must be set again. This implementation works most of the time, and is not accessible to the user.
| target | |
| eonce_status | Data read from the EOnCE status register. |
No error msg here, since there is still hope with full halting sequence
Definition at line 587 of file dsp5680xx.c.
References dsp5680xx_common::debug_mode_enabled, dsp5680xx_context, dsp5680xx_irscan(), DSP5680XX_JTAG_CORE_TAP_IRLEN, eonce_read_status_reg(), ERROR_FAIL, ERROR_OK, ERROR_TARGET_FAILURE, JTAG_INSTR_DEBUG_REQUEST, JTAG_INSTR_ENABLE_ONCE, JTAG_STATUS_DEBUG, JTAG_STATUS_MASK, LOG_DEBUG, target::state, and TARGET_HALTED.
Referenced by dsp5680xx_f_signature(), dsp5680xx_f_unlock(), and eonce_enter_debug_mode().
|
static |
Takes the core out of debug mode.
| target | |
| eonce_status | Data read from the EOnCE status register. |
Definition at line 501 of file dsp5680xx.c.
References eonce_instruction_exec_single().
Referenced by dsp5680xx_poll(), and dsp5680xx_resume().
|
static |
Executes EOnCE instruction.
| target | |
| instr | Instruction to execute. |
| rw | |
| go | |
| ex | |
| eonce_status | Value read from the EOnCE status register. |
Definition at line 192 of file dsp5680xx.c.
References ERROR_OK, and jtag_data_write().
Referenced by core_rx_lower_data(), core_rx_upper_data(), core_tx_upper_data(), dsp5680xx_exe1(), dsp5680xx_exe2(), dsp5680xx_exe3(), dsp5680xx_read_core_reg(), and eonce_exit_debug_mode().
|
static |
Definition at line 456 of file dsp5680xx.c.
References core_move_long_to_r0, MC568013_EONCE_OBASE_ADDR, and MC568013_EONCE_TX_RX_ADDR.
Referenced by dsp5680xx_read_16_single(), dsp5680xx_read_32_single(), and eonce_pc_store().
|
static |
Reads the current value of the program counter and stores it.
| target |
Definition at line 786 of file dsp5680xx.c.
References core_move_pc_to_r4, core_move_r4_to_y, core_move_y0_at_r0, core_rx_lower_data(), dsp5680xx_context, eonce_load_tx_rx_to_r0(), ERROR_OK, LOG_USER, and dsp5680xx_common::stored_pc.
Referenced by dsp5680xx_halt().
|
static |
Definition at line 488 of file dsp5680xx.c.
References DSP5680XX_ONCE_OSR, and dsp5680xx_read_core_reg().
Referenced by dsp5680xx_poll(), eonce_enter_debug_mode(), and eonce_enter_debug_mode_without_reset().
|
static |
Executes the FM page erase command.
| target | |
| sector | Page to erase. |
| hfm_ustat | FM module status register. |
Definition at line 1840 of file dsp5680xx.c.
References dsp5680xx_f_ex(), HFM_FLASH_BASE_ADDR, HFM_PAGE_ERASE, and HFM_SECTOR_SIZE.
Referenced by dsp5680xx_f_erase().
|
static |
TODO remove this or move to jtagio?
Definition at line 143 of file dsp5680xx.c.
References dsp5680xx_drscan(), and LOG_DEBUG.
|
static |
Definition at line 162 of file dsp5680xx.c.
References data_read_dummy, dsp5680xx_drscan(), and ERROR_OK.
Referenced by eonce_instruction_exec_single().
|
static |
Executes the FM mass erase command.
Erases the flash array completely.
| target | |
| hfm_ustat | FM module status register. |
Definition at line 1855 of file dsp5680xx.c.
References dsp5680xx_f_ex(), and HFM_MASS_ERASE.
Referenced by bluenrgx_erase(), and dsp5680xx_f_erase().
|
static |
Calculates a signature over word_count words in the data from buff8.
The algorithm used is the same the FM uses, so the return may be used to compare with the one generated by the FM module, and check if flashing was successful. This algorithm is based on the perl script available from the Freescale website at FAQ 25630.
| buff8 | |
| word_count |
Definition at line 1486 of file dsp5680xx.c.
Referenced by dsp5680xx_f_wr().
|
static |
Reset state machine.
Definition at line 34 of file dsp5680xx.c.
References ERROR_OK, jtag_add_statemove(), jtag_execute_queue(), and TAP_RESET.
Referenced by dsp5680xx_f_lock(), dsp5680xx_f_unlock(), and dsp5680xx_resume().
|
static |
Prior to the execution of any Flash module command, the Flash module Clock Divider (CLKDIV) register must be initialized.
The values of this register determine the speed of the internal Flash Clock (FCLK). FCLK must be in the range of 150kHz ≤ FCLK ≤ 200kHz for proper operation of the Flash module. (Running FCLK too slowly wears out the module, while running it too fast under programs Flash leading to bit errors.)
| target |
Definition at line 1706 of file dsp5680xx.c.
References core_load_tx_rx_high_addr_to_r0(), core_move_at_r2_to_y0, core_move_long_to_r2, core_move_value_at_r2, core_move_y0_at_r0, core_rx_upper_data(), DSP5680XX_ERROR_FM_SET_CLK, err_log, ERROR_OK, ERROR_TARGET_FAILURE, HFM_BASE_ADDR, HFM_CLK_DEFAULT, and LOG_DEBUG.
Referenced by dsp5680xx_f_erase(), dsp5680xx_f_erase_check(), and dsp5680xx_f_wr().
|
static |
Definition at line 506 of file dsp5680xx.c.
References dsp5680xx_drscan(), DSP5680XX_ERROR_JTAG_TAP_FIND_CORE, DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER, dsp5680xx_irscan(), DSP5680XX_JTAG_CORE_TAP_IRLEN, DSP5680XX_JTAG_MASTER_TAP_IRLEN, jtag_tap::enabled, err_log, ERROR_FAIL, ERROR_OK, jtag_tap_by_string(), and LOG_WARNING.
Referenced by dsp5680xx_f_lock(), dsp5680xx_f_unlock(), and eonce_enter_debug_mode().
|
static |
Definition at line 160 of file dsp5680xx.c.
Referenced by jtag_data_write().
|
static |
Definition at line 1 of file dsp5680xx.c.
Referenced by core_move_value_to_pc(), dsp5680xx_drscan(), dsp5680xx_f_erase(), dsp5680xx_f_erase_check(), dsp5680xx_f_ex(), dsp5680xx_f_lock(), dsp5680xx_f_protect_check(), dsp5680xx_f_signature(), dsp5680xx_f_unlock(), dsp5680xx_f_wr(), dsp5680xx_halt(), dsp5680xx_init_target(), dsp5680xx_irscan(), dsp5680xx_read(), dsp5680xx_read_buffer(), dsp5680xx_resume(), dsp5680xx_write(), dsp5680xx_write_16(), dsp5680xx_write_32(), dsp5680xx_write_8(), dsp5680xx_write_buffer(), eonce_enter_debug_mode(), eonce_enter_debug_mode_without_reset(), and eonce_pc_store().
| struct target_type dsp5680xx_target |
Holds methods for dsp5680xx targets.
Definition at line 2260 of file dsp5680xx.c.
|
static |
Definition at line 1946 of file dsp5680xx.c.
Referenced by dsp5680xx_f_wr().
|
static |
Definition at line 1957 of file dsp5680xx.c.
Referenced by dsp5680xx_f_wr().