From 6c2020eb48803b941a94d600e2a96728d05a7da9 Mon Sep 17 00:00:00 2001 From: Marc Schink Date: Tue, 29 Jan 2019 09:23:09 +0100 Subject: [PATCH] jlink: Use correct SWD buffer size Currently, the SWD buffer size is adjusted corresponding to the free device memory. However, the adjusted size is not used. This fixes SWD operations on devices with small device memory, such as EFM32PG12 Pearl Gecko STK. It should also fix #184. Change-Id: I2ec5cf25c62f18bd9e99a2f4aa1aa8d85ed0821b Signed-off-by: Marc Schink Reviewed-on: http://openocd.zylin.com/4878 Reviewed-by: Andreas Fritiofson Tested-by: jenkins --- src/jtag/drivers/jlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jtag/drivers/jlink.c b/src/jtag/drivers/jlink.c index e74965e61..1eae82734 100644 --- a/src/jtag/drivers/jlink.c +++ b/src/jtag/drivers/jlink.c @@ -2130,7 +2130,7 @@ skip: static void jlink_swd_queue_cmd(uint8_t cmd, uint32_t *dst, uint32_t data, uint32_t ap_delay_clk) { uint8_t data_parity_trn[DIV_ROUND_UP(32 + 1, 8)]; - if (tap_length + 46 + 8 + ap_delay_clk >= sizeof(tdi_buffer) * 8 || + if (tap_length + 46 + 8 + ap_delay_clk >= swd_buffer_size * 8 || pending_scan_results_length == MAX_PENDING_SCAN_RESULTS) { /* Not enough room in the queue. Run the queue. */ queued_retval = jlink_swd_run_queue();