do not use dynamically sized stack arrays, not compatible with embedded OS's
git-svn-id: svn://svn.berlios.de/openocd/trunk@2691 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
parent
58b78818e0
commit
0dcfbec7fb
|
@ -576,7 +576,15 @@ int arm11_run_instr_data_to_core_noack(arm11_common_t * arm11, uint32_t opcode,
|
||||||
arm11_setup_field(arm11, 1, NULL, NULL /*&Ready*/, chain5_fields + 1);
|
arm11_setup_field(arm11, 1, NULL, NULL /*&Ready*/, chain5_fields + 1);
|
||||||
arm11_setup_field(arm11, 1, NULL, NULL, chain5_fields + 2);
|
arm11_setup_field(arm11, 1, NULL, NULL, chain5_fields + 2);
|
||||||
|
|
||||||
uint8_t Readies[count + 1];
|
uint8_t *Readies;
|
||||||
|
int bytes = sizeof(*Readies)*(count + 1);
|
||||||
|
Readies = (uint8_t *) malloc(bytes);
|
||||||
|
if (Readies == NULL)
|
||||||
|
{
|
||||||
|
LOG_ERROR("Out of memory allocating %d bytes", bytes);
|
||||||
|
return ERROR_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
uint8_t * ReadyPos = Readies;
|
uint8_t * ReadyPos = Readies;
|
||||||
|
|
||||||
while (count--)
|
while (count--)
|
||||||
|
@ -603,22 +611,28 @@ int arm11_run_instr_data_to_core_noack(arm11_common_t * arm11, uint32_t opcode,
|
||||||
|
|
||||||
arm11_add_dr_scan_vc(asizeof(chain5_fields), chain5_fields, TAP_DRPAUSE);
|
arm11_add_dr_scan_vc(asizeof(chain5_fields), chain5_fields, TAP_DRPAUSE);
|
||||||
|
|
||||||
CHECK_RETVAL(jtag_execute_queue());
|
int retval = jtag_execute_queue();
|
||||||
|
if (retval == ERROR_OK)
|
||||||
size_t error_count = 0;
|
|
||||||
|
|
||||||
for (size_t i = 0; i < asizeof(Readies); i++)
|
|
||||||
{
|
{
|
||||||
if (Readies[i] != 1)
|
|
||||||
|
size_t error_count = 0;
|
||||||
|
|
||||||
|
for (size_t i = 0; i < asizeof(Readies); i++)
|
||||||
{
|
{
|
||||||
error_count++;
|
if (Readies[i] != 1)
|
||||||
|
{
|
||||||
|
error_count++;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (error_count)
|
||||||
|
LOG_ERROR("Transfer errors " ZU, error_count);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (error_count)
|
free(Readies);
|
||||||
LOG_ERROR("Transfer errors " ZU, error_count);
|
|
||||||
|
|
||||||
return ERROR_OK;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue