remove TAP_SCAN_BYTES macro
Use DIV_ROUND_UP(n, 8) instead of TAP_SCAN_BYTES macro.__archive__
parent
a94748ec6d
commit
0535a92456
|
@ -413,7 +413,7 @@ tap_state_t jtag_debug_state_machine(const void *tms_buf, const void *tdi_buf,
|
|||
tms_buffer = (const uint8_t *)tms_buf;
|
||||
tdi_buffer = (const uint8_t *)tdi_buf;
|
||||
|
||||
tap_bytes = TAP_SCAN_BYTES(tap_bits);
|
||||
tap_bytes = DIV_ROUND_UP(tap_bits, 8);
|
||||
DEBUG_JTAG_IO("TAP/SM: TMS bits: %u (bytes: %u)", tap_bits, tap_bytes);
|
||||
|
||||
tap_out_bits = 0;
|
||||
|
|
|
@ -763,15 +763,16 @@ static int jlink_tap_execute(void)
|
|||
if (!tap_length)
|
||||
return ERROR_OK;
|
||||
|
||||
/* JLink returns an extra NULL in packet when size of in message is a multiple of 64, creates problems with usb comms */
|
||||
/* WARNING This will interfere with tap state counting */
|
||||
while ((TAP_SCAN_BYTES(tap_length)%64) == 0)
|
||||
/* JLink returns an extra NULL in packet when size of incoming
|
||||
* message is a multiple of 64, creates problems with USB comms.
|
||||
* WARNING: This will interfere with tap state counting. */
|
||||
while ((DIV_ROUND_UP(tap_length, 8) % 64) == 0)
|
||||
{
|
||||
jlink_tap_append_step((tap_get_state() == TAP_RESET)?1:0, 0);
|
||||
}
|
||||
|
||||
// number of full bytes (plus one if some would be left over)
|
||||
byte_length = TAP_SCAN_BYTES(tap_length);
|
||||
byte_length = DIV_ROUND_UP(tap_length, 8);
|
||||
|
||||
bool use_jtag3 = jlink_hw_jtag_version >= 3;
|
||||
usb_out_buffer[0] = use_jtag3 ? EMU_CMD_HW_JTAG3 : EMU_CMD_HW_JTAG2;
|
||||
|
@ -808,7 +809,7 @@ static int jlink_tap_execute(void)
|
|||
DEBUG_JTAG_IO("pending scan result, length = %d", length);
|
||||
|
||||
#ifdef _DEBUG_USB_COMMS_
|
||||
jlink_debug_buffer(buffer, TAP_SCAN_BYTES(length));
|
||||
jlink_debug_buffer(buffer, DIV_ROUND_UP(length, 8));
|
||||
#endif
|
||||
|
||||
if (jtag_read_buffer(buffer, command) != ERROR_OK)
|
||||
|
|
|
@ -46,9 +46,6 @@
|
|||
*/
|
||||
#define DIM(x) (sizeof(x)/sizeof((x)[0]))
|
||||
|
||||
/** Calculate the number of bytes required to hold @a n TAP scan bits */
|
||||
#define TAP_SCAN_BYTES(n) DIV_ROUND_UP(n, 8)
|
||||
|
||||
/*-----</Macros>-------------------------------------------------*/
|
||||
|
||||
/**
|
||||
|
|
|
@ -58,7 +58,7 @@ static inline void interface_jtag_add_scan_check_alloc(struct scan_field *field)
|
|||
/* We're executing this synchronously, so try to use local storage. */
|
||||
if (field->num_bits > 32)
|
||||
{
|
||||
unsigned num_bytes = TAP_SCAN_BYTES(field->num_bits);
|
||||
unsigned num_bytes = DIV_ROUND_UP(field->num_bits, 8);
|
||||
field->in_value = (uint8_t *)malloc(num_bytes);
|
||||
field->allocated = 1;
|
||||
}
|
||||
|
@ -77,7 +77,7 @@ static inline void interface_jtag_alloc_in_value32(struct scan_field *field)
|
|||
|
||||
static inline void interface_jtag_add_scan_check_alloc(struct scan_field *field)
|
||||
{
|
||||
unsigned num_bytes = TAP_SCAN_BYTES(field->num_bits);
|
||||
unsigned num_bytes = DIV_ROUND_UP(field->num_bits, 8);
|
||||
field->in_value = (uint8_t *)cmd_queue_alloc(num_bytes);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue