This is an automated email from Gerrit. Spencer Oliver (s...@spen-soft.co.uk) just uploaded a new patch set to Gerrit, which you can find at http://openocd.zylin.com/786
-- gerrit commit 3bacaae3ed6c967b59302ae1db2d1671f3407d71 Author: Spencer Oliver <s...@spen-soft.co.uk> Date: Fri Aug 17 16:34:21 2012 +0100 target fix arm7_9 8/16bit read regression Seems c3074f377c1da33ca8ba8493826e1b52351eebc6 caused a regression that has shown up in the cfi driver. Switch back to using 32bit drscan into a temp variable. Change-Id: I4105bcc8bdd358c904f34e18b9aa14be27e69372 Signed-off-by: Spencer Oliver <s...@spen-soft.co.uk> diff --git a/src/target/arm7tdmi.c b/src/target/arm7tdmi.c index 2721502..2808404 100644 --- a/src/target/arm7tdmi.c +++ b/src/target/arm7tdmi.c @@ -211,6 +211,7 @@ static int arm7tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, { int retval = ERROR_OK; struct scan_field fields[2]; + uint8_t in_buf[4]; retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE); if (retval != ERROR_OK) @@ -223,9 +224,9 @@ static int arm7tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, fields[0].out_value = NULL; fields[0].in_value = NULL; - fields[1].num_bits = size * 8; + fields[1].num_bits = 32; fields[1].out_value = NULL; - fields[1].in_value = in; + fields[1].in_value = in_buf; jtag_add_dr_scan(jtag_info->tap, 2, fields, TAP_DRPAUSE); @@ -233,7 +234,7 @@ static int arm7tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, (jtag_callback_data_t)in, (jtag_callback_data_t)size, (jtag_callback_data_t)be, - (jtag_callback_data_t)in); + (jtag_callback_data_t)in_buf); jtag_add_runtest(0, TAP_DRPAUSE); diff --git a/src/target/arm9tdmi.c b/src/target/arm9tdmi.c index e8ad932..89e8276 100644 --- a/src/target/arm9tdmi.c +++ b/src/target/arm9tdmi.c @@ -263,6 +263,7 @@ int arm9tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, { int retval = ERROR_OK; struct scan_field fields[3]; + uint8_t in_buf[4]; retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE); if (retval != ERROR_OK) @@ -272,9 +273,9 @@ int arm9tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, if (retval != ERROR_OK) return retval; - fields[0].num_bits = size * 8; + fields[0].num_bits = 32; fields[0].out_value = NULL; - fields[0].in_value = in; + fields[0].in_value = in_buf; fields[1].num_bits = 3; fields[1].out_value = NULL; @@ -290,7 +291,7 @@ int arm9tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info, (jtag_callback_data_t)in, (jtag_callback_data_t)size, (jtag_callback_data_t)be, - (jtag_callback_data_t)in); + (jtag_callback_data_t)in_buf); jtag_add_runtest(0, TAP_DRPAUSE); -- ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ OpenOCD-devel mailing list OpenOCD-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openocd-devel