Hi,
Sorry, it should be:
if ((svf_check_tdo_para[i].enabled)
&& (buf_cmp_mask(&svf_tdi_buffer[index], &svf_tdo_buffer[index],
&svf_mask_buffer[index], len)))If you cut [index], it will alway compare from the first data. And in d3 mode, svf_check_tdo will be called when there is a valid data, which need to be compared. So it will be OK. But in normal mode, many data will be commited and then call svf_check_tdo. So it will be faster on some dongles. svf_check_tdo_para_index is the number of data to be compared. index = svf_check_tdo_para[i].buffer_offset; is the index of the data in the buffer. Patch in the attachment fix this problem. If it is tested OK, I think this patch can be commited. 2009-04-03 Best Regards, Simon Qian SimonQian([email protected]) ---- www.SimonQian.com 发件人: Johann F. 发送时间: 2009-04-03 16:45:57 收件人: SimonQian 抄送: openocd-development 主题: Re: [Openocd-development] xsvf patch On Thu, 2 Apr 2009 18:22:33 +0800 "SimonQian" <[email protected]> wrote: > Hi, > Attached patch fixs: > 1. call buf_cmp_mask to compare buffer with mask. > 2. remove long lines according to GNU coding standard. > > NOTE: The patch is untested, I don't have XC9572XL to test on. > And I'll prepare a patch for vsllink code according to GNU coding standard. > Hi, The patch make segmentation fault because buf_cmp_mas expect a pointer (*u8). svf.c: 669 > if ((svf_check_tdo_para[i].enabled) && (buf_cmp_mask(svf_tdi_buffer[index], svf_tdo_buffer[index], svf_mask_buffer[index], len))) I cut off [index], then it work with -d3 option, but not without. Is index a byte-position in buffers? Why svf_check_tdo need values svf_check_tdo_para_index and index? regards Johann
svf.patch
Description: Binary data
_______________________________________________ Openocd-development mailing list [email protected] https://lists.berlios.de/mailman/listinfo/openocd-development
