diff options
Diffstat (limited to 'src/target/arm11_dbgtap.c')
-rw-r--r-- | src/target/arm11_dbgtap.c | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/src/target/arm11_dbgtap.c b/src/target/arm11_dbgtap.c index 40361dc4..a95dcdde 100644 --- a/src/target/arm11_dbgtap.c +++ b/src/target/arm11_dbgtap.c @@ -941,80 +941,3 @@ int arm11_read_memory_word(struct arm11_common * arm11, uint32_t address, uint32 return arm11_run_instr_data_finish(arm11); } - -/** Write Embedded Trace Macrocell (ETM) via Scan chain 6 - * - * http://infocenter.arm.com/help/topic/com.arm.doc.ddi0318e/Bcfddjeh.html#Bcfggcbe - * - * \param arm11 Target state variable. - * \param address 7 bit ETM register address - * \param value Value to be written - * - * \return Error status - * - * \remarks This is a stand-alone function that executes the JTAG command queue. - */ -int arm11_write_etm(struct arm11_common * arm11, uint8_t address, uint32_t value) -{ - CHECK_RETVAL(arm11_add_debug_SCAN_N(arm11, 0x06, ARM11_TAP_DEFAULT)); - - /* Uses INTEST for read and write */ - arm11_add_IR(arm11, ARM11_INTEST, ARM11_TAP_DEFAULT); - - struct scan_field chain6_fields[3]; - - uint8_t nRW = 1; - - arm11_setup_field(arm11, 32, &value, NULL, chain6_fields + 0); - arm11_setup_field(arm11, 7, &address, NULL, chain6_fields + 1); - arm11_setup_field(arm11, 1, &nRW, NULL, chain6_fields + 2); - - arm11_add_dr_scan_vc(asizeof(chain6_fields), chain6_fields, TAP_IDLE); - - CHECK_RETVAL(jtag_execute_queue()); - - return ERROR_OK; -} - -/** Read Embedded Trace Macrocell (ETM) via Scan chain 6 - * - * http://infocenter.arm.com/help/topic/com.arm.doc.ddi0318e/Bcfddjeh.html#Bcfggcbe - * - * \param arm11 Target state variable. - * \param address 7 bit ETM register address - * \param value Pointer that receives value that was read - * - * \return Error status - * - * \remarks This is a stand-alone function that executes the JTAG command queue. - */ -int arm11_read_etm(struct arm11_common * arm11, uint8_t address, uint32_t * value) -{ - CHECK_RETVAL(arm11_add_debug_SCAN_N(arm11, 0x06, ARM11_TAP_DEFAULT)); - - /* Uses INTEST for read and write */ - arm11_add_IR(arm11, ARM11_INTEST, ARM11_TAP_DEFAULT); - - struct scan_field chain6_fields[3]; - - uint8_t nRW = 0; - - arm11_setup_field(arm11, 32, NULL, NULL, chain6_fields + 0); - arm11_setup_field(arm11, 7, &address, NULL, chain6_fields + 1); - arm11_setup_field(arm11, 1, &nRW, NULL, chain6_fields + 2); - - arm11_add_dr_scan_vc(asizeof(chain6_fields), chain6_fields, TAP_IDLE); - - /* Data is made available in Capture-DR and shifted out on the next access */ - - arm11_setup_field(arm11, 32, NULL, value, chain6_fields + 0); - arm11_setup_field(arm11, 7, &address, NULL, chain6_fields + 1); - arm11_setup_field(arm11, 1, &nRW, NULL, chain6_fields + 2); - - arm11_add_dr_scan_vc(asizeof(chain6_fields), chain6_fields, TAP_IDLE); - - CHECK_RETVAL(jtag_execute_queue()); - - return ERROR_OK; -} - |