From cb6ebced3df72668091d5920fef3fbc46ddbc7ac Mon Sep 17 00:00:00 2001 From: drath Date: Thu, 16 Aug 2007 13:12:48 +0000 Subject: - update jtag_speed setting when changing it during runtime with a FT2232 based interface - use 'etm trigger_percent' setting when programming ETB trigger count - fixed some small bugs in ETM trace analysis - fixed minor bug in flash writing (thanks to Pavel Chromy) git-svn-id: svn://svn.berlios.de/openocd/trunk@197 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/target/etb.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/target/etb.c') diff --git a/src/target/etb.c b/src/target/etb.c index 81e20af0..f145f302 100644 --- a/src/target/etb.c +++ b/src/target/etb.c @@ -636,6 +636,7 @@ int etb_start_capture(etm_context_t *etm_ctx) { etb_t *etb = etm_ctx->capture_driver_priv; u32 etb_ctrl_value = 0x1; + u32 trigger_count; if ((etm_ctx->portmode & ETM_PORT_MODE_MASK) == ETM_PORT_DEMUXED) { @@ -650,7 +651,9 @@ int etb_start_capture(etm_context_t *etm_ctx) if ((etm_ctx->portmode & ETM_PORT_MODE_MASK) == ETM_PORT_MUXED) return ERROR_ETM_PORTMODE_NOT_SUPPORTED; - etb_write_reg(&etb->reg_cache->reg_list[ETB_TRIGGER_COUNTER], 0x600); + trigger_count = (etb->ram_depth * etm_ctx->trigger_percent) / 100; + + etb_write_reg(&etb->reg_cache->reg_list[ETB_TRIGGER_COUNTER], trigger_count); etb_write_reg(&etb->reg_cache->reg_list[ETB_RAM_WRITE_POINTER], 0x0); etb_write_reg(&etb->reg_cache->reg_list[ETB_CTRL], etb_ctrl_value); jtag_execute_queue(); -- cgit v1.2.3