Remove whitespace that occurs before ')'.

- Replace '[ \t]*[)]' with ')'.


git-svn-id: svn://svn.berlios.de/openocd/trunk@2377 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
zwelch 2009-06-23 22:47:42 +00:00
parent f90d8fa45f
commit dc575dc5bf
72 changed files with 1016 additions and 1016 deletions

View File

@ -257,7 +257,7 @@ MTAB_ENTRY(romfs_mte1,
"/rom", "/rom",
"romfs", "romfs",
"", "",
(CYG_ADDRWORD) &filedata[0] ); (CYG_ADDRWORD) &filedata[0]);
#endif #endif
void openocd_sleep_prelude(void) void openocd_sleep_prelude(void)
@ -1156,7 +1156,7 @@ FSTAB_ENTRY(tftpfs_fste, "tftpfs", 0,
// "romfs", // FIlesystem type // "romfs", // FIlesystem type
// "", // hardware device // "", // hardware device
// (CYG_ADDRWORD) CYGNUM_FS_ROM_BASE_ADDRESS // Address in ROM // (CYG_ADDRWORD) CYGNUM_FS_ROM_BASE_ADDRESS // Address in ROM
// ); //);
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------

View File

@ -399,7 +399,7 @@ static int aduc702x_probe(struct flash_bank_s *bank)
static int aduc702x_info(struct flash_bank_s *bank, char *buf, int buf_size) static int aduc702x_info(struct flash_bank_s *bank, char *buf, int buf_size)
{ {
snprintf(buf, buf_size, "aduc702x flash driver info" ); snprintf(buf, buf_size, "aduc702x flash driver info");
return ERROR_OK; return ERROR_OK;
} }

View File

@ -187,7 +187,7 @@ static void at91sam7_read_clock_info(flash_bank_t *bank)
} }
/* Prescaler adjust */ /* Prescaler adjust */
if ((((mckr & PMC_MCKR_PRES) >> 2) == 7) || (tmp == 0) ) if ((((mckr & PMC_MCKR_PRES) >> 2) == 7) || (tmp == 0))
{ {
at91sam7_info->mck_valid = 0; at91sam7_info->mck_valid = 0;
at91sam7_info->mck_freq = 0; at91sam7_info->mck_freq = 0;
@ -613,7 +613,7 @@ static int at91sam7_read_part_info(struct flash_bank_s *bank)
at91sam7_protect_check(t_bank); at91sam7_protect_check(t_bank);
} }
LOG_DEBUG("nvptyp: 0x%3.3x, arch: 0x%4.4x", at91sam7_info->cidr_nvptyp, at91sam7_info->cidr_arch ); LOG_DEBUG("nvptyp: 0x%3.3x, arch: 0x%4.4x", at91sam7_info->cidr_nvptyp, at91sam7_info->cidr_arch);
return ERROR_OK; return ERROR_OK;
} }

View File

@ -323,7 +323,7 @@ static int avrf_probe(struct flash_bank_s *bank)
return ERROR_FAIL; return ERROR_FAIL;
} }
LOG_INFO("device id = 0x%08" PRIx32 "", device_id ); LOG_INFO("device id = 0x%08" PRIx32 "", device_id);
if (EXTRACT_MFG(device_id) != 0x1F) if (EXTRACT_MFG(device_id) != 0x1F)
{ {
LOG_ERROR("0x%" PRIx32 " is invalid Manufacturer for avr, 0x%X is expected", EXTRACT_MFG(device_id), 0x1F); LOG_ERROR("0x%" PRIx32 " is invalid Manufacturer for avr, 0x%X is expected", EXTRACT_MFG(device_id), 0x1F);
@ -402,7 +402,7 @@ static int avrf_info(struct flash_bank_s *bank, char *buf, int buf_size)
return ERROR_FAIL; return ERROR_FAIL;
} }
LOG_INFO("device id = 0x%08" PRIx32 "", device_id ); LOG_INFO("device id = 0x%08" PRIx32 "", device_id);
if (EXTRACT_MFG(device_id) != 0x1F) if (EXTRACT_MFG(device_id) != 0x1F)
{ {
LOG_ERROR("0x%" PRIx32 " is invalid Manufacturer for avr, 0x%X is expected", EXTRACT_MFG(device_id), 0x1F); LOG_ERROR("0x%" PRIx32 " is invalid Manufacturer for avr, 0x%X is expected", EXTRACT_MFG(device_id), 0x1F);

View File

@ -214,7 +214,7 @@ static uint16_t cfi_query_u16(flash_bank_t *bank, int sector, uint32_t offset)
uint8_t i; uint8_t i;
for (i = 0;i < 2;i++) for (i = 0;i < 2;i++)
target_read_memory(target, flash_address(bank, sector, offset + i), bank->bus_width, 1, target_read_memory(target, flash_address(bank, sector, offset + i), bank->bus_width, 1,
&data[i*bank->bus_width] ); &data[i*bank->bus_width]);
} }
else else
target_read_memory(target, flash_address(bank, sector, offset), bank->bus_width, 2, data); target_read_memory(target, flash_address(bank, sector, offset), bank->bus_width, 2, data);
@ -236,7 +236,7 @@ static uint32_t cfi_query_u32(flash_bank_t *bank, int sector, uint32_t offset)
uint8_t i; uint8_t i;
for (i = 0;i < 4;i++) for (i = 0;i < 4;i++)
target_read_memory(target, flash_address(bank, sector, offset + i), bank->bus_width, 1, target_read_memory(target, flash_address(bank, sector, offset + i), bank->bus_width, 1,
&data[i*bank->bus_width] ); &data[i*bank->bus_width]);
} }
else else
target_read_memory(target, flash_address(bank, sector, offset), bank->bus_width, 4, data); target_read_memory(target, flash_address(bank, sector, offset), bank->bus_width, 4, data);
@ -1154,7 +1154,7 @@ static int cfi_intel_write_block(struct flash_bank_s *bank, uint8_t *buffer, uin
/* flash write code */ /* flash write code */
if (!cfi_info->write_algorithm) if (!cfi_info->write_algorithm)
{ {
if (target_code_size > sizeof(target_code) ) if (target_code_size > sizeof(target_code))
{ {
LOG_WARNING("Internal error - target code buffer to small. Increase CFI_MAX_INTEL_CODESIZE and recompile."); LOG_WARNING("Internal error - target code buffer to small. Increase CFI_MAX_INTEL_CODESIZE and recompile.");
return ERROR_TARGET_RESOURCE_NOT_AVAILABLE; return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
@ -1206,7 +1206,7 @@ static int cfi_intel_write_block(struct flash_bank_s *bank, uint8_t *buffer, uin
busy_pattern_val = cfi_command_val(bank, 0x80); busy_pattern_val = cfi_command_val(bank, 0x80);
error_pattern_val = cfi_command_val(bank, 0x7e); error_pattern_val = cfi_command_val(bank, 0x7e);
LOG_INFO("Using target buffer at 0x%08" PRIx32 " and of size 0x%04" PRIx32, source->address, buffer_size ); LOG_INFO("Using target buffer at 0x%08" PRIx32 " and of size 0x%04" PRIx32, source->address, buffer_size);
/* Programming main loop */ /* Programming main loop */
while (count > 0) while (count > 0)
@ -1227,7 +1227,7 @@ static int cfi_intel_write_block(struct flash_bank_s *bank, uint8_t *buffer, uin
buf_set_u32(reg_params[5].value, 0, 32, busy_pattern_val); buf_set_u32(reg_params[5].value, 0, 32, busy_pattern_val);
buf_set_u32(reg_params[6].value, 0, 32, error_pattern_val); buf_set_u32(reg_params[6].value, 0, 32, error_pattern_val);
LOG_INFO("Write 0x%04" PRIx32 " bytes to flash at 0x%08" PRIx32 , thisrun_count, address ); LOG_INFO("Write 0x%04" PRIx32 " bytes to flash at 0x%08" PRIx32 , thisrun_count, address);
/* Execute algorithm, assume breakpoint for last instruction */ /* Execute algorithm, assume breakpoint for last instruction */
retval = target_run_algorithm(target, 0, NULL, 7, reg_params, retval = target_run_algorithm(target, 0, NULL, 7, reg_params,
@ -1883,7 +1883,7 @@ int cfi_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint3
write_p = address & ~(bank->bus_width - 1); write_p = address & ~(bank->bus_width - 1);
if ((align = address - write_p) != 0) if ((align = address - write_p) != 0)
{ {
LOG_INFO("Fixup %d unaligned head bytes", align ); LOG_INFO("Fixup %d unaligned head bytes", align);
for (i = 0; i < bank->bus_width; i++) for (i = 0; i < bank->bus_width; i++)
current_word[i] = 0; current_word[i] = 0;
@ -2029,7 +2029,7 @@ int cfi_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint3
/* handle unaligned tail bytes */ /* handle unaligned tail bytes */
if (count > 0) if (count > 0)
{ {
LOG_INFO("Fixup %" PRId32 " unaligned tail bytes", count ); LOG_INFO("Fixup %" PRId32 " unaligned tail bytes", count);
copy_p = write_p; copy_p = write_p;
for (i = 0; i < bank->bus_width; i++) for (i = 0; i < bank->bus_width; i++)

View File

@ -675,7 +675,7 @@ static int davinci_nand_device_command(struct command_context_s *cmd_ctx,
if (aemif == 0x01e00000 /* dm6446, dm357 */ if (aemif == 0x01e00000 /* dm6446, dm357 */
|| aemif == 0x01e10000 /* dm335, dm355 */ || aemif == 0x01e10000 /* dm335, dm355 */
|| aemif == 0x01d10000 /* dm365 */ || aemif == 0x01d10000 /* dm365 */
) { ) {
if (chip < 0x0200000 || chip >= 0x0a000000) { if (chip < 0x0200000 || chip >= 0x0a000000) {
LOG_ERROR("NAND address %08lx out of range?", chip); LOG_ERROR("NAND address %08lx out of range?", chip);
goto fail; goto fail;

View File

@ -281,7 +281,7 @@ static int eCosBoard_erase(ecosflash_flash_bank_t *info, uint32_t address, uint3
0, 0,
&flashErr, &flashErr,
timeout timeout
); );
if (retval != ERROR_OK) if (retval != ERROR_OK)
return retval; return retval;

View File

@ -793,7 +793,7 @@ static int handle_flash_fill_command(struct command_context_s *cmd_ctx, char *cm
for (wrote = 0; wrote < (count*wordsize); wrote += cur_size) for (wrote = 0; wrote < (count*wordsize); wrote += cur_size)
{ {
cur_size = MIN((count*wordsize - wrote), sizeof(chunk) ); cur_size = MIN((count*wordsize - wrote), sizeof(chunk));
flash_bank_t *bank; flash_bank_t *bank;
bank = get_flash_bank_by_addr(target, address); bank = get_flash_bank_by_addr(target, address);
if (bank == NULL) if (bank == NULL)
@ -994,7 +994,7 @@ int flash_erase_address_range(target_t *target, uint32_t addr, uint32_t length)
} }
} }
if (first == -1 || last == -1 ) if (first == -1 || last == -1)
return ERROR_OK; return ERROR_OK;
return flash_driver_erase(c, first, last); return flash_driver_erase(c, first, last);
@ -1076,7 +1076,7 @@ int flash_write(target_t *target, image_t *image, uint32_t *written, int erase)
run_size += pad_bytes; run_size += pad_bytes;
padding[section_last] = 0; padding[section_last] = 0;
LOG_INFO("Padding image section %d with %d bytes", section_last-1, pad_bytes ); LOG_INFO("Padding image section %d with %d bytes", section_last-1, pad_bytes);
} }
/* fit the run into bank constraints */ /* fit the run into bank constraints */
@ -1127,7 +1127,7 @@ int flash_write(target_t *target, image_t *image, uint32_t *written, int erase)
if (erase) if (erase)
{ {
/* calculate and erase sectors */ /* calculate and erase sectors */
retval = flash_erase_address_range(target, run_address, run_size ); retval = flash_erase_address_range(target, run_address, run_size);
} }
if (retval == ERROR_OK) if (retval == ERROR_OK)

View File

@ -415,7 +415,7 @@ static int mg_probe_cmd(struct command_context_s *cmd_ctx, char *cmd, char **arg
if (ret == ERROR_OK) { if (ret == ERROR_OK) {
command_print(cmd_ctx, "mflash (total %" PRIu32 " sectors) found at 0x%8.8" PRIx32 "", command_print(cmd_ctx, "mflash (total %" PRIu32 " sectors) found at 0x%8.8" PRIx32 "",
mflash_bank->drv_info->tot_sects, mflash_bank->base ); mflash_bank->drv_info->tot_sects, mflash_bank->base);
} }
return ret; return ret;
@ -429,7 +429,7 @@ static int mg_mflash_do_read_sects(void *buff, uint32_t sect_num, uint32_t sect_
uint8_t *buff_ptr = buff; uint8_t *buff_ptr = buff;
duration_t duration; duration_t duration;
if ((ret = mg_dsk_io_cmd(sect_num, sect_cnt, mg_io_cmd_read)) != ERROR_OK ) if ((ret = mg_dsk_io_cmd(sect_num, sect_cnt, mg_io_cmd_read)) != ERROR_OK)
return ret; return ret;
address = mflash_bank->base + MG_BUFFER_OFFSET; address = mflash_bank->base + MG_BUFFER_OFFSET;
@ -502,7 +502,7 @@ static int mg_mflash_do_write_sects(void *buff, uint32_t sect_num, uint32_t sect
uint8_t *buff_ptr = buff; uint8_t *buff_ptr = buff;
duration_t duration; duration_t duration;
if ((ret = mg_dsk_io_cmd(sect_num, sect_cnt, cmd)) != ERROR_OK ) if ((ret = mg_dsk_io_cmd(sect_num, sect_cnt, cmd)) != ERROR_OK)
return ret; return ret;
address = mflash_bank->base + MG_BUFFER_OFFSET; address = mflash_bank->base + MG_BUFFER_OFFSET;

View File

@ -736,7 +736,7 @@ static int nand_read_plain(struct nand_device_s *device, uint32_t address, uint8
page = malloc(device->page_size); page = malloc(device->page_size);
while (data_size > 0 ) while (data_size > 0)
{ {
uint32_t thisrun_size = (data_size > device->page_size) ? device->page_size : data_size; uint32_t thisrun_size = (data_size > device->page_size) ? device->page_size : data_size;
uint32_t page_address; uint32_t page_address;
@ -773,7 +773,7 @@ static int nand_write_plain(struct nand_device_s *device, uint32_t address, uint
page = malloc(device->page_size); page = malloc(device->page_size);
while (data_size > 0 ) while (data_size > 0)
{ {
uint32_t thisrun_size = (data_size > device->page_size) ? device->page_size : data_size; uint32_t thisrun_size = (data_size > device->page_size) ? device->page_size : data_size;
uint32_t page_address; uint32_t page_address;

View File

@ -26,10 +26,10 @@ uint32 dcc_rd(void)
volatile uint32 dcc_reg; volatile uint32 dcc_reg;
do { do {
asm volatile ("mrc p14, 0, %0, C0, C0" : "=r" (dcc_reg) : ); asm volatile ("mrc p14, 0, %0, C0, C0" : "=r" (dcc_reg) :);
} while ((dcc_reg&1) == 0); } while ((dcc_reg&1) == 0);
asm volatile ("mrc p14, 0, %0, C1, C0" : "=r" (dcc_reg) : ); asm volatile ("mrc p14, 0, %0, C1, C0" : "=r" (dcc_reg) :);
return dcc_reg; return dcc_reg;
} }
@ -40,7 +40,7 @@ int dcc_wr(uint32 data)
volatile uint32 dcc_reg; volatile uint32 dcc_reg;
do { do {
asm volatile ("mrc p14, 0, %0, C0, C0" : "=r" (dcc_reg) : ); asm volatile ("mrc p14, 0, %0, C0, C0" : "=r" (dcc_reg) :);
/* operation controled by master, cancel operation /* operation controled by master, cancel operation
upon reception of data for immediate response */ upon reception of data for immediate response */
if (dcc_reg&1) return -1; if (dcc_reg&1) return -1;

View File

@ -148,11 +148,11 @@ static uint32_t pic32mx_wait_status_busy(flash_bank_t *bank, int timeout)
/* wait for busy to clear */ /* wait for busy to clear */
while (((status = pic32mx_get_flash_status(bank)) & NVMCON_NVMWR) && (timeout-- > 0)) while (((status = pic32mx_get_flash_status(bank)) & NVMCON_NVMWR) && (timeout-- > 0))
{ {
LOG_DEBUG("status: 0x%" PRIx32, status ); LOG_DEBUG("status: 0x%" PRIx32, status);
alive_sleep(1); alive_sleep(1);
} }
if (timeout <= 0) if (timeout <= 0)
LOG_DEBUG("timeout: status: 0x%" PRIx32, status ); LOG_DEBUG("timeout: status: 0x%" PRIx32, status);
return status; return status;
} }
@ -229,9 +229,9 @@ static int pic32mx_erase(struct flash_bank_s *bank, int first, int last)
{ {
LOG_DEBUG("Erasing entire program flash"); LOG_DEBUG("Erasing entire program flash");
status = pic32mx_nvm_exec(bank, NVMCON_OP_PFM_ERASE, 50); status = pic32mx_nvm_exec(bank, NVMCON_OP_PFM_ERASE, 50);
if (status & NVMCON_NVMERR ) if (status & NVMCON_NVMERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & NVMCON_LVDERR ) if (status & NVMCON_LVDERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
return ERROR_OK; return ERROR_OK;
} }
@ -245,9 +245,9 @@ static int pic32mx_erase(struct flash_bank_s *bank, int first, int last)
status = pic32mx_nvm_exec(bank, NVMCON_OP_PAGE_ERASE, 10); status = pic32mx_nvm_exec(bank, NVMCON_OP_PAGE_ERASE, 10);
if (status & NVMCON_NVMERR ) if (status & NVMCON_NVMERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & NVMCON_LVDERR ) if (status & NVMCON_LVDERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
bank->sectors[i].is_erased = 1; bank->sectors[i].is_erased = 1;
} }
@ -313,7 +313,7 @@ static int pic32mx_protect(struct flash_bank_s *bank, int set, int first, int la
reg = (i / pic32mx_info->ppage_size) / 8; reg = (i / pic32mx_info->ppage_size) / 8;
bit = (i / pic32mx_info->ppage_size) - (reg * 8); bit = (i / pic32mx_info->ppage_size) - (reg * 8);
if (set ) if (set)
prot_reg[reg] &= ~(1 << bit); prot_reg[reg] &= ~(1 << bit);
else else
prot_reg[reg] |= (1 << bit); prot_reg[reg] |= (1 << bit);
@ -327,7 +327,7 @@ static int pic32mx_protect(struct flash_bank_s *bank, int set, int first, int la
reg = (i / pic32mx_info->ppage_size) / 8; reg = (i / pic32mx_info->ppage_size) / 8;
bit = (i / pic32mx_info->ppage_size) - (reg * 8); bit = (i / pic32mx_info->ppage_size) - (reg * 8);
if (set ) if (set)
prot_reg[reg] &= ~(1 << bit); prot_reg[reg] &= ~(1 << bit);
else else
prot_reg[reg] |= (1 << bit); prot_reg[reg] |= (1 << bit);
@ -434,12 +434,12 @@ static int pic32mx_write_block(struct flash_bank_s *bank, uint8_t *buffer, uint3
} }
#endif #endif
status = pic32mx_write_row(bank, address, source->address); status = pic32mx_write_row(bank, address, source->address);
if (status & NVMCON_NVMERR ) { if (status & NVMCON_NVMERR) {
LOG_ERROR("Flash write error NVMERR (status = 0x%08" PRIx32 ")", status); LOG_ERROR("Flash write error NVMERR (status = 0x%08" PRIx32 ")", status);
retval = ERROR_FLASH_OPERATION_FAILED; retval = ERROR_FLASH_OPERATION_FAILED;
break; break;
} }
if (status & NVMCON_LVDERR ) { if (status & NVMCON_LVDERR) {
LOG_ERROR("Flash write error LVDERR (status = 0x%08" PRIx32 ")", status); LOG_ERROR("Flash write error LVDERR (status = 0x%08" PRIx32 ")", status);
retval = ERROR_FLASH_OPERATION_FAILED; retval = ERROR_FLASH_OPERATION_FAILED;
break; break;
@ -458,12 +458,12 @@ static int pic32mx_write_block(struct flash_bank_s *bank, uint8_t *buffer, uint3
memcpy(&value, buffer, sizeof(uint32_t)); memcpy(&value, buffer, sizeof(uint32_t));
uint32_t status = pic32mx_write_word(bank, address, value); uint32_t status = pic32mx_write_word(bank, address, value);
if (status & NVMCON_NVMERR ) { if (status & NVMCON_NVMERR) {
LOG_ERROR("Flash write error NVMERR (status = 0x%08" PRIx32 ")", status); LOG_ERROR("Flash write error NVMERR (status = 0x%08" PRIx32 ")", status);
retval = ERROR_FLASH_OPERATION_FAILED; retval = ERROR_FLASH_OPERATION_FAILED;
break; break;
} }
if (status & NVMCON_LVDERR ) { if (status & NVMCON_LVDERR) {
LOG_ERROR("Flash write error LVDERR (status = 0x%08" PRIx32 ")", status); LOG_ERROR("Flash write error LVDERR (status = 0x%08" PRIx32 ")", status);
retval = ERROR_FLASH_OPERATION_FAILED; retval = ERROR_FLASH_OPERATION_FAILED;
break; break;
@ -564,9 +564,9 @@ static int pic32mx_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t of
memcpy(&value, buffer + bytes_written, sizeof(uint32_t)); memcpy(&value, buffer + bytes_written, sizeof(uint32_t));
status = pic32mx_write_word(bank, address, value); status = pic32mx_write_word(bank, address, value);
if (status & NVMCON_NVMERR ) if (status & NVMCON_NVMERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & NVMCON_LVDERR ) if (status & NVMCON_LVDERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
bytes_written += 4; bytes_written += 4;
@ -580,9 +580,9 @@ static int pic32mx_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t of
memcpy(&value, buffer + bytes_written, bytes_remaining); memcpy(&value, buffer + bytes_written, bytes_remaining);
status = pic32mx_write_word(bank, address, value); status = pic32mx_write_word(bank, address, value);
if (status & NVMCON_NVMERR ) if (status & NVMCON_NVMERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & NVMCON_LVDERR ) if (status & NVMCON_LVDERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
@ -607,10 +607,10 @@ static int pic32mx_probe(struct flash_bank_s *bank)
device_id, device_id,
(unsigned)((device_id >> 1)&0x7ff), (unsigned)((device_id >> 1)&0x7ff),
(unsigned)((device_id >> 12)&0xff), (unsigned)((device_id >> 12)&0xff),
(unsigned)((device_id >> 20)&0xfff) ); (unsigned)((device_id >> 20)&0xfff));
if (((device_id >> 1)&0x7ff) != PIC32MX_MANUF_ID) { if (((device_id >> 1)&0x7ff) != PIC32MX_MANUF_ID) {
LOG_WARNING("Cannot identify target as a PIC32MX family." ); LOG_WARNING("Cannot identify target as a PIC32MX family.");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
@ -626,7 +626,7 @@ static int pic32mx_probe(struct flash_bank_s *bank)
break; break;
} }
if (pic32mx_devs[i].name == NULL) { if (pic32mx_devs[i].name == NULL) {
LOG_WARNING("Cannot identify target as a PIC32MX family." ); LOG_WARNING("Cannot identify target as a PIC32MX family.");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
} }
@ -646,7 +646,7 @@ static int pic32mx_probe(struct flash_bank_s *bank)
} }
#endif #endif
LOG_INFO("flash size = %dkbytes", num_pages ); LOG_INFO("flash size = %dkbytes", num_pages);
/* calculate numbers of pages */ /* calculate numbers of pages */
num_pages /= (page_size / 1024); num_pages /= (page_size / 1024);
@ -847,13 +847,13 @@ static int pic32mx_chip_erase(struct flash_bank_s *bank)
target_write_u32(target, PIC32MX_FLASH_CR, FLASH_LOCK); target_write_u32(target, PIC32MX_FLASH_CR, FLASH_LOCK);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
{ {
LOG_ERROR("pic32mx device protected"); LOG_ERROR("pic32mx device protected");
return ERROR_OK; return ERROR_OK;
} }
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
{ {
LOG_ERROR("pic32mx device programming failed"); LOG_ERROR("pic32mx device programming failed");
return ERROR_OK; return ERROR_OK;
@ -931,9 +931,9 @@ static int pic32mx_handle_pgm_word_command(struct command_context_s *cmd_ctx, ch
res = ERROR_OK; res = ERROR_OK;
status = pic32mx_write_word(bank, address, value); status = pic32mx_write_word(bank, address, value);
if (status & NVMCON_NVMERR ) if (status & NVMCON_NVMERR)
res = ERROR_FLASH_OPERATION_FAILED; res = ERROR_FLASH_OPERATION_FAILED;
if (status & NVMCON_LVDERR ) if (status & NVMCON_LVDERR)
res = ERROR_FLASH_OPERATION_FAILED; res = ERROR_FLASH_OPERATION_FAILED;
if (res == ERROR_OK) if (res == ERROR_OK)

View File

@ -182,9 +182,9 @@ static int stm32x_erase_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* clear readout protection and complementary option bytes /* clear readout protection and complementary option bytes
@ -218,9 +218,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* write protection byte 1 */ /* write protection byte 1 */
@ -228,9 +228,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* write protection byte 2 */ /* write protection byte 2 */
@ -238,9 +238,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* write protection byte 3 */ /* write protection byte 3 */
@ -248,9 +248,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* write protection byte 4 */ /* write protection byte 4 */
@ -258,9 +258,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
/* write readout protection bit */ /* write readout protection bit */
@ -268,9 +268,9 @@ static int stm32x_write_options(struct flash_bank_s *bank)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
target_write_u32(target, STM32_FLASH_CR, FLASH_LOCK); target_write_u32(target, STM32_FLASH_CR, FLASH_LOCK);
@ -378,9 +378,9 @@ static int stm32x_erase(struct flash_bank_s *bank, int first, int last)
status = stm32x_wait_status_busy(bank, 10); status = stm32x_wait_status_busy(bank, 10);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
bank->sectors[i].is_erased = 1; bank->sectors[i].is_erased = 1;
} }
@ -445,7 +445,7 @@ static int stm32x_protect(struct flash_bank_s *bank, int set, int first, int las
reg = (i / stm32x_info->ppage_size) / 8; reg = (i / stm32x_info->ppage_size) / 8;
bit = (i / stm32x_info->ppage_size) - (reg * 8); bit = (i / stm32x_info->ppage_size) - (reg * 8);
if (set ) if (set)
prot_reg[reg] &= ~(1 << bit); prot_reg[reg] &= ~(1 << bit);
else else
prot_reg[reg] |= (1 << bit); prot_reg[reg] |= (1 << bit);
@ -459,7 +459,7 @@ static int stm32x_protect(struct flash_bank_s *bank, int set, int first, int las
reg = (i / stm32x_info->ppage_size) / 8; reg = (i / stm32x_info->ppage_size) / 8;
bit = (i / stm32x_info->ppage_size) - (reg * 8); bit = (i / stm32x_info->ppage_size) - (reg * 8);
if (set ) if (set)
prot_reg[reg] &= ~(1 << bit); prot_reg[reg] &= ~(1 << bit);
else else
prot_reg[reg] |= (1 << bit); prot_reg[reg] |= (1 << bit);
@ -658,12 +658,12 @@ static int stm32x_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t off
status = stm32x_wait_status_busy(bank, 5); status = stm32x_wait_status_busy(bank, 5);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
{ {
LOG_ERROR("flash memory not erased before writing"); LOG_ERROR("flash memory not erased before writing");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
{ {
LOG_ERROR("flash memory write protected"); LOG_ERROR("flash memory write protected");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
@ -684,12 +684,12 @@ static int stm32x_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t off
status = stm32x_wait_status_busy(bank, 5); status = stm32x_wait_status_busy(bank, 5);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
{ {
LOG_ERROR("flash memory not erased before writing"); LOG_ERROR("flash memory not erased before writing");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
{ {
LOG_ERROR("flash memory write protected"); LOG_ERROR("flash memory write protected");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
@ -720,7 +720,7 @@ static int stm32x_probe(struct flash_bank_s *bank)
/* read stm32 device id register */ /* read stm32 device id register */
target_read_u32(target, 0xE0042000, &device_id); target_read_u32(target, 0xE0042000, &device_id);
LOG_INFO("device id = 0x%08" PRIx32 "", device_id ); LOG_INFO("device id = 0x%08" PRIx32 "", device_id);
/* get flash size from target */ /* get flash size from target */
if (target_read_u16(target, 0x1FFFF7E0, &num_pages) != ERROR_OK) if (target_read_u16(target, 0x1FFFF7E0, &num_pages) != ERROR_OK)
@ -740,7 +740,7 @@ static int stm32x_probe(struct flash_bank_s *bank)
if (num_pages == 0xffff) if (num_pages == 0xffff)
{ {
/* number of sectors incorrect on revA */ /* number of sectors incorrect on revA */
LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 128k flash" ); LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 128k flash");
num_pages = 128; num_pages = 128;
} }
} }
@ -755,7 +755,7 @@ static int stm32x_probe(struct flash_bank_s *bank)
if (num_pages == 0xffff) if (num_pages == 0xffff)
{ {
/* number of sectors incorrect on revA */ /* number of sectors incorrect on revA */
LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 32k flash" ); LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 32k flash");
num_pages = 32; num_pages = 32;
} }
} }
@ -770,7 +770,7 @@ static int stm32x_probe(struct flash_bank_s *bank)
if (num_pages == 0xffff) if (num_pages == 0xffff)
{ {
/* number of sectors incorrect on revZ */ /* number of sectors incorrect on revZ */
LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 512k flash" ); LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 512k flash");
num_pages = 512; num_pages = 512;
} }
} }
@ -785,17 +785,17 @@ static int stm32x_probe(struct flash_bank_s *bank)
if (num_pages == 0xffff) if (num_pages == 0xffff)
{ {
/* number of sectors incorrect on revZ */ /* number of sectors incorrect on revZ */
LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 256k flash" ); LOG_WARNING("STM32 flash size failed, probe inaccurate - assuming 256k flash");
num_pages = 256; num_pages = 256;
} }
} }
else else
{ {
LOG_WARNING("Cannot identify target as a STM32 family." ); LOG_WARNING("Cannot identify target as a STM32 family.");
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
} }
LOG_INFO("flash size = %dkbytes", num_pages ); LOG_INFO("flash size = %dkbytes", num_pages);
/* calculate numbers of pages */ /* calculate numbers of pages */
num_pages /= (page_size / 1024); num_pages /= (page_size / 1024);
@ -1188,13 +1188,13 @@ static int stm32x_mass_erase(struct flash_bank_s *bank)
target_write_u32(target, STM32_FLASH_CR, FLASH_LOCK); target_write_u32(target, STM32_FLASH_CR, FLASH_LOCK);
if (status & FLASH_WRPRTERR ) if (status & FLASH_WRPRTERR)
{ {
LOG_ERROR("stm32x device protected"); LOG_ERROR("stm32x device protected");
return ERROR_OK; return ERROR_OK;
} }
if (status & FLASH_PGERR ) if (status & FLASH_PGERR)
{ {
LOG_ERROR("stm32x device programming failed"); LOG_ERROR("stm32x device programming failed");
return ERROR_OK; return ERROR_OK;

View File

@ -634,7 +634,7 @@ static int str7x_handle_part_id_command(struct command_context_s *cmd_ctx, char
static int str7x_info(struct flash_bank_s *bank, char *buf, int buf_size) static int str7x_info(struct flash_bank_s *bank, char *buf, int buf_size)
{ {
snprintf(buf, buf_size, "str7x flash driver info" ); snprintf(buf, buf_size, "str7x flash driver info");
return ERROR_OK; return ERROR_OK;
} }

View File

@ -305,7 +305,7 @@ static int str9x_erase(struct flash_bank_s *bank, int first, int last)
{ {
return retval; return retval;
} }
if (status & 0x80 ) if (status & 0x80)
break; break;
alive_sleep(1); alive_sleep(1);
} }
@ -327,7 +327,7 @@ static int str9x_erase(struct flash_bank_s *bank, int first, int last)
return retval; return retval;
} }
if (status & 0x22 ) if (status & 0x22)
{ {
LOG_ERROR("error erasing flash bank, status: 0x%x", status); LOG_ERROR("error erasing flash bank, status: 0x%x", status);
return ERROR_FLASH_OPERATION_FAILED; return ERROR_FLASH_OPERATION_FAILED;
@ -365,7 +365,7 @@ static int str9x_protect(struct flash_bank_s *bank,
adr = bank->base + bank->sectors[i].offset; adr = bank->base + bank->sectors[i].offset;
target_write_u16(target, adr, 0x60); target_write_u16(target, adr, 0x60);
if (set ) if (set)
target_write_u16(target, adr, 0x01); target_write_u16(target, adr, 0x01);
else else
target_write_u16(target, adr, 0xD0); target_write_u16(target, adr, 0xD0);
@ -578,7 +578,7 @@ static int str9x_write(struct flash_bank_s *bank,
for (timeout = 0; timeout < 1000; timeout++) for (timeout = 0; timeout < 1000; timeout++)
{ {
target_read_u8(target, bank_adr, &status); target_read_u8(target, bank_adr, &status);
if (status & 0x80 ) if (status & 0x80)
break; break;
alive_sleep(1); alive_sleep(1);
} }
@ -627,7 +627,7 @@ static int str9x_write(struct flash_bank_s *bank,
for (timeout = 0; timeout < 1000; timeout++) for (timeout = 0; timeout < 1000; timeout++)
{ {
target_read_u8(target, bank_adr, &status); target_read_u8(target, bank_adr, &status);
if (status & 0x80 ) if (status & 0x80)
break; break;
alive_sleep(1); alive_sleep(1);
} }
@ -665,7 +665,7 @@ static int str9x_handle_part_id_command(struct command_context_s *cmd_ctx,
static int str9x_info(struct flash_bank_s *bank, char *buf, int buf_size) static int str9x_info(struct flash_bank_s *bank, char *buf, int buf_size)
{ {
snprintf(buf, buf_size, "str9x flash driver info" ); snprintf(buf, buf_size, "str9x flash driver info");
return ERROR_OK; return ERROR_OK;
} }

View File

@ -101,7 +101,7 @@ static int str9xpec_register_commands(struct command_context_s *cmd_ctx)
int str9xpec_set_instr(jtag_tap_t *tap, uint32_t new_instr, tap_state_t end_state) int str9xpec_set_instr(jtag_tap_t *tap, uint32_t new_instr, tap_state_t end_state)
{ {
if (tap == NULL ){ if (tap == NULL){
return ERROR_TARGET_INVALID; return ERROR_TARGET_INVALID;
} }
@ -349,7 +349,7 @@ static int str9xpec_blank_check(struct flash_bank_s *bank, int first, int last)
tap = str9xpec_info->tap; tap = str9xpec_info->tap;
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
str9xpec_isc_enable(bank ); str9xpec_isc_enable(bank);
} }
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
@ -438,7 +438,7 @@ static int str9xpec_erase_area(struct flash_bank_s *bank, int first, int last)
tap = str9xpec_info->tap; tap = str9xpec_info->tap;
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
str9xpec_isc_enable(bank ); str9xpec_isc_enable(bank);
} }
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
@ -518,7 +518,7 @@ static int str9xpec_lock_device(struct flash_bank_s *bank)
tap = str9xpec_info->tap; tap = str9xpec_info->tap;
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
str9xpec_isc_enable(bank ); str9xpec_isc_enable(bank);
} }
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
@ -575,7 +575,7 @@ static int str9xpec_protect(struct flash_bank_s *bank, int set, int first, int l
/* last bank: 0xFF signals a full device protect */ /* last bank: 0xFF signals a full device protect */
if (last == 0xFF) if (last == 0xFF)
{ {
if (set ) if (set)
{ {
status = str9xpec_lock_device(bank); status = str9xpec_lock_device(bank);
} }
@ -589,7 +589,7 @@ static int str9xpec_protect(struct flash_bank_s *bank, int set, int first, int l
{ {
for (i = first; i <= last; i++) for (i = first; i <= last; i++)
{ {
if (set ) if (set)
buf_set_u32(str9xpec_info->options, str9xpec_info->sector_bits[i], 1, 1); buf_set_u32(str9xpec_info->options, str9xpec_info->sector_bits[i], 1, 1);
else else
buf_set_u32(str9xpec_info->options, str9xpec_info->sector_bits[i], 1, 0); buf_set_u32(str9xpec_info->options, str9xpec_info->sector_bits[i], 1, 0);
@ -845,7 +845,7 @@ static int str9xpec_erase_check(struct flash_bank_s *bank)
static int str9xpec_info(struct flash_bank_s *bank, char *buf, int buf_size) static int str9xpec_info(struct flash_bank_s *bank, char *buf, int buf_size)
{ {
snprintf(buf, buf_size, "str9xpec flash driver info" ); snprintf(buf, buf_size, "str9xpec flash driver info");
return ERROR_OK; return ERROR_OK;
} }
@ -919,13 +919,13 @@ static int str9xpec_write_options(struct flash_bank_s *bank)
tap = str9xpec_info->tap; tap = str9xpec_info->tap;
/* erase config options first */ /* erase config options first */
status = str9xpec_erase_area(bank, 0xFE, 0xFE ); status = str9xpec_erase_area(bank, 0xFE, 0xFE);
if ((status & ISC_STATUS_ERROR) != STR9XPEC_ISC_SUCCESS) if ((status & ISC_STATUS_ERROR) != STR9XPEC_ISC_SUCCESS)
return status; return status;
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {
str9xpec_isc_enable(bank ); str9xpec_isc_enable(bank);
} }
if (!str9xpec_info->isc_enable) { if (!str9xpec_info->isc_enable) {

View File

@ -80,7 +80,7 @@ int buf_cmp(const uint8_t *buf1, const uint8_t *buf2, int size)
{ {
/* last byte */ /* last byte */
/* mask out bits that don't really belong to the buffer if size isn't a multiple of 8 bits */ /* mask out bits that don't really belong to the buffer if size isn't a multiple of 8 bits */
if ((size % 8) && (i == num_bytes -1 )) if ((size % 8) && (i == num_bytes -1))
{ {
if ((buf1[i] & ((1 << (size % 8)) - 1)) != (buf2[i] & ((1 << (size % 8)) - 1))) if ((buf1[i] & ((1 << (size % 8)) - 1)) != (buf2[i] & ((1 << (size % 8)) - 1)))
return 1; return 1;
@ -104,7 +104,7 @@ int buf_cmp_mask(const uint8_t *buf1, const uint8_t *buf2, const uint8_t *mask,
{ {
/* last byte */ /* last byte */
/* mask out bits that don't really belong to the buffer if size isn't a multiple of 8 bits */ /* mask out bits that don't really belong to the buffer if size isn't a multiple of 8 bits */
if ((size % 8) && (i == num_bytes -1 )) if ((size % 8) && (i == num_bytes -1))
{ {
if ((buf1[i] & ((1 << (size % 8)) - 1) & mask[i]) != if ((buf1[i] & ((1 << (size % 8)) - 1) & mask[i]) !=
(buf2[i] & ((1 << (size % 8)) - 1) & mask[i])) (buf2[i] & ((1 << (size % 8)) - 1) & mask[i]))

View File

@ -238,7 +238,7 @@ command_t* register_command(command_context_t *context, command_t *parent, char
/* we now need to add an overrideable proc */ /* we now need to add an overrideable proc */
const char *override_name = alloc_printf("proc %s%s%s {args} {if {[catch {eval ocd_%s%s%s $args}]==0} {return \"\"} else { return -code error }", t1, t2, t3, t1, t2, t3); const char *override_name = alloc_printf("proc %s%s%s {args} {if {[catch {eval ocd_%s%s%s $args}]==0} {return \"\"} else { return -code error }", t1, t2, t3, t1, t2, t3);
Jim_Eval_Named(interp, override_name, __THIS__FILE__, __LINE__ ); Jim_Eval_Named(interp, override_name, __THIS__FILE__, __LINE__);
free((void *)override_name); free((void *)override_name);
/* accumulate help text in Tcl helptext list. */ /* accumulate help text in Tcl helptext list. */
@ -348,8 +348,8 @@ int unregister_command(command_context_t *context, char *name)
void command_output_text(command_context_t *context, const char *data) void command_output_text(command_context_t *context, const char *data)
{ {
if (context && context->output_handler && data ){ if (context && context->output_handler && data){
context->output_handler(context, data ); context->output_handler(context, data);
} }
} }
@ -405,7 +405,7 @@ void command_print(command_context_t *context, const char *format, ...)
int run_command(command_context_t *context, command_t *c, char *words[], int num_words) int run_command(command_context_t *context, command_t *c, char *words[], int num_words)
{ {
int start_word = 0; int start_word = 0;
if (!((context->mode == COMMAND_CONFIG) || (c->mode == COMMAND_ANY) || (c->mode == context->mode) )) if (!((context->mode == COMMAND_CONFIG) || (c->mode == COMMAND_ANY) || (c->mode == context->mode)))
{ {
/* Config commands can not run after the config stage */ /* Config commands can not run after the config stage */
LOG_ERROR("Command '%s' only runs during configuration stage", c->name); LOG_ERROR("Command '%s' only runs during configuration stage", c->name);
@ -466,7 +466,7 @@ int command_run_line(command_context_t *context, char *line)
retcode = Jim_SetAssocData(interp, "retval", NULL, &retval); retcode = Jim_SetAssocData(interp, "retval", NULL, &retval);
if (retcode == JIM_OK) if (retcode == JIM_OK)
{ {
retcode = Jim_Eval_Named(interp, line, __THIS__FILE__, __LINE__ ); retcode = Jim_Eval_Named(interp, line, __THIS__FILE__, __LINE__);
Jim_DeleteAssocData(interp, "retval"); Jim_DeleteAssocData(interp, "retval");
} }
@ -673,7 +673,7 @@ static int jim_capture(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
log_add_callback(tcl_output, tclOutput); log_add_callback(tcl_output, tclOutput);
retcode = Jim_Eval_Named(interp, str, __THIS__FILE__, __LINE__ ); retcode = Jim_Eval_Named(interp, str, __THIS__FILE__, __LINE__);
log_remove_callback(tcl_output, tclOutput); log_remove_callback(tcl_output, tclOutput);
@ -704,7 +704,7 @@ command_context_t* command_init()
Jim_RegisterCoreCommands(interp); Jim_RegisterCoreCommands(interp);
#endif #endif
#if defined(_MSC_VER ) #if defined(_MSC_VER)
/* WinXX - is generic, the forward /* WinXX - is generic, the forward
* looking problem is this: * looking problem is this:
* *
@ -715,16 +715,16 @@ command_context_t* command_init()
HostOs = "winxx"; HostOs = "winxx";
#elif defined(__LINUX__) #elif defined(__LINUX__)
HostOs = "linux"; HostOs = "linux";
#elif defined(__DARWIN__ ) #elif defined(__DARWIN__)
HostOs = "darwin"; HostOs = "darwin";
#elif defined(__CYGWIN__ ) #elif defined(__CYGWIN__)
HostOs = "cygwin"; HostOs = "cygwin";
#elif defined(__MINGW32__ ) #elif defined(__MINGW32__)
HostOs = "mingw32"; HostOs = "mingw32";
#else #else
HostOs = "other"; HostOs = "other";
#endif #endif
Jim_SetGlobalVariableStr(interp, "ocd_HOSTOS", Jim_NewStringObj(interp, HostOs , strlen(HostOs)) ); Jim_SetGlobalVariableStr(interp, "ocd_HOSTOS", Jim_NewStringObj(interp, HostOs , strlen(HostOs)));
Jim_CreateCommand(interp, "ocd_find", jim_find, NULL, NULL); Jim_CreateCommand(interp, "ocd_find", jim_find, NULL, NULL);
Jim_CreateCommand(interp, "echo", jim_echo, NULL, NULL); Jim_CreateCommand(interp, "echo", jim_echo, NULL, NULL);

View File

@ -199,7 +199,7 @@ int handle_meminfo_command(struct command_context_s *cmd_ctx, char *cmd, char **
} }
prev = info.fordblks; prev = info.fordblks;
command_print(cmd_ctx, "Available ram: %d", info.fordblks ); command_print(cmd_ctx, "Available ram: %d", info.fordblks);
return ERROR_OK; return ERROR_OK;
} }
@ -325,34 +325,34 @@ void copyfile(char *name2, char *name1)
fd1 = open(name1, O_WRONLY | O_CREAT, 0664); fd1 = open(name1, O_WRONLY | O_CREAT, 0664);
if (fd1 < 0) if (fd1 < 0)
SHOW_RESULT(open, fd1 ); SHOW_RESULT(open, fd1);
fd2 = open(name2, O_RDONLY); fd2 = open(name2, O_RDONLY);
if (fd2 < 0) if (fd2 < 0)
SHOW_RESULT(open, fd2 ); SHOW_RESULT(open, fd2);
for (;;) for (;;)
{ {
done = read(fd2, buf, IOSIZE ); done = read(fd2, buf, IOSIZE);
if (done < 0) if (done < 0)
{ {
SHOW_RESULT(read, done ); SHOW_RESULT(read, done);
break; break;
} }
if (done == 0 ) break; if (done == 0) break;
wrote = write(fd1, buf, done); wrote = write(fd1, buf, done);
if (wrote != done ) SHOW_RESULT(write, wrote ); if (wrote != done) SHOW_RESULT(write, wrote);
if (wrote != done ) break; if (wrote != done) break;
} }
err = close(fd1); err = close(fd1);
if (err < 0 ) SHOW_RESULT(close, err ); if (err < 0) SHOW_RESULT(close, err);
err = close(fd2); err = close(fd2);
if (err < 0 ) SHOW_RESULT(close, err ); if (err < 0) SHOW_RESULT(close, err);
} }
@ -372,7 +372,7 @@ void copydir(char *name, char *destdir)
} }
dirp = opendir(name); dirp = opendir(name);
if (dirp == NULL ) SHOW_RESULT(opendir, -1 ); if (dirp == NULL) SHOW_RESULT(opendir, -1);
for (;;) for (;;)
{ {
@ -421,7 +421,7 @@ void copydir(char *name, char *destdir)
} }
err = closedir(dirp); err = closedir(dirp);
if (err < 0 ) SHOW_RESULT(stat, err ); if (err < 0) SHOW_RESULT(stat, err);
} }

View File

@ -117,25 +117,25 @@ static Jim_HashTableType *getJimVariablesHashTableType(void);
* ---------------------------------------------------------------------------*/ * ---------------------------------------------------------------------------*/
static char * static char *
jim_vasprintf(const char *fmt, va_list ap ) jim_vasprintf(const char *fmt, va_list ap)
{ {
#ifndef HAVE_VASPRINTF #ifndef HAVE_VASPRINTF
/* yucky way */ /* yucky way */
static char buf[2048]; static char buf[2048];
vsnprintf(buf, sizeof(buf), fmt, ap ); vsnprintf(buf, sizeof(buf), fmt, ap);
/* garentee termination */ /* garentee termination */
buf[sizeof(buf)-1] = 0; buf[sizeof(buf)-1] = 0;
#else #else
char *buf; char *buf;
int result; int result;
result = vasprintf(&buf, fmt, ap ); result = vasprintf(&buf, fmt, ap);
if (result < 0) exit(-1); if (result < 0) exit(-1);
#endif #endif
return buf; return buf;
} }
static void static void
jim_vasprintf_done(void *buf ) jim_vasprintf_done(void *buf)
{ {
#ifndef HAVE_VASPRINTF #ifndef HAVE_VASPRINTF
(void)(buf); (void)(buf);
@ -421,7 +421,7 @@ int Jim_StringToWide(const char *str, jim_wide *widePtr, int base)
#else #else
*widePtr = strtol(str, &endptr, base); *widePtr = strtol(str, &endptr, base);
#endif #endif
if ((str[0] == '\0') || (str == endptr) ) if ((str[0] == '\0') || (str == endptr))
return JIM_ERR; return JIM_ERR;
if (endptr[0] != '\0') { if (endptr[0] != '\0') {
while (*endptr) { while (*endptr) {
@ -438,7 +438,7 @@ int Jim_StringToIndex(const char *str, int *intPtr)
char *endptr; char *endptr;
*intPtr = strtol(str, &endptr, 10); *intPtr = strtol(str, &endptr, 10);
if ((str[0] == '\0') || (str == endptr) ) if ((str[0] == '\0') || (str == endptr))
return JIM_ERR; return JIM_ERR;
if (endptr[0] != '\0') { if (endptr[0] != '\0') {
while (*endptr) { while (*endptr) {
@ -495,7 +495,7 @@ int Jim_StringToDouble(const char *str, double *doublePtr)
char *endptr; char *endptr;
*doublePtr = strtod(str, &endptr); *doublePtr = strtod(str, &endptr);
if (str[0] == '\0' || endptr[0] != '\0' || (str == endptr) ) if (str[0] == '\0' || endptr[0] != '\0' || (str == endptr))
return JIM_ERR; return JIM_ERR;
return JIM_OK; return JIM_OK;
} }
@ -544,10 +544,10 @@ void Jim_Panic(Jim_Interp *interp, const char *fmt, ...)
#endif #endif
/* This may actually crash... we do it last */ /* This may actually crash... we do it last */
if (interp && interp->cookie_stderr ){ if (interp && interp->cookie_stderr){
Jim_fprintf(interp, interp->cookie_stderr, JIM_NL "JIM INTERPRETER PANIC: "); Jim_fprintf(interp, interp->cookie_stderr, JIM_NL "JIM INTERPRETER PANIC: ");
Jim_vfprintf(interp, interp->cookie_stderr, fmt, ap ); Jim_vfprintf(interp, interp->cookie_stderr, fmt, ap);
Jim_fprintf(interp, interp->cookie_stderr, JIM_NL JIM_NL ); Jim_fprintf(interp, interp->cookie_stderr, JIM_NL JIM_NL);
} }
abort(); abort();
} }
@ -2055,17 +2055,17 @@ void Jim_AppendString(Jim_Interp *interp, Jim_Obj *objPtr, const char *str,
StringAppendString(objPtr, str, len); StringAppendString(objPtr, str, len);
} }
void Jim_AppendString_sprintf(Jim_Interp *interp, Jim_Obj *objPtr, const char *fmt, ... ) void Jim_AppendString_sprintf(Jim_Interp *interp, Jim_Obj *objPtr, const char *fmt, ...)
{ {
char *buf; char *buf;
va_list ap; va_list ap;
va_start(ap, fmt ); va_start(ap, fmt);
buf = jim_vasprintf(fmt, ap ); buf = jim_vasprintf(fmt, ap);
va_end(ap); va_end(ap);
if (buf ){ if (buf){
Jim_AppendString(interp, objPtr, buf, -1 ); Jim_AppendString(interp, objPtr, buf, -1);
jim_vasprintf_done(buf); jim_vasprintf_done(buf);
} }
} }
@ -2283,10 +2283,10 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
haveprec = 0; haveprec = 0;
prec = -1; /* not found yet */ prec = -1; /* not found yet */
next_fmt: next_fmt:
if (fmtLen <= 0 ){ if (fmtLen <= 0){
break; break;
} }
switch (*fmt ){ switch (*fmt){
/* terminals */ /* terminals */
case 'b': /* binary - not all printfs() do this */ case 'b': /* binary - not all printfs() do this */
case 's': /* string */ case 's': /* string */
@ -2341,11 +2341,11 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
case '8': case '8':
case '9': case '9':
accum = 0; accum = 0;
while (isdigit(*fmt) && (fmtLen > 0) ){ while (isdigit(*fmt) && (fmtLen > 0)){
accum = (accum * 10) + (*fmt - '0'); accum = (accum * 10) + (*fmt - '0');
fmt++; fmtLen--; fmt++; fmtLen--;
} }
if (inprec ){ if (inprec){
haveprec = 1; haveprec = 1;
prec = accum; prec = accum;
} else { } else {
@ -2356,24 +2356,24 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
/* suck up the next item as an integer */ /* suck up the next item as an integer */
fmt++; fmtLen--; fmt++; fmtLen--;
objc--; objc--;
if (objc <= 0 ){ if (objc <= 0){
goto not_enough_args; goto not_enough_args;
} }
if (Jim_GetWide(interp,objv[0],&wideValue )== JIM_ERR ){ if (Jim_GetWide(interp,objv[0],&wideValue)== JIM_ERR){
Jim_FreeNewObj(interp, resObjPtr ); Jim_FreeNewObj(interp, resObjPtr);
return NULL; return NULL;
} }
if (inprec ){ if (inprec){
haveprec = 1; haveprec = 1;
prec = wideValue; prec = wideValue;
if (prec < 0 ){ if (prec < 0){
/* man 3 printf says */ /* man 3 printf says */
/* if prec is negative, it is zero */ /* if prec is negative, it is zero */
prec = 0; prec = 0;
} }
} else { } else {
width = wideValue; width = wideValue;
if (width < 0 ){ if (width < 0){
ljust = 1; ljust = 1;
width = -width; width = -width;
} }
@ -2402,33 +2402,33 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
*/ */
cp = fmt_str; cp = fmt_str;
*cp++ = '%'; *cp++ = '%';
if (altfm ){ if (altfm){
*cp++ = '#'; *cp++ = '#';
} }
if (forceplus ){ if (forceplus){
*cp++ = '+'; *cp++ = '+';
} else if (spad ){ } else if (spad){
/* PLUS overrides */ /* PLUS overrides */
*cp++ = ' '; *cp++ = ' ';
} }
if (ljust ){ if (ljust){
*cp++ = '-'; *cp++ = '-';
} }
if (zpad ){ if (zpad){
*cp++ = '0'; *cp++ = '0';
} }
if (width > 0 ){ if (width > 0){
sprintf(cp, "%d", width ); sprintf(cp, "%d", width);
/* skip ahead */ /* skip ahead */
cp = strchr(cp,0); cp = strchr(cp,0);
} }
/* did we find a period? */ /* did we find a period? */
if (inprec ){ if (inprec){
/* then add it */ /* then add it */
*cp++ = '.'; *cp++ = '.';
/* did something occur after the period? */ /* did something occur after the period? */
if (haveprec ){ if (haveprec){
sprintf(cp, "%d", prec ); sprintf(cp, "%d", prec);
} }
cp = strchr(cp,0); cp = strchr(cp,0);
} }
@ -2441,7 +2441,7 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
*cp++ = 's'; *cp++ = 's';
*cp = 0; *cp = 0;
/* BUG: we do not handled embeded NULLs */ /* BUG: we do not handled embeded NULLs */
snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, Jim_GetString(objv[0], NULL )); snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, Jim_GetString(objv[0], NULL));
break; break;
case 'c': case 'c':
*cp++ = 'c'; *cp++ = 'c';
@ -2451,7 +2451,7 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
return NULL; return NULL;
} }
c = (char) wideValue; c = (char) wideValue;
snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, c ); snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, c);
break; break;
case 'f': case 'f':
case 'F': case 'F':
@ -2461,11 +2461,11 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
case 'E': case 'E':
*cp++ = *fmt; *cp++ = *fmt;
*cp = 0; *cp = 0;
if (Jim_GetDouble(interp, objv[0], &doubleValue ) == JIM_ERR ){ if (Jim_GetDouble(interp, objv[0], &doubleValue) == JIM_ERR){
Jim_FreeNewObj(interp, resObjPtr ); Jim_FreeNewObj(interp, resObjPtr);
return NULL; return NULL;
} }
snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, doubleValue ); snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, doubleValue);
break; break;
case 'b': case 'b':
case 'd': case 'd':
@ -2475,7 +2475,7 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
case 'x': case 'x':
case 'X': case 'X':
/* jim widevaluse are 64bit */ /* jim widevaluse are 64bit */
if (sizeof(jim_wide) == sizeof(long long) ){ if (sizeof(jim_wide) == sizeof(long long)){
*cp++ = 'l'; *cp++ = 'l';
*cp++ = 'l'; *cp++ = 'l';
} else { } else {
@ -2487,7 +2487,7 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
Jim_FreeNewObj(interp, resObjPtr); Jim_FreeNewObj(interp, resObjPtr);
return NULL; return NULL;
} }
snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, wideValue ); snprintf(sprintf_buf, JIM_MAX_FMT, fmt_str, wideValue);
break; break;
case '%': case '%':
sprintf_buf[0] = '%'; sprintf_buf[0] = '%';
@ -2504,12 +2504,12 @@ static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
} }
/* force terminate */ /* force terminate */
#if 0 #if 0
printf("FMT was: %s\n", fmt_str ); printf("FMT was: %s\n", fmt_str);
printf("RES was: |%s|\n", sprintf_buf ); printf("RES was: |%s|\n", sprintf_buf);
#endif #endif
sprintf_buf[ JIM_MAX_FMT - 1] = 0; sprintf_buf[ JIM_MAX_FMT - 1] = 0;
Jim_AppendString(interp, resObjPtr, sprintf_buf, strlen(sprintf_buf) ); Jim_AppendString(interp, resObjPtr, sprintf_buf, strlen(sprintf_buf));
/* next obj */ /* next obj */
objv++; objv++;
fmt++; fmt++;
@ -2626,13 +2626,13 @@ int Jim_GetNvp(Jim_Interp *interp,
Jim_Nvp *n; Jim_Nvp *n;
int e; int e;
e = Jim_Nvp_name2value_obj(interp, nvp_table, objPtr, &n ); e = Jim_Nvp_name2value_obj(interp, nvp_table, objPtr, &n);
if (e == JIM_ERR ){ if (e == JIM_ERR){
return e; return e;
} }
/* Success? found? */ /* Success? found? */
if (n->name ){ if (n->name){
/* remove const */ /* remove const */
*result = (Jim_Nvp *)n; *result = (Jim_Nvp *)n;
return JIM_OK; return JIM_OK;
@ -4426,7 +4426,7 @@ Jim_Interp *Jim_CreateInterp(void)
i->cookie_stderr = stderr; i->cookie_stderr = stderr;
i->cb_fwrite = ((size_t (*)(const void *, size_t, size_t, void *))(fwrite)); i->cb_fwrite = ((size_t (*)(const void *, size_t, size_t, void *))(fwrite));
i->cb_fread = ((size_t (*)(void *, size_t, size_t, void *))(fread)); i->cb_fread = ((size_t (*)(void *, size_t, size_t, void *))(fread));
i->cb_vfprintf = ((int (*)(void *, const char *fmt, va_list ))(vfprintf)); i->cb_vfprintf = ((int (*)(void *, const char *fmt, va_list))(vfprintf));
i->cb_fflush = ((int (*)(void *))(fflush)); i->cb_fflush = ((int (*)(void *))(fflush));
i->cb_fgets = ((char * (*)(char *, int, void *))(fgets)); i->cb_fgets = ((char * (*)(char *, int, void *))(fgets));
@ -5433,7 +5433,7 @@ void Jim_ListInsertElements(Jim_Interp *interp, Jim_Obj *listPtr, int index,
SetListFromAny(interp, listPtr); SetListFromAny(interp, listPtr);
if (index >= 0 && index > listPtr->internalRep.listValue.len) if (index >= 0 && index > listPtr->internalRep.listValue.len)
index = listPtr->internalRep.listValue.len; index = listPtr->internalRep.listValue.len;
else if (index < 0 ) else if (index < 0)
index = 0; index = 0;
Jim_InvalidateStringRep(listPtr); Jim_InvalidateStringRep(listPtr);
ListInsertElements(listPtr, index, objc, objVec); ListInsertElements(listPtr, index, objc, objVec);
@ -6353,11 +6353,11 @@ int JimParseExprNumber(struct JimParserCtx *pc)
pc->p++; pc->len--; pc->p++; pc->len--;
} }
while (isdigit((int)*pc->p) while (isdigit((int)*pc->p)
|| (allowhex && isxdigit((int)*pc->p) ) || (allowhex && isxdigit((int)*pc->p))
|| (allowdot && *pc->p == '.') || (allowdot && *pc->p == '.')
|| (pc->p-pc->tstart == 1 && *pc->tstart == '0' && || (pc->p-pc->tstart == 1 && *pc->tstart == '0' &&
(*pc->p == 'x' || *pc->p == 'X')) (*pc->p == 'x' || *pc->p == 'X'))
) )
{ {
if ((*pc->p == 'x') || (*pc->p == 'X')) { if ((*pc->p == 'x') || (*pc->p == 'X')) {
allowhex = 1; allowhex = 1;
@ -8894,8 +8894,8 @@ int Jim_Eval_Named(Jim_Interp *interp, const char *script, const char *filename,
Jim_IncrRefCount(scriptObjPtr); Jim_IncrRefCount(scriptObjPtr);
if (filename ){ if (filename){
JimSetSourceInfo(interp, scriptObjPtr, filename, lineno ); JimSetSourceInfo(interp, scriptObjPtr, filename, lineno);
} }
retval = Jim_EvalObj(interp, scriptObjPtr); retval = Jim_EvalObj(interp, scriptObjPtr);
@ -8905,7 +8905,7 @@ int Jim_Eval_Named(Jim_Interp *interp, const char *script, const char *filename,
int Jim_Eval(Jim_Interp *interp, const char *script) int Jim_Eval(Jim_Interp *interp, const char *script)
{ {
return Jim_Eval_Named(interp, script, NULL, 0 ); return Jim_Eval_Named(interp, script, NULL, 0);
} }
@ -8963,7 +8963,7 @@ int Jim_EvalFile(Jim_Interp *interp, const char *filename)
const int cwd_len = 2048; const int cwd_len = 2048;
char *cwd = malloc(cwd_len); char *cwd = malloc(cwd_len);
Jim_SetResult(interp, Jim_NewEmptyStringObj(interp)); Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
if (!getcwd(cwd, cwd_len )) strcpy(cwd, "unknown"); if (!getcwd(cwd, cwd_len)) strcpy(cwd, "unknown");
Jim_AppendStrings(interp, Jim_GetResult(interp), Jim_AppendStrings(interp, Jim_GetResult(interp),
"Error loading script \"", filename, "\"", "Error loading script \"", filename, "\"",
" cwd: ", cwd, " cwd: ", cwd,
@ -9359,12 +9359,12 @@ void JimRegisterCoreApi(Jim_Interp *interp)
JIM_REGISTER_API(StackPop); JIM_REGISTER_API(StackPop);
JIM_REGISTER_API(StackPeek); JIM_REGISTER_API(StackPeek);
JIM_REGISTER_API(FreeStackElements); JIM_REGISTER_API(FreeStackElements);
JIM_REGISTER_API(fprintf ); JIM_REGISTER_API(fprintf);
JIM_REGISTER_API(vfprintf ); JIM_REGISTER_API(vfprintf);
JIM_REGISTER_API(fwrite ); JIM_REGISTER_API(fwrite);
JIM_REGISTER_API(fread ); JIM_REGISTER_API(fread);
JIM_REGISTER_API(fflush ); JIM_REGISTER_API(fflush);
JIM_REGISTER_API(fgets ); JIM_REGISTER_API(fgets);
JIM_REGISTER_API(GetNvp); JIM_REGISTER_API(GetNvp);
JIM_REGISTER_API(Nvp_name2value); JIM_REGISTER_API(Nvp_name2value);
JIM_REGISTER_API(Nvp_name2value_simple); JIM_REGISTER_API(Nvp_name2value_simple);
@ -10217,7 +10217,7 @@ static int JimForeachMapHelper(Jim_Interp *interp, int argc,
if (count > nbrOfLoops) if (count > nbrOfLoops)
nbrOfLoops = count; nbrOfLoops = count;
} }
for (; nbrOfLoops-- > 0; ) { for (; nbrOfLoops-- > 0;) {
for (i = 0; i < nbrOfLists; ++i) { for (i = 0; i < nbrOfLists; ++i) {
int varIdx = 0, var = i * 2; int varIdx = 0, var = i * 2;
while (varIdx < listsEnd[var]) { while (varIdx < listsEnd[var]) {
@ -12276,7 +12276,7 @@ static void Jim_RegisterCoreProcedures(Jim_Interp *interp)
"proc lambdaFinalizer {name val} {\n" "proc lambdaFinalizer {name val} {\n"
" rename $name {}\n" " rename $name {}\n"
"}\n" "}\n"
); );
} }
void Jim_RegisterCoreCommands(Jim_Interp *interp) void Jim_RegisterCoreCommands(Jim_Interp *interp)
@ -12399,66 +12399,66 @@ out:
* Jim's idea of STDIO.. * Jim's idea of STDIO..
* ---------------------------------------------------------------------------*/ * ---------------------------------------------------------------------------*/
int Jim_fprintf(Jim_Interp *interp, void *cookie, const char *fmt, ... ) int Jim_fprintf(Jim_Interp *interp, void *cookie, const char *fmt, ...)
{ {
int r; int r;
va_list ap; va_list ap;
va_start(ap,fmt); va_start(ap,fmt);
r = Jim_vfprintf(interp, cookie, fmt,ap ); r = Jim_vfprintf(interp, cookie, fmt,ap);
va_end(ap); va_end(ap);
return r; return r;
} }
int Jim_vfprintf(Jim_Interp *interp, void *cookie, const char *fmt, va_list ap ) int Jim_vfprintf(Jim_Interp *interp, void *cookie, const char *fmt, va_list ap)
{ {
if ((interp == NULL) || (interp->cb_vfprintf == NULL) ){ if ((interp == NULL) || (interp->cb_vfprintf == NULL)){
errno = ENOTSUP; errno = ENOTSUP;
return -1; return -1;
} }
return (*(interp->cb_vfprintf))(cookie, fmt, ap ); return (*(interp->cb_vfprintf))(cookie, fmt, ap);
} }
size_t Jim_fwrite(Jim_Interp *interp, const void *ptr, size_t size, size_t n, void *cookie ) size_t Jim_fwrite(Jim_Interp *interp, const void *ptr, size_t size, size_t n, void *cookie)
{ {
if ((interp == NULL) || (interp->cb_fwrite == NULL) ){ if ((interp == NULL) || (interp->cb_fwrite == NULL)){
errno = ENOTSUP; errno = ENOTSUP;
return 0; return 0;
} }
return (*(interp->cb_fwrite))(ptr, size, n, cookie); return (*(interp->cb_fwrite))(ptr, size, n, cookie);
} }
size_t Jim_fread(Jim_Interp *interp, void *ptr, size_t size, size_t n, void *cookie ) size_t Jim_fread(Jim_Interp *interp, void *ptr, size_t size, size_t n, void *cookie)
{ {
if ((interp == NULL) || (interp->cb_fread == NULL) ){ if ((interp == NULL) || (interp->cb_fread == NULL)){
errno = ENOTSUP; errno = ENOTSUP;
return 0; return 0;
} }
return (*(interp->cb_fread))(ptr, size, n, cookie); return (*(interp->cb_fread))(ptr, size, n, cookie);
} }
int Jim_fflush(Jim_Interp *interp, void *cookie ) int Jim_fflush(Jim_Interp *interp, void *cookie)
{ {
if ((interp == NULL) || (interp->cb_fflush == NULL) ){ if ((interp == NULL) || (interp->cb_fflush == NULL)){
/* pretend all is well */ /* pretend all is well */
return 0; return 0;
} }
return (*(interp->cb_fflush))(cookie ); return (*(interp->cb_fflush))(cookie);
} }
char* Jim_fgets(Jim_Interp *interp, char *s, int size, void *cookie ) char* Jim_fgets(Jim_Interp *interp, char *s, int size, void *cookie)
{ {
if ((interp == NULL) || (interp->cb_fgets == NULL) ){ if ((interp == NULL) || (interp->cb_fgets == NULL)){
errno = ENOTSUP; errno = ENOTSUP;
return NULL; return NULL;
} }
return (*(interp->cb_fgets))(s, size, cookie ); return (*(interp->cb_fgets))(s, size, cookie);
} }
Jim_Nvp * Jim_Nvp *
Jim_Nvp_name2value_simple(const Jim_Nvp *p, const char *name ) Jim_Nvp_name2value_simple(const Jim_Nvp *p, const char *name)
{ {
while (p->name ){ while (p->name){
if (0 == strcmp(name, p->name ) ){ if (0 == strcmp(name, p->name)){
break; break;
} }
p++; p++;
@ -12467,10 +12467,10 @@ Jim_Nvp_name2value_simple(const Jim_Nvp *p, const char *name )
} }
Jim_Nvp * Jim_Nvp *
Jim_Nvp_name2value_nocase_simple(const Jim_Nvp *p, const char *name ) Jim_Nvp_name2value_nocase_simple(const Jim_Nvp *p, const char *name)
{ {
while (p->name ){ while (p->name){
if (0 == strcasecmp(name, p->name ) ){ if (0 == strcasecmp(name, p->name)){
break; break;
} }
p++; p++;
@ -12482,9 +12482,9 @@ int
Jim_Nvp_name2value_obj(Jim_Interp *interp, Jim_Nvp_name2value_obj(Jim_Interp *interp,
const Jim_Nvp *p, const Jim_Nvp *p,
Jim_Obj *o, Jim_Obj *o,
Jim_Nvp **result ) Jim_Nvp **result)
{ {
return Jim_Nvp_name2value(interp, p, Jim_GetString(o, NULL ), result ); return Jim_Nvp_name2value(interp, p, Jim_GetString(o, NULL), result);
} }
@ -12496,15 +12496,15 @@ Jim_Nvp_name2value(Jim_Interp *interp,
{ {
const Jim_Nvp *p; const Jim_Nvp *p;
p = Jim_Nvp_name2value_simple(_p, name ); p = Jim_Nvp_name2value_simple(_p, name);
/* result */ /* result */
if (result ){ if (result){
*result = (Jim_Nvp *)(p); *result = (Jim_Nvp *)(p);
} }
/* found? */ /* found? */
if (p->name ){ if (p->name){
return JIM_OK; return JIM_OK;
} else { } else {
return JIM_ERR; return JIM_ERR;
@ -12512,23 +12512,23 @@ Jim_Nvp_name2value(Jim_Interp *interp,
} }
int int
Jim_Nvp_name2value_obj_nocase(Jim_Interp *interp, const Jim_Nvp *p, Jim_Obj *o, Jim_Nvp **puthere ) Jim_Nvp_name2value_obj_nocase(Jim_Interp *interp, const Jim_Nvp *p, Jim_Obj *o, Jim_Nvp **puthere)
{ {
return Jim_Nvp_name2value_nocase(interp, p, Jim_GetString(o, NULL ), puthere ); return Jim_Nvp_name2value_nocase(interp, p, Jim_GetString(o, NULL), puthere);
} }
int int
Jim_Nvp_name2value_nocase(Jim_Interp *interp, const Jim_Nvp *_p, const char *name, Jim_Nvp **puthere ) Jim_Nvp_name2value_nocase(Jim_Interp *interp, const Jim_Nvp *_p, const char *name, Jim_Nvp **puthere)
{ {
const Jim_Nvp *p; const Jim_Nvp *p;
p = Jim_Nvp_name2value_nocase_simple(_p, name ); p = Jim_Nvp_name2value_nocase_simple(_p, name);
if (puthere ){ if (puthere){
*puthere = (Jim_Nvp *)(p); *puthere = (Jim_Nvp *)(p);
} }
/* found */ /* found */
if (p->name ){ if (p->name){
return JIM_OK; return JIM_OK;
} else { } else {
return JIM_ERR; return JIM_ERR;
@ -12537,24 +12537,24 @@ Jim_Nvp_name2value_nocase(Jim_Interp *interp, const Jim_Nvp *_p, const char *nam
int int
Jim_Nvp_value2name_obj(Jim_Interp *interp, const Jim_Nvp *p, Jim_Obj *o, Jim_Nvp **result ) Jim_Nvp_value2name_obj(Jim_Interp *interp, const Jim_Nvp *p, Jim_Obj *o, Jim_Nvp **result)
{ {
int e;; int e;;
jim_wide w; jim_wide w;
e = Jim_GetWide(interp, o, &w ); e = Jim_GetWide(interp, o, &w);
if (e != JIM_OK ){ if (e != JIM_OK){
return e; return e;
} }
return Jim_Nvp_value2name(interp, p, w, result ); return Jim_Nvp_value2name(interp, p, w, result);
} }
Jim_Nvp * Jim_Nvp *
Jim_Nvp_value2name_simple(const Jim_Nvp *p, int value ) Jim_Nvp_value2name_simple(const Jim_Nvp *p, int value)
{ {
while (p->name ){ while (p->name){
if (value == p->value ){ if (value == p->value){
break; break;
} }
p++; p++;
@ -12564,17 +12564,17 @@ Jim_Nvp_value2name_simple(const Jim_Nvp *p, int value )
int int
Jim_Nvp_value2name(Jim_Interp *interp, const Jim_Nvp *_p, int value, Jim_Nvp **result ) Jim_Nvp_value2name(Jim_Interp *interp, const Jim_Nvp *_p, int value, Jim_Nvp **result)
{ {
const Jim_Nvp *p; const Jim_Nvp *p;
p = Jim_Nvp_value2name_simple(_p, value ); p = Jim_Nvp_value2name_simple(_p, value);
if (result ){ if (result){
*result = (Jim_Nvp *)(p); *result = (Jim_Nvp *)(p);
} }
if (p->name ){ if (p->name){
return JIM_OK; return JIM_OK;
} else { } else {
return JIM_ERR; return JIM_ERR;
@ -12585,7 +12585,7 @@ Jim_Nvp_value2name(Jim_Interp *interp, const Jim_Nvp *_p, int value, Jim_Nvp **r
int int
Jim_GetOpt_Setup(Jim_GetOptInfo *p, Jim_Interp *interp, int argc, Jim_Obj * const * argv) Jim_GetOpt_Setup(Jim_GetOptInfo *p, Jim_Interp *interp, int argc, Jim_Obj * const * argv)
{ {
memset(p, 0, sizeof(*p) ); memset(p, 0, sizeof(*p));
p->interp = interp; p->interp = interp;
p->argc = argc; p->argc = argc;
p->argv = argv; p->argv = argv;
@ -12594,37 +12594,37 @@ Jim_GetOpt_Setup(Jim_GetOptInfo *p, Jim_Interp *interp, int argc, Jim_Obj * cons
} }
void void
Jim_GetOpt_Debug(Jim_GetOptInfo *p ) Jim_GetOpt_Debug(Jim_GetOptInfo *p)
{ {
int x; int x;
Jim_fprintf(p->interp, p->interp->cookie_stderr, "---args---\n"); Jim_fprintf(p->interp, p->interp->cookie_stderr, "---args---\n");
for (x = 0 ; x < p->argc ; x++ ){ for (x = 0 ; x < p->argc ; x++){
Jim_fprintf(p->interp, p->interp->cookie_stderr, Jim_fprintf(p->interp, p->interp->cookie_stderr,
"%2d) %s\n", "%2d) %s\n",
x, x,
Jim_GetString(p->argv[x], NULL ) ); Jim_GetString(p->argv[x], NULL));
} }
Jim_fprintf(p->interp, p->interp->cookie_stderr, "-------\n"); Jim_fprintf(p->interp, p->interp->cookie_stderr, "-------\n");
} }
int int
Jim_GetOpt_Obj(Jim_GetOptInfo *goi, Jim_Obj **puthere ) Jim_GetOpt_Obj(Jim_GetOptInfo *goi, Jim_Obj **puthere)
{ {
Jim_Obj *o; Jim_Obj *o;
o = NULL; // failure o = NULL; // failure
if (goi->argc ){ if (goi->argc){
// success // success
o = goi->argv[0]; o = goi->argv[0];
goi->argc -= 1; goi->argc -= 1;
goi->argv += 1; goi->argv += 1;
} }
if (puthere ){ if (puthere){
*puthere = o; *puthere = o;
} }
if (o != NULL ){ if (o != NULL){
return JIM_OK; return JIM_OK;
} else { } else {
return JIM_ERR; return JIM_ERR;
@ -12632,17 +12632,17 @@ Jim_GetOpt_Obj(Jim_GetOptInfo *goi, Jim_Obj **puthere )
} }
int int
Jim_GetOpt_String(Jim_GetOptInfo *goi, char **puthere, int *len ) Jim_GetOpt_String(Jim_GetOptInfo *goi, char **puthere, int *len)
{ {
int r; int r;
Jim_Obj *o; Jim_Obj *o;
const char *cp; const char *cp;
r = Jim_GetOpt_Obj(goi, &o ); r = Jim_GetOpt_Obj(goi, &o);
if (r == JIM_OK ){ if (r == JIM_OK){
cp = Jim_GetString(o, len ); cp = Jim_GetString(o, len);
if (puthere ){ if (puthere){
/* remove const */ /* remove const */
*puthere = (char *)(cp); *puthere = (char *)(cp);
} }
@ -12651,42 +12651,42 @@ Jim_GetOpt_String(Jim_GetOptInfo *goi, char **puthere, int *len )
} }
int int
Jim_GetOpt_Double(Jim_GetOptInfo *goi, double *puthere ) Jim_GetOpt_Double(Jim_GetOptInfo *goi, double *puthere)
{ {
int r; int r;
Jim_Obj *o; Jim_Obj *o;
double _safe; double _safe;
if (puthere == NULL ){ if (puthere == NULL){
puthere = &_safe; puthere = &_safe;
} }
r = Jim_GetOpt_Obj(goi, &o ); r = Jim_GetOpt_Obj(goi, &o);
if (r == JIM_OK ){ if (r == JIM_OK){
r = Jim_GetDouble(goi->interp, o, puthere ); r = Jim_GetDouble(goi->interp, o, puthere);
if (r != JIM_OK ){ if (r != JIM_OK){
Jim_SetResult_sprintf(goi->interp, Jim_SetResult_sprintf(goi->interp,
"not a number: %s", "not a number: %s",
Jim_GetString(o, NULL ) ); Jim_GetString(o, NULL));
} }
} }
return r; return r;
} }
int int
Jim_GetOpt_Wide(Jim_GetOptInfo *goi, jim_wide *puthere ) Jim_GetOpt_Wide(Jim_GetOptInfo *goi, jim_wide *puthere)
{ {
int r; int r;
Jim_Obj *o; Jim_Obj *o;
jim_wide _safe; jim_wide _safe;
if (puthere == NULL ){ if (puthere == NULL){
puthere = &_safe; puthere = &_safe;
} }
r = Jim_GetOpt_Obj(goi, &o ); r = Jim_GetOpt_Obj(goi, &o);
if (r == JIM_OK ){ if (r == JIM_OK){
r = Jim_GetWide(goi->interp, o, puthere ); r = Jim_GetWide(goi->interp, o, puthere);
} }
return r; return r;
} }
@ -12699,16 +12699,16 @@ int Jim_GetOpt_Nvp(Jim_GetOptInfo *goi,
Jim_Obj *o; Jim_Obj *o;
int e; int e;
if (puthere == NULL ){ if (puthere == NULL){
puthere = &_safe; puthere = &_safe;
} }
e = Jim_GetOpt_Obj(goi, &o ); e = Jim_GetOpt_Obj(goi, &o);
if (e == JIM_OK ){ if (e == JIM_OK){
e = Jim_Nvp_name2value_obj(goi->interp, e = Jim_Nvp_name2value_obj(goi->interp,
nvp, nvp,
o, o,
puthere ); puthere);
} }
return e; return e;
@ -12717,18 +12717,18 @@ int Jim_GetOpt_Nvp(Jim_GetOptInfo *goi,
void void
Jim_GetOpt_NvpUnknown(Jim_GetOptInfo *goi, Jim_GetOpt_NvpUnknown(Jim_GetOptInfo *goi,
const Jim_Nvp *nvptable, const Jim_Nvp *nvptable,
int hadprefix ) int hadprefix)
{ {
if (hadprefix ){ if (hadprefix){
Jim_SetResult_NvpUnknown(goi->interp, Jim_SetResult_NvpUnknown(goi->interp,
goi->argv[-2], goi->argv[-2],
goi->argv[-1], goi->argv[-1],
nvptable ); nvptable);
} else { } else {
Jim_SetResult_NvpUnknown(goi->interp, Jim_SetResult_NvpUnknown(goi->interp,
NULL, NULL,
goi->argv[-1], goi->argv[-1],
nvptable ); nvptable);
} }
} }
@ -12742,17 +12742,17 @@ Jim_GetOpt_Enum(Jim_GetOptInfo *goi,
Jim_Obj *o; Jim_Obj *o;
int e; int e;
if (puthere == NULL ){ if (puthere == NULL){
puthere = &_safe; puthere = &_safe;
} }
e = Jim_GetOpt_Obj(goi, &o ); e = Jim_GetOpt_Obj(goi, &o);
if (e == JIM_OK ){ if (e == JIM_OK){
e = Jim_GetEnum(goi->interp, e = Jim_GetEnum(goi->interp,
o, o,
lookup, lookup,
puthere, puthere,
"option", "option",
JIM_ERRMSG ); JIM_ERRMSG);
} }
return e; return e;
} }
@ -12760,16 +12760,16 @@ Jim_GetOpt_Enum(Jim_GetOptInfo *goi,
int int
Jim_SetResult_sprintf(Jim_Interp *interp, const char *fmt,... ) Jim_SetResult_sprintf(Jim_Interp *interp, const char *fmt,...)
{ {
va_list ap; va_list ap;
char *buf; char *buf;
va_start(ap,fmt); va_start(ap,fmt);
buf = jim_vasprintf(fmt, ap ); buf = jim_vasprintf(fmt, ap);
va_end(ap); va_end(ap);
if (buf ){ if (buf){
Jim_SetResultString(interp, buf, -1 ); Jim_SetResultString(interp, buf, -1);
jim_vasprintf_done(buf); jim_vasprintf_done(buf);
} }
return JIM_OK; return JIM_OK;
@ -12780,23 +12780,23 @@ void
Jim_SetResult_NvpUnknown(Jim_Interp *interp, Jim_SetResult_NvpUnknown(Jim_Interp *interp,
Jim_Obj *param_name, Jim_Obj *param_name,
Jim_Obj *param_value, Jim_Obj *param_value,
const Jim_Nvp *nvp ) const Jim_Nvp *nvp)
{ {
if (param_name ){ if (param_name){
Jim_SetResult_sprintf(interp, Jim_SetResult_sprintf(interp,
"%s: Unknown: %s, try one of: ", "%s: Unknown: %s, try one of: ",
Jim_GetString(param_name, NULL ), Jim_GetString(param_name, NULL),
Jim_GetString(param_value, NULL ) ); Jim_GetString(param_value, NULL));
} else { } else {
Jim_SetResult_sprintf(interp, Jim_SetResult_sprintf(interp,
"Unknown param: %s, try one of: ", "Unknown param: %s, try one of: ",
Jim_GetString(param_value, NULL ) ); Jim_GetString(param_value, NULL));
} }
while (nvp->name ){ while (nvp->name){
const char *a; const char *a;
const char *b; const char *b;
if ((nvp + 1)->name ){ if ((nvp + 1)->name){
a = nvp->name; a = nvp->name;
b = ", "; b = ", ";
} else { } else {
@ -12805,7 +12805,7 @@ Jim_SetResult_NvpUnknown(Jim_Interp *interp,
} }
Jim_AppendStrings(interp, Jim_AppendStrings(interp,
Jim_GetResult(interp), Jim_GetResult(interp),
a, b, NULL ); a, b, NULL);
nvp++; nvp++;
} }
} }
@ -12814,22 +12814,22 @@ Jim_SetResult_NvpUnknown(Jim_Interp *interp,
static Jim_Obj *debug_string_obj; static Jim_Obj *debug_string_obj;
const char * const char *
Jim_Debug_ArgvString(Jim_Interp *interp, int argc, Jim_Obj *const *argv ) Jim_Debug_ArgvString(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
{ {
int x; int x;
if (debug_string_obj ){ if (debug_string_obj){
Jim_FreeObj(interp, debug_string_obj ); Jim_FreeObj(interp, debug_string_obj);
} }
debug_string_obj = Jim_NewEmptyStringObj(interp ); debug_string_obj = Jim_NewEmptyStringObj(interp);
for (x = 0 ; x < argc ; x++ ){ for (x = 0 ; x < argc ; x++){
Jim_AppendStrings(interp, Jim_AppendStrings(interp,
debug_string_obj, debug_string_obj,
Jim_GetString(argv[x], NULL ), Jim_GetString(argv[x], NULL),
" ", " ",
NULL ); NULL);
} }
return Jim_GetString(debug_string_obj, NULL ); return Jim_GetString(debug_string_obj, NULL);
} }

View File

@ -530,11 +530,11 @@ typedef struct Jim_Interp {
void *cookie_stdin; /* input file pointer, 'stdin' by default */ void *cookie_stdin; /* input file pointer, 'stdin' by default */
void *cookie_stdout; /* output file pointer, 'stdout' by default */ void *cookie_stdout; /* output file pointer, 'stdout' by default */
void *cookie_stderr; /* errors file pointer, 'stderr' by default */ void *cookie_stderr; /* errors file pointer, 'stderr' by default */
size_t (*cb_fwrite )(const void *ptr, size_t size, size_t n, void *cookie ); size_t (*cb_fwrite)(const void *ptr, size_t size, size_t n, void *cookie);
size_t (*cb_fread )(void *ptr, size_t size, size_t n, void *cookie ); size_t (*cb_fread)(void *ptr, size_t size, size_t n, void *cookie);
int (*cb_vfprintf)(void *cookie, const char *fmt, va_list ap ); int (*cb_vfprintf)(void *cookie, const char *fmt, va_list ap);
int (*cb_fflush )(void *cookie ); int (*cb_fflush)(void *cookie);
char *(*cb_fgets )(char *s, int size, void *cookie ); char *(*cb_fgets)(char *s, int size, void *cookie);
} Jim_Interp; } Jim_Interp;
/* Currently provided as macro that performs the increment. /* Currently provided as macro that performs the increment.
@ -591,11 +591,11 @@ typedef struct Jim_Reference {
* }; * };
* *
* Jim_Nvp *result * Jim_Nvp *result
* e = Jim_Nvp_name2value(interp, yn, "y", &result ); * e = Jim_Nvp_name2value(interp, yn, "y", &result);
* returns &yn[0]; * returns &yn[0];
* e = Jim_Nvp_name2value(interp, yn, "n", &result ); * e = Jim_Nvp_name2value(interp, yn, "n", &result);
* returns &yn[1]; * returns &yn[1];
* e = Jim_Nvp_name2value(interp, yn, "Blah", &result ); * e = Jim_Nvp_name2value(interp, yn, "Blah", &result);
* returns &yn[4]; * returns &yn[4];
* \endcode * \endcode
* *
@ -629,7 +629,7 @@ typedef struct {
#ifdef DOXYGEN #ifdef DOXYGEN
#define JIM_STATIC #define JIM_STATIC
#define JIM_API(X ) X #define JIM_API(X) X
#else #else
#ifndef __JIM_CORE__ #ifndef __JIM_CORE__
# if defined JIM_EMBEDDED # if defined JIM_EMBEDDED
@ -650,7 +650,7 @@ typedef struct {
#endif /* DOXYGEN */ #endif /* DOXYGEN */
/** Set the result - printf() style */ /** Set the result - printf() style */
JIM_STATIC int JIM_API(Jim_SetResult_sprintf )(Jim_Interp *p, const char *fmt, ... ); JIM_STATIC int JIM_API(Jim_SetResult_sprintf)(Jim_Interp *p, const char *fmt, ...);
/* Memory allocation */ /* Memory allocation */
JIM_STATIC void * JIM_API(Jim_Alloc) (int size); JIM_STATIC void * JIM_API(Jim_Alloc) (int size);
@ -660,7 +660,7 @@ JIM_STATIC char * JIM_API(Jim_StrDup) (const char *s);
/* evaluation */ /* evaluation */
JIM_STATIC int JIM_API(Jim_Eval)(Jim_Interp *interp, const char *script); JIM_STATIC int JIM_API(Jim_Eval)(Jim_Interp *interp, const char *script);
/* in C code, you can do this and get better error messages */ /* in C code, you can do this and get better error messages */
/* Jim_Eval_Named(interp, "some tcl commands", __FILE__, __LINE__ ); */ /* Jim_Eval_Named(interp, "some tcl commands", __FILE__, __LINE__); */
JIM_STATIC int JIM_API(Jim_Eval_Named)(Jim_Interp *interp, const char *script,const char *filename, int lineno); JIM_STATIC int JIM_API(Jim_Eval_Named)(Jim_Interp *interp, const char *script,const char *filename, int lineno);
JIM_STATIC int JIM_API(Jim_EvalGlobal)(Jim_Interp *interp, const char *script); JIM_STATIC int JIM_API(Jim_EvalGlobal)(Jim_Interp *interp, const char *script);
JIM_STATIC int JIM_API(Jim_EvalFile)(Jim_Interp *interp, const char *filename); JIM_STATIC int JIM_API(Jim_EvalFile)(Jim_Interp *interp, const char *filename);
@ -721,7 +721,7 @@ JIM_STATIC Jim_Obj * JIM_API(Jim_NewStringObjNoAlloc) (Jim_Interp *interp,
JIM_STATIC void JIM_API(Jim_AppendString) (Jim_Interp *interp, Jim_Obj *objPtr, JIM_STATIC void JIM_API(Jim_AppendString) (Jim_Interp *interp, Jim_Obj *objPtr,
const char *str, int len); const char *str, int len);
JIM_STATIC void JIM_API(Jim_AppendString_sprintf) (Jim_Interp *interp, Jim_Obj *objPtr, JIM_STATIC void JIM_API(Jim_AppendString_sprintf) (Jim_Interp *interp, Jim_Obj *objPtr,
const char *fmt, ... ); const char *fmt, ...);
JIM_STATIC void JIM_API(Jim_AppendObj) (Jim_Interp *interp, Jim_Obj *objPtr, JIM_STATIC void JIM_API(Jim_AppendObj) (Jim_Interp *interp, Jim_Obj *objPtr,
Jim_Obj *appendObjPtr); Jim_Obj *appendObjPtr);
JIM_STATIC void JIM_API(Jim_AppendStrings) (Jim_Interp *interp, JIM_STATIC void JIM_API(Jim_AppendStrings) (Jim_Interp *interp,
@ -911,31 +911,31 @@ JIM_STATIC int JIM_API(Jim_InteractivePrompt) (Jim_Interp *interp);
JIM_STATIC void JIM_API(Jim_Panic) (Jim_Interp *interp, const char *fmt, ...); JIM_STATIC void JIM_API(Jim_Panic) (Jim_Interp *interp, const char *fmt, ...);
/* Jim's STDIO */ /* Jim's STDIO */
JIM_STATIC int JIM_API(Jim_fprintf )(Jim_Interp *interp, void *cookie, const char *fmt, ... ); JIM_STATIC int JIM_API(Jim_fprintf)(Jim_Interp *interp, void *cookie, const char *fmt, ...);
JIM_STATIC int JIM_API(Jim_vfprintf )(Jim_Interp *interp, void *cookie, const char *fmt, va_list ap ); JIM_STATIC int JIM_API(Jim_vfprintf)(Jim_Interp *interp, void *cookie, const char *fmt, va_list ap);
JIM_STATIC size_t JIM_API(Jim_fwrite )(Jim_Interp *interp, const void *ptr, size_t size, size_t nmeb, void *cookie ); JIM_STATIC size_t JIM_API(Jim_fwrite)(Jim_Interp *interp, const void *ptr, size_t size, size_t nmeb, void *cookie);
JIM_STATIC size_t JIM_API(Jim_fread )(Jim_Interp *interp, void *ptr, size_t size, size_t nmeb, void *cookie ); JIM_STATIC size_t JIM_API(Jim_fread)(Jim_Interp *interp, void *ptr, size_t size, size_t nmeb, void *cookie);
JIM_STATIC int JIM_API(Jim_fflush )(Jim_Interp *interp, void *cookie ); JIM_STATIC int JIM_API(Jim_fflush)(Jim_Interp *interp, void *cookie);
JIM_STATIC char * JIM_API(Jim_fgets )(Jim_Interp *interp, char *s, int size, void *cookie ); JIM_STATIC char * JIM_API(Jim_fgets)(Jim_Interp *interp, char *s, int size, void *cookie);
/* Name Value Pairs Operations */ /* Name Value Pairs Operations */
JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_name2value_simple)(const Jim_Nvp *nvp_table, const char *name ); JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_name2value_simple)(const Jim_Nvp *nvp_table, const char *name);
JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_name2value_nocase_simple)(const Jim_Nvp *nvp_table, const char *name ); JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_name2value_nocase_simple)(const Jim_Nvp *nvp_table, const char *name);
JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_value2name_simple)(const Jim_Nvp *nvp_table, int v ); JIM_STATIC Jim_Nvp *JIM_API(Jim_Nvp_value2name_simple)(const Jim_Nvp *nvp_table, int v);
JIM_STATIC int JIM_API(Jim_Nvp_name2value)(Jim_Interp *interp, const Jim_Nvp *nvp_table, const char *name, Jim_Nvp **result ); JIM_STATIC int JIM_API(Jim_Nvp_name2value)(Jim_Interp *interp, const Jim_Nvp *nvp_table, const char *name, Jim_Nvp **result);
JIM_STATIC int JIM_API(Jim_Nvp_name2value_nocase)(Jim_Interp *interp, const Jim_Nvp *nvp_table, const char *name, Jim_Nvp **result); JIM_STATIC int JIM_API(Jim_Nvp_name2value_nocase)(Jim_Interp *interp, const Jim_Nvp *nvp_table, const char *name, Jim_Nvp **result);
JIM_STATIC int JIM_API(Jim_Nvp_value2name)(Jim_Interp *interp, const Jim_Nvp *nvp_table, int value, Jim_Nvp **result ); JIM_STATIC int JIM_API(Jim_Nvp_value2name)(Jim_Interp *interp, const Jim_Nvp *nvp_table, int value, Jim_Nvp **result);
JIM_STATIC int JIM_API(Jim_Nvp_name2value_obj)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *name_obj, Jim_Nvp **result ); JIM_STATIC int JIM_API(Jim_Nvp_name2value_obj)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *name_obj, Jim_Nvp **result);
JIM_STATIC int JIM_API(Jim_Nvp_name2value_obj_nocase)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *name_obj, Jim_Nvp **result ); JIM_STATIC int JIM_API(Jim_Nvp_name2value_obj_nocase)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *name_obj, Jim_Nvp **result);
JIM_STATIC int JIM_API(Jim_Nvp_value2name_obj)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *value_obj, Jim_Nvp **result ); JIM_STATIC int JIM_API(Jim_Nvp_value2name_obj)(Jim_Interp *interp, const Jim_Nvp *nvp_table, Jim_Obj *value_obj, Jim_Nvp **result);
/** prints a nice 'unknown' parameter error message to the 'result' */ /** prints a nice 'unknown' parameter error message to the 'result' */
JIM_STATIC void JIM_API(Jim_SetResult_NvpUnknown)(Jim_Interp *interp, JIM_STATIC void JIM_API(Jim_SetResult_NvpUnknown)(Jim_Interp *interp,
Jim_Obj *param_name, Jim_Obj *param_name,
Jim_Obj *param_value, Jim_Obj *param_value,
const Jim_Nvp *nvp_table ); const Jim_Nvp *nvp_table);
/** Debug: convert argc/argv into a printable string for printf() debug /** Debug: convert argc/argv into a printable string for printf() debug
@ -950,12 +950,12 @@ JIM_STATIC void JIM_API(Jim_SetResult_NvpUnknown)(Jim_Interp *interp,
* *
* For example might want do this: * For example might want do this:
* \code * \code
* fp = fopen("some.file.log", "a" ); * fp = fopen("some.file.log", "a");
* fprintf(fp, "PARAMS are: %s\n", Jim_DebugArgvString(interp, argc, argv ) ); * fprintf(fp, "PARAMS are: %s\n", Jim_DebugArgvString(interp, argc, argv));
* fclose(fp); * fclose(fp);
* \endcode * \endcode
*/ */
JIM_STATIC const char *JIM_API(Jim_Debug_ArgvString )(Jim_Interp *interp, int argc, Jim_Obj *const *argv ); JIM_STATIC const char *JIM_API(Jim_Debug_ArgvString)(Jim_Interp *interp, int argc, Jim_Obj *const *argv);
/** A TCL -ish GetOpt like code. /** A TCL -ish GetOpt like code.
@ -983,33 +983,33 @@ typedef struct jim_getopt {
* \code * \code
* Jim_GetOptInfo goi; * Jim_GetOptInfo goi;
* *
* Jim_GetOpt_Setup(&goi, interp, argc, argv ); * Jim_GetOpt_Setup(&goi, interp, argc, argv);
* *
* while (goi.argc ){ * while (goi.argc){
* e = Jim_GetOpt_Nvp(&goi, nvp_options, &n ); * e = Jim_GetOpt_Nvp(&goi, nvp_options, &n);
* if (e != JIM_OK ){ * if (e != JIM_OK){
* Jim_GetOpt_NvpUnknown(&goi, nvp_options, 0 ); * Jim_GetOpt_NvpUnknown(&goi, nvp_options, 0);
* return e; * return e;
* } * }
* *
* switch (n->value ){ * switch (n->value){
* case ALIVE: * case ALIVE:
* printf("Option ALIVE specified\n"); * printf("Option ALIVE specified\n");
* break; * break;
* case FIRST: * case FIRST:
* if (goi.argc < 1 ){ * if (goi.argc < 1){
* .. not enough args error .. * .. not enough args error ..
* } * }
* Jim_GetOpt_String(&goi, &cp, NULL ); * Jim_GetOpt_String(&goi, &cp, NULL);
* printf("FIRSTNAME: %s\n", cp ); * printf("FIRSTNAME: %s\n", cp);
* case AGE: * case AGE:
* Jim_GetOpt_Wide(&goi, &w ); * Jim_GetOpt_Wide(&goi, &w);
* printf("AGE: %d\n", (int)(w) ); * printf("AGE: %d\n", (int)(w));
* break; * break;
* case POLITICS: * case POLITICS:
* e = Jim_GetOpt_Nvp(&goi, nvp_politics, &n ); * e = Jim_GetOpt_Nvp(&goi, nvp_politics, &n);
* if (e != JIM_OK ){ * if (e != JIM_OK){
* Jim_GetOpt_NvpUnknown(&goi, nvp_politics, 1 ); * Jim_GetOpt_NvpUnknown(&goi, nvp_politics, 1);
* return e; * return e;
* } * }
* } * }
@ -1029,20 +1029,20 @@ typedef struct jim_getopt {
* \code * \code
* Jim_GetOptInfo goi; * Jim_GetOptInfo goi;
* *
* Jim_GetOptSetup(&goi, interp, argc, argv ); * Jim_GetOptSetup(&goi, interp, argc, argv);
* \endcode * \endcode
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Setup )(Jim_GetOptInfo *goi, JIM_STATIC int JIM_API(Jim_GetOpt_Setup)(Jim_GetOptInfo *goi,
Jim_Interp *interp, Jim_Interp *interp,
int argc, int argc,
Jim_Obj * const * argv ); Jim_Obj * const * argv);
/** Debug - Dump parameters to stderr /** Debug - Dump parameters to stderr
* \param goi - current parameters * \param goi - current parameters
*/ */
JIM_STATIC void JIM_API(Jim_GetOpt_Debug )(Jim_GetOptInfo *goi); JIM_STATIC void JIM_API(Jim_GetOpt_Debug)(Jim_GetOptInfo *goi);
@ -1052,7 +1052,7 @@ JIM_STATIC void JIM_API(Jim_GetOpt_Debug )(Jim_GetOptInfo *goi);
* \param puthere - where param is put * \param puthere - where param is put
* *
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Obj)(Jim_GetOptInfo *goi, Jim_Obj **puthere ); JIM_STATIC int JIM_API(Jim_GetOpt_Obj)(Jim_GetOptInfo *goi, Jim_Obj **puthere);
/** Remove argv[0] as string. /** Remove argv[0] as string.
* *
@ -1060,7 +1060,7 @@ JIM_STATIC int JIM_API(Jim_GetOpt_Obj)(Jim_GetOptInfo *goi, Jim_Obj **puthere );
* \param puthere - where param is put * \param puthere - where param is put
* \param len - return its length * \param len - return its length
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_String )(Jim_GetOptInfo *goi, char **puthere, int *len ); JIM_STATIC int JIM_API(Jim_GetOpt_String)(Jim_GetOptInfo *goi, char **puthere, int *len);
/** Remove argv[0] as double. /** Remove argv[0] as double.
* *
@ -1068,14 +1068,14 @@ JIM_STATIC int JIM_API(Jim_GetOpt_String )(Jim_GetOptInfo *goi, char **puthere,
* \param puthere - where param is put. * \param puthere - where param is put.
* *
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Double )(Jim_GetOptInfo *goi, double *puthere ); JIM_STATIC int JIM_API(Jim_GetOpt_Double)(Jim_GetOptInfo *goi, double *puthere);
/** Remove argv[0] as wide. /** Remove argv[0] as wide.
* *
* \param goi - get opt info * \param goi - get opt info
* \param puthere - where param is put. * \param puthere - where param is put.
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Wide )(Jim_GetOptInfo *goi, jim_wide *puthere ); JIM_STATIC int JIM_API(Jim_GetOpt_Wide)(Jim_GetOptInfo *goi, jim_wide *puthere);
/** Remove argv[0] as NVP. /** Remove argv[0] as NVP.
* *
@ -1084,7 +1084,7 @@ JIM_STATIC int JIM_API(Jim_GetOpt_Wide )(Jim_GetOptInfo *goi, jim_wide *puthere
* \param puthere - where param is put. * \param puthere - where param is put.
* *
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Nvp)(Jim_GetOptInfo *goi, const Jim_Nvp *lookup, Jim_Nvp **puthere ); JIM_STATIC int JIM_API(Jim_GetOpt_Nvp)(Jim_GetOptInfo *goi, const Jim_Nvp *lookup, Jim_Nvp **puthere);
/** Create an appropriate error message for an NVP. /** Create an appropriate error message for an NVP.
* *
@ -1102,25 +1102,25 @@ JIM_STATIC int JIM_API(Jim_GetOpt_Nvp)(Jim_GetOptInfo *goi, const Jim_Nvp *looku
* Example: * Example:
* \code * \code
* *
* while (goi.argc ){ * while (goi.argc){
* // Get the next option * // Get the next option
* e = Jim_GetOpt_Nvp(&goi, cmd_options, &n ); * e = Jim_GetOpt_Nvp(&goi, cmd_options, &n);
* if (e != JIM_OK ){ * if (e != JIM_OK){
* // option was not recognized * // option was not recognized
* // pass 'hadprefix = 0' because there is no prefix * // pass 'hadprefix = 0' because there is no prefix
* Jim_GetOpt_NvpUnknown(&goi, cmd_options, 0 ); * Jim_GetOpt_NvpUnknown(&goi, cmd_options, 0);
* return e; * return e;
* } * }
* *
* switch (n->value ){ * switch (n->value){
* case OPT_SEX: * case OPT_SEX:
* // handle: --sex male | female | lots | needmore * // handle: --sex male | female | lots | needmore
* e = Jim_GetOpt_Nvp(&goi, &nvp_sex, &n ); * e = Jim_GetOpt_Nvp(&goi, &nvp_sex, &n);
* if (e != JIM_OK ){ * if (e != JIM_OK){
* Jim_GetOpt_NvpUnknown(&ogi, nvp_sex, 1 ); * Jim_GetOpt_NvpUnknown(&ogi, nvp_sex, 1);
* return e; * return e;
* } * }
* printf("Code: (%d) is %s\n", n->value, n->name ); * printf("Code: (%d) is %s\n", n->value, n->name);
* break; * break;
* case ...: * case ...:
* [snip] * [snip]
@ -1129,7 +1129,7 @@ JIM_STATIC int JIM_API(Jim_GetOpt_Nvp)(Jim_GetOptInfo *goi, const Jim_Nvp *looku
* \endcode * \endcode
* *
*/ */
JIM_STATIC void JIM_API(Jim_GetOpt_NvpUnknown)(Jim_GetOptInfo *goi, const Jim_Nvp *lookup, int hadprefix ); JIM_STATIC void JIM_API(Jim_GetOpt_NvpUnknown)(Jim_GetOptInfo *goi, const Jim_Nvp *lookup, int hadprefix);
/** Remove argv[0] as Enum /** Remove argv[0] as Enum
@ -1139,7 +1139,7 @@ JIM_STATIC void JIM_API(Jim_GetOpt_NvpUnknown)(Jim_GetOptInfo *goi, const Jim_Nv
* \param puthere - where param is put. * \param puthere - where param is put.
* *
*/ */
JIM_STATIC int JIM_API(Jim_GetOpt_Enum)(Jim_GetOptInfo *goi, const char * const * lookup, int *puthere ); JIM_STATIC int JIM_API(Jim_GetOpt_Enum)(Jim_GetOptInfo *goi, const char * const * lookup, int *puthere);
#undef JIM_STATIC #undef JIM_STATIC
@ -1272,12 +1272,12 @@ static void Jim_InitExtension(Jim_Interp *interp)
JIM_GET_API(StackPop); JIM_GET_API(StackPop);
JIM_GET_API(StackPeek); JIM_GET_API(StackPeek);
JIM_GET_API(FreeStackElements); JIM_GET_API(FreeStackElements);
JIM_GET_API(fprintf ); JIM_GET_API(fprintf);
JIM_GET_API(vfprintf ); JIM_GET_API(vfprintf);
JIM_GET_API(fwrite ); JIM_GET_API(fwrite);
JIM_GET_API(fread ); JIM_GET_API(fread);
JIM_GET_API(fflush ); JIM_GET_API(fflush);
JIM_GET_API(fgets ); JIM_GET_API(fgets);
JIM_GET_API(Nvp_name2value); JIM_GET_API(Nvp_name2value);
JIM_GET_API(Nvp_name2value_nocase); JIM_GET_API(Nvp_name2value_nocase);
JIM_GET_API(Nvp_name2value_simple); JIM_GET_API(Nvp_name2value_simple);

View File

@ -85,7 +85,7 @@ extern int debug_level;
/* Avoid fn call and building parameter list if we're not outputting the information. /* Avoid fn call and building parameter list if we're not outputting the information.
* Matters on feeble CPUs for DEBUG/INFO statements that are involved frequently */ * Matters on feeble CPUs for DEBUG/INFO statements that are involved frequently */
#define LOG_LEVEL_IS(FOO ) ((debug_level) >= (FOO)) #define LOG_LEVEL_IS(FOO) ((debug_level) >= (FOO))
#define LOG_DEBUG(expr ...) \ #define LOG_DEBUG(expr ...) \
((debug_level >= LOG_LVL_DEBUG) ? log_printf_lf (LOG_LVL_DEBUG, __FILE__, __LINE__, __FUNCTION__, expr) , 0 : 0) ((debug_level >= LOG_LVL_DEBUG) ? log_printf_lf (LOG_LVL_DEBUG, __FILE__, __LINE__, __FUNCTION__, expr) , 0 : 0)

View File

@ -161,7 +161,7 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time
#endif /* _WIN32 */ #endif /* _WIN32 */
/* generic socket functions for Windows and Posix */ /* generic socket functions for Windows and Posix */
static __inline int write_socket(int handle, const void *buffer, unsigned int count ) static __inline int write_socket(int handle, const void *buffer, unsigned int count)
{ {
#ifdef _WIN32 #ifdef _WIN32
return send(handle, buffer, count, 0); return send(handle, buffer, count, 0);
@ -170,7 +170,7 @@ static __inline int write_socket(int handle, const void *buffer, unsigned int co
#endif #endif
} }
static __inline int read_socket(int handle, void *buffer, unsigned int count ) static __inline int read_socket(int handle, void *buffer, unsigned int count)
{ {
#ifdef _WIN32 #ifdef _WIN32
return recv(handle, buffer, count, 0); return recv(handle, buffer, count, 0);
@ -192,7 +192,7 @@ static __inline void socket_nonblock(int fd)
{ {
#ifdef _WIN32 #ifdef _WIN32
unsigned long nonblock = 1; unsigned long nonblock = 1;
ioctlsocket(fd, FIONBIO, &nonblock ); ioctlsocket(fd, FIONBIO, &nonblock);
#else #else
int oldopts = fcntl(fd, F_GETFL, 0); int oldopts = fcntl(fd, F_GETFL, 0);
fcntl(fd, F_SETFL, oldopts | O_NONBLOCK); fcntl(fd, F_SETFL, oldopts | O_NONBLOCK);

View File

@ -395,20 +395,20 @@ int amt_jtagaccel_get_giveio_access(void)
OSVERSIONINFO version; OSVERSIONINFO version;
version.dwOSVersionInfoSize = sizeof version; version.dwOSVersionInfoSize = sizeof version;
if (!GetVersionEx(&version )) { if (!GetVersionEx(&version)) {
errno = EINVAL; errno = EINVAL;
return -1; return -1;
} }
if (version.dwPlatformId != VER_PLATFORM_WIN32_NT) if (version.dwPlatformId != VER_PLATFORM_WIN32_NT)
return 0; return 0;
h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ); h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (h == INVALID_HANDLE_VALUE) { if (h == INVALID_HANDLE_VALUE) {
errno = ENODEV; errno = ENODEV;
return -1; return -1;
} }
CloseHandle(h ); CloseHandle(h);
return 0; return 0;
} }

View File

@ -266,7 +266,7 @@ int bitbang_execute_queue(void)
break; break;
case JTAG_RUNTEST: case JTAG_RUNTEST:
#ifdef _DEBUG_JTAG_IO_ #ifdef _DEBUG_JTAG_IO_
LOG_DEBUG("runtest %i cycles, end in %s", cmd->cmd.runtest->num_cycles, tap_state_name(cmd->cmd.runtest->end_state) ); LOG_DEBUG("runtest %i cycles, end in %s", cmd->cmd.runtest->num_cycles, tap_state_name(cmd->cmd.runtest->end_state));
#endif #endif
bitbang_end_state(cmd->cmd.runtest->end_state); bitbang_end_state(cmd->cmd.runtest->end_state);
bitbang_runtest(cmd->cmd.runtest->num_cycles); bitbang_runtest(cmd->cmd.runtest->num_cycles);
@ -295,7 +295,7 @@ int bitbang_execute_queue(void)
break; break;
case JTAG_SCAN: case JTAG_SCAN:
#ifdef _DEBUG_JTAG_IO_ #ifdef _DEBUG_JTAG_IO_
LOG_DEBUG("%s scan end in %s", (cmd->cmd.scan->ir_scan) ? "IR" : "DR", tap_state_name(cmd->cmd.scan->end_state) ); LOG_DEBUG("%s scan end in %s", (cmd->cmd.scan->ir_scan) ? "IR" : "DR", tap_state_name(cmd->cmd.scan->end_state));
#endif #endif
bitbang_end_state(cmd->cmd.scan->end_state); bitbang_end_state(cmd->cmd.scan->end_state);
scan_size = jtag_build_buffer(cmd->cmd.scan, &buffer); scan_size = jtag_build_buffer(cmd->cmd.scan, &buffer);

View File

@ -83,7 +83,7 @@ void bitq_in_proc(void)
bitq_in_bufsize *= 2; bitq_in_bufsize *= 2;
} }
/* if necessary, allocate buffer and check for malloc error */ /* if necessary, allocate buffer and check for malloc error */
if (bitq_in_buffer == NULL && (bitq_in_buffer = malloc(bitq_in_bufsize) ) == NULL) if (bitq_in_buffer == NULL && (bitq_in_buffer = malloc(bitq_in_bufsize)) == NULL)
{ {
LOG_ERROR("malloc error"); LOG_ERROR("malloc error");
exit(-1); exit(-1);
@ -95,7 +95,7 @@ void bitq_in_proc(void)
/* field scanning */ /* field scanning */
while (bitq_in_state.bit_pos < field->num_bits) while (bitq_in_state.bit_pos < field->num_bits)
{ {
if ((tdo = bitq_interface->in() ) < 0 ) if ((tdo = bitq_interface->in()) < 0)
{ {
#ifdef _DEBUG_JTAG_IO_ #ifdef _DEBUG_JTAG_IO_
LOG_DEBUG("bitq in EOF"); LOG_DEBUG("bitq in EOF");
@ -131,7 +131,7 @@ void bitq_io(int tms, int tdi, int tdo_req)
{ {
bitq_interface->out(tms, tdi, tdo_req); bitq_interface->out(tms, tdi, tdo_req);
/* check and process the input queue */ /* check and process the input queue */
if (bitq_interface->in_rdy() ) if (bitq_interface->in_rdy())
bitq_in_proc(); bitq_in_proc();
} }
@ -184,14 +184,14 @@ void bitq_path_move(pathmove_command_t* cmd)
else else
{ {
LOG_ERROR("BUG: %s -> %s isn't a valid TAP transition", tap_state_name( LOG_ERROR("BUG: %s -> %s isn't a valid TAP transition", tap_state_name(
tap_get_state() ), tap_state_name(cmd->path[i]) ); tap_get_state()), tap_state_name(cmd->path[i]));
exit(-1); exit(-1);
} }
tap_set_state(cmd->path[i]); tap_set_state(cmd->path[i]);
} }
tap_set_end_state(tap_get_state() ); tap_set_end_state(tap_get_state());
} }
@ -208,8 +208,8 @@ void bitq_runtest(int num_cycles)
bitq_io(0, 0, 0); bitq_io(0, 0, 0);
/* finish in end_state */ /* finish in end_state */
if (tap_get_state() != tap_get_end_state() ) if (tap_get_state() != tap_get_end_state())
bitq_state_move(tap_get_end_state() ); bitq_state_move(tap_get_end_state());
} }
@ -241,7 +241,7 @@ void bitq_scan_field(scan_field_t* field, int pause)
out_ptr = field->out_value; out_ptr = field->out_value;
for (bit_cnt = field->num_bits; bit_cnt > 1; bit_cnt--) for (bit_cnt = field->num_bits; bit_cnt > 1; bit_cnt--)
{ {
bitq_io(0, ((*out_ptr) & out_mask ) != 0, tdo_req); bitq_io(0, ((*out_ptr) & out_mask) != 0, tdo_req);
if (out_mask == 0x80) if (out_mask == 0x80)
{ {
out_mask = 0x01; out_mask = 0x01;
@ -251,7 +251,7 @@ void bitq_scan_field(scan_field_t* field, int pause)
out_mask <<= 1; out_mask <<= 1;
} }
bitq_io(pause, ((*out_ptr) & out_mask ) != 0, tdo_req); bitq_io(pause, ((*out_ptr) & out_mask) != 0, tdo_req);
} }
if (pause) if (pause)
@ -298,12 +298,12 @@ int bitq_execute_queue(void)
#ifdef _DEBUG_JTAG_IO_ #ifdef _DEBUG_JTAG_IO_
LOG_DEBUG("reset trst: %i srst %i", cmd->cmd.reset->trst, cmd->cmd.reset->srst); LOG_DEBUG("reset trst: %i srst %i", cmd->cmd.reset->trst, cmd->cmd.reset->srst);
#endif #endif
if ((cmd->cmd.reset->trst == 1) || (cmd->cmd.reset->srst && (jtag_get_reset_config() & RESET_SRST_PULLS_TRST) ) ) if ((cmd->cmd.reset->trst == 1) || (cmd->cmd.reset->srst && (jtag_get_reset_config() & RESET_SRST_PULLS_TRST)))
{ {
tap_set_state(TAP_RESET); tap_set_state(TAP_RESET);
} }
bitq_interface->reset(cmd->cmd.reset->trst, cmd->cmd.reset->srst); bitq_interface->reset(cmd->cmd.reset->trst, cmd->cmd.reset->srst);
if (bitq_interface->in_rdy() ) if (bitq_interface->in_rdy())
bitq_in_proc(); bitq_in_proc();
break; break;
@ -320,7 +320,7 @@ int bitq_execute_queue(void)
LOG_DEBUG("statemove end in %i", cmd->cmd.statemove->end_state); LOG_DEBUG("statemove end in %i", cmd->cmd.statemove->end_state);
#endif #endif
bitq_end_state(cmd->cmd.statemove->end_state); bitq_end_state(cmd->cmd.statemove->end_state);
bitq_state_move(tap_get_end_state() ); /* uncoditional TAP move */ bitq_state_move(tap_get_end_state()); /* uncoditional TAP move */
break; break;
case JTAG_PATHMOVE: case JTAG_PATHMOVE:
@ -341,8 +341,8 @@ int bitq_execute_queue(void)
#endif #endif
bitq_end_state(cmd->cmd.scan->end_state); bitq_end_state(cmd->cmd.scan->end_state);
bitq_scan(cmd->cmd.scan); bitq_scan(cmd->cmd.scan);
if (tap_get_state() != tap_get_end_state() ) if (tap_get_state() != tap_get_end_state())
bitq_state_move(tap_get_end_state() ); bitq_state_move(tap_get_end_state());
break; break;
case JTAG_SLEEP: case JTAG_SLEEP:
@ -350,7 +350,7 @@ int bitq_execute_queue(void)
LOG_DEBUG("sleep %i", cmd->cmd.sleep->us); LOG_DEBUG("sleep %i", cmd->cmd.sleep->us);
#endif #endif
bitq_interface->sleep(cmd->cmd.sleep->us); bitq_interface->sleep(cmd->cmd.sleep->us);
if (bitq_interface->in_rdy() ) if (bitq_interface->in_rdy())
bitq_in_proc(); bitq_in_proc();
break; break;

View File

@ -212,7 +212,7 @@ int jtag_build_buffer(const scan_command_t *cmd, uint8_t **buffer)
} }
#ifdef _DEBUG_JTAG_IO_ #ifdef _DEBUG_JTAG_IO_
//LOG_DEBUG("bit_count totalling: %i", bit_count ); //LOG_DEBUG("bit_count totalling: %i", bit_count);
#endif #endif
return bit_count; return bit_count;

View File

@ -505,16 +505,16 @@ int jtag_add_statemove(tap_state_t goal_state)
LOG_DEBUG("cur_state=%s goal_state=%s", LOG_DEBUG("cur_state=%s goal_state=%s",
tap_state_name(cur_state), tap_state_name(cur_state),
tap_state_name(goal_state) ); tap_state_name(goal_state));
if (goal_state == cur_state ) if (goal_state == cur_state)
; /* nothing to do */ ; /* nothing to do */
else if (goal_state == TAP_RESET ) else if (goal_state == TAP_RESET)
{ {
jtag_add_tlr(); jtag_add_tlr();
} }
else if (tap_is_state_stable(cur_state) && tap_is_state_stable(goal_state) ) else if (tap_is_state_stable(cur_state) && tap_is_state_stable(goal_state))
{ {
unsigned tms_bits = tap_get_tms_path(cur_state, goal_state); unsigned tms_bits = tap_get_tms_path(cur_state, goal_state);
unsigned tms_count = tap_get_tms_path_len(cur_state, goal_state); unsigned tms_count = tap_get_tms_path_len(cur_state, goal_state);
@ -532,7 +532,7 @@ int jtag_add_statemove(tap_state_t goal_state)
jtag_add_pathmove(tms_count, moves); jtag_add_pathmove(tms_count, moves);
} }
else if (tap_state_transition(cur_state, true) == goal_state else if (tap_state_transition(cur_state, true) == goal_state
|| tap_state_transition(cur_state, false) == goal_state ) || tap_state_transition(cur_state, false) == goal_state)
{ {
jtag_add_pathmove(1, &goal_state); jtag_add_pathmove(1, &goal_state);
} }
@ -868,7 +868,7 @@ static void jtag_examine_chain_display(enum log_levels level, const char *msg,
(unsigned int)idcode, (unsigned int)idcode,
(unsigned int)EXTRACT_MFG(idcode), (unsigned int)EXTRACT_MFG(idcode),
(unsigned int)EXTRACT_PART(idcode), (unsigned int)EXTRACT_PART(idcode),
(unsigned int)EXTRACT_VER(idcode) ); (unsigned int)EXTRACT_VER(idcode));
} }
static bool jtag_idcode_is_final(uint32_t idcode) static bool jtag_idcode_is_final(uint32_t idcode)
@ -1026,7 +1026,7 @@ int jtag_validate_chain(void)
total_ir_length = 0; total_ir_length = 0;
for (;;){ for (;;){
tap = jtag_tap_next_enabled(tap); tap = jtag_tap_next_enabled(tap);
if (tap == NULL ){ if (tap == NULL){
break; break;
} }
total_ir_length += tap->ir_length; total_ir_length += tap->ir_length;
@ -1050,7 +1050,7 @@ int jtag_validate_chain(void)
int val; int val;
for (;;){ for (;;){
tap = jtag_tap_next_enabled(tap); tap = jtag_tap_next_enabled(tap);
if (tap == NULL ){ if (tap == NULL){
break; break;
} }
@ -1151,7 +1151,7 @@ static int jtag_init_inner(struct command_context_s *cmd_ctx)
LOG_DEBUG("Init JTAG chain"); LOG_DEBUG("Init JTAG chain");
tap = jtag_tap_next_enabled(NULL); tap = jtag_tap_next_enabled(NULL);
if (tap == NULL ){ if (tap == NULL){
LOG_ERROR("There are no enabled taps?"); LOG_ERROR("There are no enabled taps?");
return ERROR_JTAG_INIT_FAILED; return ERROR_JTAG_INIT_FAILED;
} }

View File

@ -418,7 +418,7 @@ int interface_jtag_add_runtest(int num_cycles, tap_state_t state)
return ERROR_OK; return ERROR_OK;
} }
int interface_jtag_add_clocks(int num_cycles ) int interface_jtag_add_clocks(int num_cycles)
{ {
/* allocate memory for a new list member */ /* allocate memory for a new list member */
jtag_command_t * cmd = cmd_queue_alloc(sizeof(jtag_command_t)); jtag_command_t * cmd = cmd_queue_alloc(sizeof(jtag_command_t));

View File

@ -85,22 +85,22 @@ static int dummy_read(void)
static void dummy_write(int tck, int tms, int tdi) static void dummy_write(int tck, int tms, int tdi)
{ {
/* TAP standard: "state transitions occur on rising edge of clock" */ /* TAP standard: "state transitions occur on rising edge of clock" */
if (tck != dummy_clock ) if (tck != dummy_clock)
{ {
if (tck ) if (tck)
{ {
tap_state_t old_state = dummy_state; tap_state_t old_state = dummy_state;
dummy_state = tap_state_transition(old_state, tms ); dummy_state = tap_state_transition(old_state, tms);
if (old_state != dummy_state ) if (old_state != dummy_state)
{ {
if (clock_count ) if (clock_count)
{ {
LOG_DEBUG("dummy_tap: %d stable clocks", clock_count); LOG_DEBUG("dummy_tap: %d stable clocks", clock_count);
clock_count = 0; clock_count = 0;
} }
LOG_DEBUG("dummy_tap: %s", tap_state_name(dummy_state) ); LOG_DEBUG("dummy_tap: %s", tap_state_name(dummy_state));
#if defined(DEBUG) #if defined(DEBUG)
if (dummy_state == TAP_DRCAPTURE) if (dummy_state == TAP_DRCAPTURE)
@ -126,7 +126,7 @@ static void dummy_reset(int trst, int srst)
if (trst || (srst && (jtag_get_reset_config() & RESET_SRST_PULLS_TRST))) if (trst || (srst && (jtag_get_reset_config() & RESET_SRST_PULLS_TRST)))
dummy_state = TAP_RESET; dummy_state = TAP_RESET;
LOG_DEBUG("reset to: %s", tap_state_name(dummy_state) ); LOG_DEBUG("reset to: %s", tap_state_name(dummy_state));
} }
static int dummy_khz(int khz, int *jtag_speed) static int dummy_khz(int khz, int *jtag_speed)

View File

@ -1588,7 +1588,7 @@ static int ft2232_execute_pathmove(jtag_command_t *cmd)
DEBUG_JTAG_IO("pathmove: %i states, current: %s end: %s", num_states, DEBUG_JTAG_IO("pathmove: %i states, current: %s end: %s", num_states,
tap_state_name(tap_get_state()), tap_state_name(tap_get_state()),
tap_state_name(path[num_states-1]) tap_state_name(path[num_states-1])
); );
/* only send the maximum buffer size that FT2232C can handle */ /* only send the maximum buffer size that FT2232C can handle */
predicted_size = 3 * CEIL(num_states, 7); predicted_size = 3 * CEIL(num_states, 7);

View File

@ -422,20 +422,20 @@ static int gw16012_get_giveio_access(void)
OSVERSIONINFO version; OSVERSIONINFO version;
version.dwOSVersionInfoSize = sizeof version; version.dwOSVersionInfoSize = sizeof version;
if (!GetVersionEx(&version )) { if (!GetVersionEx(&version)) {
errno = EINVAL; errno = EINVAL;
return -1; return -1;
} }
if (version.dwPlatformId != VER_PLATFORM_WIN32_NT) if (version.dwPlatformId != VER_PLATFORM_WIN32_NT)
return 0; return 0;
h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ); h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (h == INVALID_HANDLE_VALUE) { if (h == INVALID_HANDLE_VALUE) {
errno = ENODEV; errno = ENODEV;
return -1; return -1;
} }
CloseHandle(h ); CloseHandle(h);
return 0; return 0;
} }
@ -524,7 +524,7 @@ static int gw16012_init_device(void)
LOG_WARNING("No gw16012 port specified, using default '0x378' (LPT1)"); LOG_WARNING("No gw16012 port specified, using default '0x378' (LPT1)");
} }
LOG_DEBUG("requesting privileges for parallel port 0x%lx...", (long unsigned)(gw16012_port) ); LOG_DEBUG("requesting privileges for parallel port 0x%lx...", (long unsigned)(gw16012_port));
#if PARPORT_USE_GIVEIO == 1 #if PARPORT_USE_GIVEIO == 1
if (gw16012_get_giveio_access() != 0) if (gw16012_get_giveio_access() != 0)
#else /* PARPORT_USE_GIVEIO */ #else /* PARPORT_USE_GIVEIO */

View File

@ -40,7 +40,7 @@
*/ */
static tap_state_t state_follower = TAP_RESET; static tap_state_t state_follower = TAP_RESET;
void tap_set_state_impl(tap_state_t new_state ) void tap_set_state_impl(tap_state_t new_state)
{ {
/* this is the state we think the TAPs are in now, was cur_state */ /* this is the state we think the TAPs are in now, was cur_state */
state_follower = new_state; state_follower = new_state;
@ -57,7 +57,7 @@ tap_state_t tap_get_state()
*/ */
static tap_state_t end_state_follower = TAP_RESET; static tap_state_t end_state_follower = TAP_RESET;
void tap_set_end_state(tap_state_t new_end_state ) void tap_set_end_state(tap_state_t new_end_state)
{ {
/* this is the state we think the TAPs will be in at completion of the /* this is the state we think the TAPs will be in at completion of the
current TAP operation, was end_state current TAP operation, was end_state
@ -71,13 +71,13 @@ tap_state_t tap_get_end_state()
} }
int tap_move_ndx(tap_state_t astate ) int tap_move_ndx(tap_state_t astate)
{ {
/* given a stable state, return the index into the tms_seqs[] array within tap_get_tms_path() */ /* given a stable state, return the index into the tms_seqs[] array within tap_get_tms_path() */
int ndx; int ndx;
switch (astate ) switch (astate)
{ {
case TAP_RESET: ndx = 0; break; case TAP_RESET: ndx = 0; break;
case TAP_DRSHIFT: ndx = 2; break; case TAP_DRSHIFT: ndx = 2; break;
@ -86,7 +86,7 @@ int tap_move_ndx(tap_state_t astate )
case TAP_IRSHIFT: ndx = 4; break; case TAP_IRSHIFT: ndx = 4; break;
case TAP_IRPAUSE: ndx = 5; break; case TAP_IRPAUSE: ndx = 5; break;
default: default:
LOG_ERROR("fatal: unstable state \"%s\" used in tap_move_ndx()", tap_state_name(astate) ); LOG_ERROR("fatal: unstable state \"%s\" used in tap_move_ndx()", tap_state_name(astate));
exit(1); exit(1);
} }
@ -193,13 +193,13 @@ typedef const struct tms_sequences tms_table[6][6];
static tms_table *tms_seqs=&short_tms_seqs; static tms_table *tms_seqs=&short_tms_seqs;
int tap_get_tms_path(tap_state_t from, tap_state_t to ) int tap_get_tms_path(tap_state_t from, tap_state_t to)
{ {
return (*tms_seqs)[tap_move_ndx(from)][tap_move_ndx(to)].bits; return (*tms_seqs)[tap_move_ndx(from)][tap_move_ndx(to)].bits;
} }
int tap_get_tms_path_len(tap_state_t from, tap_state_t to ) int tap_get_tms_path_len(tap_state_t from, tap_state_t to)
{ {
return (*tms_seqs)[tap_move_ndx(from)][tap_move_ndx(to)].bit_count; return (*tms_seqs)[tap_move_ndx(from)][tap_move_ndx(to)].bit_count;
} }
@ -212,7 +212,7 @@ bool tap_is_state_stable(tap_state_t astate)
/* A switch () is used because it is symbol dependent /* A switch () is used because it is symbol dependent
(not value dependent like an array), and can also check bounds. (not value dependent like an array), and can also check bounds.
*/ */
switch (astate ) switch (astate)
{ {
case TAP_RESET: case TAP_RESET:
case TAP_IDLE: case TAP_IDLE:
@ -278,7 +278,7 @@ tap_state_t tap_state_transition(tap_state_t cur_state, bool tms)
new_state = TAP_IREXIT2; new_state = TAP_IREXIT2;
break; break;
default: default:
LOG_ERROR("fatal: invalid argument cur_state=%d", cur_state ); LOG_ERROR("fatal: invalid argument cur_state=%d", cur_state);
exit(1); exit(1);
break; break;
} }
@ -318,7 +318,7 @@ tap_state_t tap_state_transition(tap_state_t cur_state, bool tms)
new_state = TAP_IRPAUSE; new_state = TAP_IRPAUSE;
break; break;
default: default:
LOG_ERROR("fatal: invalid argument cur_state=%d", cur_state ); LOG_ERROR("fatal: invalid argument cur_state=%d", cur_state);
exit(1); exit(1);
break; break;
} }
@ -331,7 +331,7 @@ const char* tap_state_name(tap_state_t state)
{ {
const char* ret; const char* ret;
switch (state ) switch (state)
{ {
case TAP_RESET: ret = "RESET"; break; case TAP_RESET: ret = "RESET"; break;
case TAP_IDLE: ret = "RUN/IDLE"; break; case TAP_IDLE: ret = "RUN/IDLE"; break;
@ -359,9 +359,9 @@ tap_state_t tap_state_by_name(const char *name)
{ {
tap_state_t x; tap_state_t x;
for (x = 0 ; x < TAP_NUM_STATES ; x++ ){ for (x = 0 ; x < TAP_NUM_STATES ; x++){
/* be nice to the human */ /* be nice to the human */
if (0 == strcasecmp(name, tap_state_name(x) ) ){ if (0 == strcasecmp(name, tap_state_name(x))){
return x; return x;
} }
} }

View File

@ -59,7 +59,7 @@ void tap_set_state_impl(tap_state_t new_state);
#if defined(_DEBUG_JTAG_IO_) #if defined(_DEBUG_JTAG_IO_)
#define tap_set_state(new_state) \ #define tap_set_state(new_state) \
do { \ do { \
LOG_DEBUG("tap_set_state(%s)", tap_state_name(new_state) ); \ LOG_DEBUG("tap_set_state(%s)", tap_state_name(new_state)); \
tap_set_state_impl(new_state); \ tap_set_state_impl(new_state); \
} while (0) } while (0)
#else #else

View File

@ -263,20 +263,20 @@ static int parport_get_giveio_access(void)
OSVERSIONINFO version; OSVERSIONINFO version;
version.dwOSVersionInfoSize = sizeof version; version.dwOSVersionInfoSize = sizeof version;
if (!GetVersionEx(&version )) { if (!GetVersionEx(&version)) {
errno = EINVAL; errno = EINVAL;
return -1; return -1;
} }
if (version.dwPlatformId != VER_PLATFORM_WIN32_NT) if (version.dwPlatformId != VER_PLATFORM_WIN32_NT)
return 0; return 0;
h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ); h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (h == INVALID_HANDLE_VALUE) { if (h == INVALID_HANDLE_VALUE) {
errno = ENODEV; errno = ENODEV;
return -1; return -1;
} }
CloseHandle(h ); CloseHandle(h);
return 0; return 0;
} }

View File

@ -41,11 +41,11 @@
#define DTC_CMD_SHIFT_TMS_TDI_BIT_PAIR(tms, tdi, tdo) ((0x8 << 4) | (\ #define DTC_CMD_SHIFT_TMS_TDI_BIT_PAIR(tms, tdi, tdo) ((0x8 << 4) | (\
(tms) ? (1 << 0) : 0 \ (tms) ? (1 << 0) : 0 \
) | (\ ) | (\
(tdi) ? (1 << 1) : 0 \ (tdi) ? (1 << 1) : 0 \
) | (\ ) | (\
(tdo) ? (1 << 3) : 0 \ (tdo) ? (1 << 3) : 0 \
)) ))
/* Single bit shift. */ /* Single bit shift. */
/* tms and tdi are the levels shifted out on TMS and TDI, respectively. */ /* tms and tdi are the levels shifted out on TMS and TDI, respectively. */
/* tdo indicates whether a byte will be returned in the reply buffer with its least significant bit set to reflect TDO */ /* tdo indicates whether a byte will be returned in the reply buffer with its least significant bit set to reflect TDO */

View File

@ -137,14 +137,14 @@ ep1_generic_commandl(
usb_buffer_p, usb_buffer_p,
0, 0,
sizeof(usb_buffer) - (usb_buffer_p - usb_buffer) sizeof(usb_buffer) - (usb_buffer_p - usb_buffer)
); );
usb_ret = usb_bulk_write( usb_ret = usb_bulk_write(
pHDev, pHDev,
USB_EP1OUT_ADDR, USB_EP1OUT_ADDR,
(char *)usb_buffer, sizeof(usb_buffer), (char *)usb_buffer, sizeof(usb_buffer),
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
return(usb_ret); return(usb_ret);
} }
@ -170,7 +170,7 @@ ep1_memory_read(
usb_buffer + 4, usb_buffer + 4,
0, 0,
sizeof(usb_buffer) - 4 sizeof(usb_buffer) - 4
); );
remain = length; remain = length;
count = 0; count = 0;
@ -190,7 +190,7 @@ ep1_memory_read(
pHDev, USB_EP1OUT_ADDR, pHDev, USB_EP1OUT_ADDR,
usb_buffer, sizeof(usb_buffer), usb_buffer, sizeof(usb_buffer),
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_ret < sizeof(usb_buffer)) { if (usb_ret < sizeof(usb_buffer)) {
break; break;
@ -200,7 +200,7 @@ ep1_memory_read(
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
buffer, length, buffer, length,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_ret < length) { if (usb_ret < length) {
break; break;
@ -250,18 +250,18 @@ ep1_memory_write(
usb_buffer + 4, usb_buffer + 4,
buffer, buffer,
length length
); );
memset( memset(
usb_buffer + 4 + length, usb_buffer + 4 + length,
0, 0,
sizeof(usb_buffer) - 4 - length sizeof(usb_buffer) - 4 - length
); );
usb_ret = usb_bulk_write( usb_ret = usb_bulk_write(
pHDev, USB_EP1OUT_ADDR, pHDev, USB_EP1OUT_ADDR,
(char *)usb_buffer, sizeof(usb_buffer), (char *)usb_buffer, sizeof(usb_buffer),
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if ((size_t)usb_ret < sizeof(usb_buffer)) { if ((size_t)usb_ret < sizeof(usb_buffer)) {
break; break;
@ -345,7 +345,7 @@ dtc_load_from_buffer(
usb_err = ep1_generic_commandl( usb_err = ep1_generic_commandl(
pHDev, 1, pHDev, 1,
EP1_CMD_DTC_STOP EP1_CMD_DTC_STOP
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
while (length) { while (length) {
@ -380,7 +380,7 @@ dtc_load_from_buffer(
pHDev, pHDev,
DTC_LOAD_BUFFER, DTC_LOAD_BUFFER,
header->length + 1, buffer header->length + 1, buffer
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
/* Load it into the DTC. */ /* Load it into the DTC. */
@ -389,7 +389,7 @@ dtc_load_from_buffer(
EP1_CMD_DTC_LOAD, EP1_CMD_DTC_LOAD,
(DTC_LOAD_BUFFER >> 8), (DTC_LOAD_BUFFER >> 8),
DTC_LOAD_BUFFER DTC_LOAD_BUFFER
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
break; break;
@ -400,7 +400,7 @@ dtc_load_from_buffer(
EP1_CMD_DTC_CALL, EP1_CMD_DTC_CALL,
buffer[0], buffer[0],
EP1_CMD_DTC_WAIT EP1_CMD_DTC_WAIT
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
break; break;
@ -414,7 +414,7 @@ dtc_load_from_buffer(
pHDev, pHDev,
ST7_USB_BUF_EP0OUT + lut_start, ST7_USB_BUF_EP0OUT + lut_start,
header->length + 1, buffer header->length + 1, buffer
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
break; break;
@ -452,7 +452,7 @@ dtc_start_download(void) {
ST7_EP2TXR >> 8, ST7_EP2TXR >> 8,
ST7_EP2TXR, ST7_EP2TXR,
1 1
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
/* read back ep2txr */ /* read back ep2txr */
@ -460,7 +460,7 @@ dtc_start_download(void) {
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)&ep2txr, 1, (char *)&ep2txr, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
usb_err = ep1_generic_commandl( usb_err = ep1_generic_commandl(
@ -479,7 +479,7 @@ dtc_start_download(void) {
EP1_CMD_DTC_CALL, /* start running the DTC */ EP1_CMD_DTC_CALL, /* start running the DTC */
dtc_entry_download, dtc_entry_download,
EP1_CMD_DTC_GET_CACHED_STATUS EP1_CMD_DTC_GET_CACHED_STATUS
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
/* wait for completion */ /* wait for completion */
@ -487,7 +487,7 @@ dtc_start_download(void) {
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)&ep2txr, 1, (char *)&ep2txr, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
return(usb_err); return(usb_err);
} }
@ -513,7 +513,7 @@ dtc_run_download(
USB_EP2OUT_ADDR, USB_EP2OUT_ADDR,
(char *)command_buffer, USB_EP2BANK_SIZE, (char *)command_buffer, USB_EP2BANK_SIZE,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
@ -526,7 +526,7 @@ dtc_run_download(
DTC_STATUS_POLL_BYTE >> 8, DTC_STATUS_POLL_BYTE >> 8,
DTC_STATUS_POLL_BYTE, DTC_STATUS_POLL_BYTE,
1 1
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
usb_err = usb_bulk_read( usb_err = usb_bulk_read(
@ -534,7 +534,7 @@ dtc_run_download(
USB_EP1IN_ADDR, USB_EP1IN_ADDR,
(char *)ep2_buffer, 1, (char *)ep2_buffer, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 0) return(usb_err); if (usb_err < 0) return(usb_err);
if (ep2_buffer[0] & 0x01) break; if (ep2_buffer[0] & 0x01) break;
@ -542,7 +542,7 @@ dtc_run_download(
if (!--i) { if (!--i) {
LOG_ERROR("%s, %d: too many retries waiting for DTC status\n", LOG_ERROR("%s, %d: too many retries waiting for DTC status\n",
__FILE__, __LINE__ __FILE__, __LINE__
); );
return(-ETIMEDOUT); return(-ETIMEDOUT);
} }
} }
@ -555,12 +555,12 @@ dtc_run_download(
USB_EP2IN_ADDR, USB_EP2IN_ADDR,
(char *)ep2_buffer, sizeof(ep2_buffer), (char *)ep2_buffer, sizeof(ep2_buffer),
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < (int)sizeof(ep2_buffer)) { if (usb_err < (int)sizeof(ep2_buffer)) {
LOG_ERROR("%s, %d: Read of endpoint 2 returned %d\n", LOG_ERROR("%s, %d: Read of endpoint 2 returned %d\n",
__FILE__, __LINE__, usb_err __FILE__, __LINE__, usb_err
); );
return(usb_err); return(usb_err);
} }
@ -692,7 +692,7 @@ dtc_queue_run(void) {
usb_err = dtc_run_download(pHDev, usb_err = dtc_run_download(pHDev,
dtc_queue.cmd_buffer, dtc_queue.cmd_index, dtc_queue.cmd_buffer, dtc_queue.cmd_index,
NULL, 0 NULL, 0
); );
if (usb_err < 0) { if (usb_err < 0) {
LOG_ERROR("dtc_run_download: %s\n", usb_strerror()); LOG_ERROR("dtc_run_download: %s\n", usb_strerror());
exit(1); exit(1);
@ -701,7 +701,7 @@ dtc_queue_run(void) {
usb_err = dtc_run_download(pHDev, usb_err = dtc_run_download(pHDev,
dtc_queue.cmd_buffer, dtc_queue.cmd_index, dtc_queue.cmd_buffer, dtc_queue.cmd_index,
reply_buffer, dtc_queue.reply_index reply_buffer, dtc_queue.reply_index
); );
if (usb_err < 0) { if (usb_err < 0) {
LOG_ERROR("dtc_run_download: %s\n", usb_strerror()); LOG_ERROR("dtc_run_download: %s\n", usb_strerror());
exit(1); exit(1);
@ -715,7 +715,7 @@ dtc_queue_run(void) {
rq_p = dtc_queue.rq_head; rq_p = dtc_queue.rq_head;
rq_p != NULL; rq_p != NULL;
rq_p = rq_next rq_p = rq_next
) { ) {
tdo_p = rq_p->scan.buffer + (rq_p->scan.offset / 8); tdo_p = rq_p->scan.buffer + (rq_p->scan.offset / 8);
tdo_mask = 1 << (rq_p->scan.offset % 8); tdo_mask = 1 << (rq_p->scan.offset % 8);
@ -730,7 +730,7 @@ dtc_queue_run(void) {
; ;
bit_cnt; bit_cnt;
bit_cnt-- bit_cnt--
) { ) {
if (*dtc_p & dtc_mask) { if (*dtc_p & dtc_mask) {
*tdo_p |= tdo_mask; *tdo_p |= tdo_mask;
} else { } else {
@ -755,9 +755,9 @@ dtc_queue_run(void) {
x = *dtc_p++; x = *dtc_p++;
if (( if ((
rq_p->scan.type == SCAN_IN rq_p->scan.type == SCAN_IN
) && ( ) && (
rq_p->scan.offset != rq_p->scan.size - 1 rq_p->scan.offset != rq_p->scan.size - 1
)) { )) {
/* extra bits were sent as a full byte with padding on the end */ /* extra bits were sent as a full byte with padding on the end */
dtc_mask = 1 << (8 - 1); dtc_mask = 1 << (8 - 1);
} else { } else {
@ -768,7 +768,7 @@ dtc_queue_run(void) {
; ;
bit_cnt; bit_cnt;
bit_cnt-- bit_cnt--
) { ) {
if (x & dtc_mask) { if (x & dtc_mask) {
*tdo_p |= tdo_mask; *tdo_p |= tdo_mask;
} else { } else {
@ -1004,7 +1004,7 @@ void rlink_reset(int trst, int srst)
ST7_PADR >> 8, ST7_PADR >> 8,
ST7_PADR, ST7_PADR,
1 1
); );
if (usb_err < 0) { if (usb_err < 0) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1014,7 +1014,7 @@ void rlink_reset(int trst, int srst)
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)&bitmap, 1, (char *)&bitmap, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 1) { if (usb_err < 1) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1039,7 +1039,7 @@ void rlink_reset(int trst, int srst)
ST7_PBDDR >> 8, ST7_PBDDR >> 8,
ST7_PBDDR, ST7_PBDDR,
1 1
); );
if (usb_err < 0) { if (usb_err < 0) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1049,7 +1049,7 @@ void rlink_reset(int trst, int srst)
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)&bitmap, 1, (char *)&bitmap, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 1) { if (usb_err < 1) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1070,7 +1070,7 @@ void rlink_reset(int trst, int srst)
1, 1,
bitmap, bitmap,
EP1_CMD_DTC_GET_CACHED_STATUS EP1_CMD_DTC_GET_CACHED_STATUS
); );
if (usb_err < 0) { if (usb_err < 0) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1080,7 +1080,7 @@ void rlink_reset(int trst, int srst)
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)&bitmap, 1, (char *)&bitmap, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if (usb_err < 1) { if (usb_err < 1) {
LOG_ERROR("%s", usb_strerror()); LOG_ERROR("%s", usb_strerror());
exit(1); exit(1);
@ -1120,7 +1120,7 @@ rlink_scan(
(!ir_scan && (tap_get_state() == TAP_DRSHIFT)) (!ir_scan && (tap_get_state() == TAP_DRSHIFT))
|| ||
(ir_scan && (tap_get_state() == TAP_IRSHIFT)) (ir_scan && (tap_get_state() == TAP_IRSHIFT))
)) { )) {
saved_end_state = tap_get_end_state(); saved_end_state = tap_get_end_state();
rlink_end_state(ir_scan ? TAP_IRSHIFT : TAP_DRSHIFT); rlink_end_state(ir_scan ? TAP_IRSHIFT : TAP_DRSHIFT);
rlink_state_move(); rlink_state_move();
@ -1162,7 +1162,7 @@ rlink_scan(
/* make sure there's room for stop, byte op, and one byte */ /* make sure there's room for stop, byte op, and one byte */
if ( if (
(dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1 + 1)) (dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1 + 1))
) { ) {
dtc_queue_run(); dtc_queue_run();
} }
@ -1232,7 +1232,7 @@ rlink_scan(
type, buffer, scan_size, tdi_bit_offset, type, buffer, scan_size, tdi_bit_offset,
chunk_bits, chunk_bits,
cmd cmd
) == NULL) { ) == NULL) {
LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno)); LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno));
exit(1); exit(1);
} }
@ -1289,7 +1289,7 @@ rlink_scan(
(dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1 + 1)) (dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1 + 1))
|| ||
(dtc_queue.reply_index >= USB_EP2IN_SIZE - (1)) (dtc_queue.reply_index >= USB_EP2IN_SIZE - (1))
) { ) {
dtc_queue_run(); dtc_queue_run();
} }
@ -1297,7 +1297,7 @@ rlink_scan(
type, buffer, scan_size, tdi_bit_offset, type, buffer, scan_size, tdi_bit_offset,
extra_bits, extra_bits,
cmd cmd
) == NULL) { ) == NULL) {
LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno)); LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno));
exit(1); exit(1);
} }
@ -1342,7 +1342,7 @@ rlink_scan(
(dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1)) (dtc_queue.cmd_index >= sizeof(dtc_queue.cmd_buffer) - (1 + 1))
|| ||
(dtc_queue.reply_index >= USB_EP2IN_SIZE - (1)) (dtc_queue.reply_index >= USB_EP2IN_SIZE - (1))
) { ) {
dtc_queue_run(); dtc_queue_run();
} }
@ -1355,7 +1355,7 @@ rlink_scan(
type, buffer, scan_size, tdi_bit_offset, type, buffer, scan_size, tdi_bit_offset,
1, 1,
cmd cmd
) == NULL) { ) == NULL) {
LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno)); LOG_ERROR("enqueuing DTC reply entry: %s\n", strerror(errno));
exit(1); exit(1);
} }
@ -1393,7 +1393,7 @@ int rlink_execute_queue(void)
ep1_generic_commandl(pHDev, 2, ep1_generic_commandl(pHDev, 2,
EP1_CMD_SET_PORTD_LEDS, EP1_CMD_SET_PORTD_LEDS,
~(ST7_PD_NBUSY_LED) ~(ST7_PD_NBUSY_LED)
); );
#endif #endif
while (cmd) while (cmd)
@ -1484,7 +1484,7 @@ int rlink_execute_queue(void)
ep1_generic_commandl(pHDev, 2, ep1_generic_commandl(pHDev, 2,
EP1_CMD_SET_PORTD_LEDS, EP1_CMD_SET_PORTD_LEDS,
~0 ~0
); );
#endif #endif
return retval; return retval;
@ -1503,7 +1503,7 @@ int rlink_speed(int speed)
speed = rlink_speed_table[rlink_speed_table_size - 1].prescaler; speed = rlink_speed_table[rlink_speed_table_size - 1].prescaler;
} }
for (i = rlink_speed_table_size; i--; ) { for (i = rlink_speed_table_size; i--;) {
if (rlink_speed_table[i].prescaler == speed) { if (rlink_speed_table[i].prescaler == speed) {
if (dtc_load_from_buffer(pHDev, rlink_speed_table[i].dtc, rlink_speed_table[i].dtc_size) != 0) { if (dtc_load_from_buffer(pHDev, rlink_speed_table[i].dtc, rlink_speed_table[i].dtc_size) != 0) {
LOG_ERROR("An error occurred while trying to load DTC code for speed \"%d\".\n", speed); LOG_ERROR("An error occurred while trying to load DTC code for speed \"%d\".\n", speed);
@ -1514,7 +1514,7 @@ int rlink_speed(int speed)
LOG_ERROR("%s, %d: starting DTC: %s", LOG_ERROR("%s, %d: starting DTC: %s",
__FILE__, __LINE__, __FILE__, __LINE__,
usb_strerror() usb_strerror()
); );
exit(1); exit(1);
} }
@ -1534,7 +1534,7 @@ int rlink_speed_div(
) { ) {
int i; int i;
for (i = rlink_speed_table_size; i--; ) { for (i = rlink_speed_table_size; i--;) {
if (rlink_speed_table[i].prescaler == speed) { if (rlink_speed_table[i].prescaler == speed) {
*khz = rlink_speed_table[i].khz; *khz = rlink_speed_table[i].khz;
return(ERROR_OK); return(ERROR_OK);
@ -1558,7 +1558,7 @@ int rlink_khz(
return ERROR_FAIL; return ERROR_FAIL;
} }
for (i = rlink_speed_table_size; i--; ) { for (i = rlink_speed_table_size; i--;) {
if (rlink_speed_table[i].khz <= khz) { if (rlink_speed_table[i].khz <= khz) {
*speed = rlink_speed_table[i].prescaler; *speed = rlink_speed_table[i].prescaler;
return(ERROR_OK); return(ERROR_OK);
@ -1607,7 +1607,7 @@ int rlink_register_commands(struct command_context_s *cmd_ctx)
handle_dtc_directory_command, handle_dtc_directory_command,
COMMAND_CONFIG, COMMAND_CONFIG,
"The directory in which to search for DTC load images" "The directory in which to search for DTC load images"
); );
#endif #endif
return ERROR_OK; return ERROR_OK;
@ -1636,26 +1636,26 @@ int rlink_init(void)
for (dev = bus->devices; dev; dev = dev->next) for (dev = bus->devices; dev; dev = dev->next)
{ {
if ((dev->descriptor.idVendor == USB_IDVENDOR) && (dev->descriptor.idProduct == USB_IDPRODUCT) ) if ((dev->descriptor.idVendor == USB_IDVENDOR) && (dev->descriptor.idProduct == USB_IDPRODUCT))
{ {
found = 1; found = 1;
LOG_DEBUG("Found device on bus.\n"); LOG_DEBUG("Found device on bus.\n");
do do
{ {
if (dev->descriptor.bNumConfigurations > 1 ) if (dev->descriptor.bNumConfigurations > 1)
{ {
LOG_ERROR("Whoops! NumConfigurations is not 1, don't know what to do...\n"); LOG_ERROR("Whoops! NumConfigurations is not 1, don't know what to do...\n");
break; break;
} }
if (dev->config->bNumInterfaces > 1 ) if (dev->config->bNumInterfaces > 1)
{ {
LOG_ERROR("Whoops! NumInterfaces is not 1, don't know what to do...\n"); LOG_ERROR("Whoops! NumInterfaces is not 1, don't know what to do...\n");
break; break;
} }
pHDev = usb_open(dev); pHDev = usb_open(dev);
if (!pHDev ) if (!pHDev)
LOG_ERROR ("Failed to open device.\n"); LOG_ERROR ("Failed to open device.\n");
else else
{ {
@ -1686,7 +1686,7 @@ int rlink_init(void)
if (!i) if (!i)
{ {
if (usb_set_altinterface(pHDev,0) ) if (usb_set_altinterface(pHDev,0))
{ {
LOG_ERROR("Failed to set interface.\n"); LOG_ERROR("Failed to set interface.\n");
break; break;
@ -1700,13 +1700,13 @@ int rlink_init(void)
} }
} }
if (!found ) if (!found)
{ {
LOG_ERROR("No device found on bus.\n"); LOG_ERROR("No device found on bus.\n");
exit(1); exit(1);
} }
if (!success ) if (!success)
{ {
LOG_ERROR("Initialisation failed."); LOG_ERROR("Initialisation failed.");
exit(1); exit(1);
@ -1719,7 +1719,7 @@ int rlink_init(void)
j = ep1_generic_commandl( j = ep1_generic_commandl(
pHDev, 1, pHDev, 1,
EP1_CMD_GET_FWREV EP1_CMD_GET_FWREV
); );
if (j < USB_EP1OUT_SIZE) { if (j < USB_EP1OUT_SIZE) {
LOG_ERROR("USB write error: %s", usb_strerror()); LOG_ERROR("USB write error: %s", usb_strerror());
return(ERROR_FAIL); return(ERROR_FAIL);
@ -1728,7 +1728,7 @@ int rlink_init(void)
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)reply_buffer, sizeof(reply_buffer), (char *)reply_buffer, sizeof(reply_buffer),
200 200
); );
if (j != -ETIMEDOUT) break; if (j != -ETIMEDOUT) break;
} }
@ -1761,13 +1761,13 @@ int rlink_init(void)
ST7_PEDR, ST7_PEDR,
1, 1,
ST7_PE_ADAPTER_SENSE_OUT ST7_PE_ADAPTER_SENSE_OUT
); );
usb_bulk_read( usb_bulk_read(
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)reply_buffer, 1, (char *)reply_buffer, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if ((reply_buffer[0] & ST7_PE_ADAPTER_SENSE_IN) != 0) { if ((reply_buffer[0] & ST7_PE_ADAPTER_SENSE_IN) != 0) {
LOG_WARNING("target detection problem\n"); LOG_WARNING("target detection problem\n");
@ -1786,13 +1786,13 @@ int rlink_init(void)
0x00, /* DR */ 0x00, /* DR */
0x00, /* DDR */ 0x00, /* DDR */
0x00 /* OR */ 0x00 /* OR */
); );
usb_bulk_read( usb_bulk_read(
pHDev, USB_EP1IN_ADDR, pHDev, USB_EP1IN_ADDR,
(char *)reply_buffer, 1, (char *)reply_buffer, 1,
USB_TIMEOUT_MS USB_TIMEOUT_MS
); );
if ((reply_buffer[0] & ST7_PE_ADAPTER_SENSE_IN) == 0) { if ((reply_buffer[0] & ST7_PE_ADAPTER_SENSE_IN) == 0) {
@ -1813,7 +1813,7 @@ int rlink_init(void)
ST7_PBDDR, ST7_PBDDR,
1, 1,
0x00 0x00
); );
/* make sure DTC is stopped, set VPP control, set up ports A and B */ /* make sure DTC is stopped, set VPP control, set up ports A and B */
ep1_generic_commandl( ep1_generic_commandl(
@ -1833,7 +1833,7 @@ int rlink_init(void)
ST7_PBDR, ST7_PBDR,
1, 1,
0x00 0x00
); );
/* set LED updating mode and make sure they're unlit */ /* set LED updating mode and make sure they're unlit */
ep1_generic_commandl( ep1_generic_commandl(
@ -1845,7 +1845,7 @@ int rlink_init(void)
#endif #endif
EP1_CMD_SET_PORTD_LEDS, EP1_CMD_SET_PORTD_LEDS,
~0 ~0
); );
tap_state_queue_init(); tap_state_queue_init();
dtc_queue_init(); dtc_queue_init();
@ -1868,7 +1868,7 @@ int rlink_quit(void)
~0, ~0,
EP1_CMD_SET_PORTD_VPP, EP1_CMD_SET_PORTD_VPP,
~0 ~0
); );
usb_release_interface(pHDev,0); usb_release_interface(pHDev,0);
usb_close(pHDev); usb_close(pHDev);

View File

@ -228,11 +228,11 @@ static int jtag_tap_configure_cmd(Jim_GetOptInfo *goi, jtag_tap_t * tap)
switch (n->value) { switch (n->value) {
case JCFG_EVENT: case JCFG_EVENT:
if (goi->argc == 0) { if (goi->argc == 0) {
Jim_WrongNumArgs(goi->interp, goi->argc, goi->argv, "-event ?event-name? ..." ); Jim_WrongNumArgs(goi->interp, goi->argc, goi->argv, "-event ?event-name? ...");
return JIM_ERR; return JIM_ERR;
} }
e = Jim_GetOpt_Nvp(goi, nvp_jtag_tap_event, &n ); e = Jim_GetOpt_Nvp(goi, nvp_jtag_tap_event, &n);
if (e != JIM_OK) { if (e != JIM_OK) {
Jim_GetOpt_NvpUnknown(goi, nvp_jtag_tap_event, 1); Jim_GetOpt_NvpUnknown(goi, nvp_jtag_tap_event, 1);
return e; return e;
@ -306,7 +306,7 @@ static int is_bad_irval(int ir_length, jim_wide w)
return (w & v) != 0; return (w & v) != 0;
} }
static int jim_newtap_cmd(Jim_GetOptInfo *goi ) static int jim_newtap_cmd(Jim_GetOptInfo *goi)
{ {
jtag_tap_t *pTap; jtag_tap_t *pTap;
jim_wide w; jim_wide w;
@ -340,20 +340,20 @@ static int jim_newtap_cmd(Jim_GetOptInfo *goi )
/* /*
* we expect CHIP + TAP + OPTIONS * we expect CHIP + TAP + OPTIONS
* */ * */
if (goi->argc < 3 ){ if (goi->argc < 3){
Jim_SetResult_sprintf(goi->interp, "Missing CHIP TAP OPTIONS ...."); Jim_SetResult_sprintf(goi->interp, "Missing CHIP TAP OPTIONS ....");
return JIM_ERR; return JIM_ERR;
} }
Jim_GetOpt_String(goi, &cp, NULL ); Jim_GetOpt_String(goi, &cp, NULL);
pTap->chip = strdup(cp); pTap->chip = strdup(cp);
Jim_GetOpt_String(goi, &cp, NULL ); Jim_GetOpt_String(goi, &cp, NULL);
pTap->tapname = strdup(cp); pTap->tapname = strdup(cp);
/* name + dot + name + null */ /* name + dot + name + null */
x = strlen(pTap->chip) + 1 + strlen(pTap->tapname) + 1; x = strlen(pTap->chip) + 1 + strlen(pTap->tapname) + 1;
cp = malloc(x ); cp = malloc(x);
sprintf(cp, "%s.%s", pTap->chip, pTap->tapname ); sprintf(cp, "%s.%s", pTap->chip, pTap->tapname);
pTap->dotted_name = cp; pTap->dotted_name = cp;
LOG_DEBUG("Creating New Tap, Chip: %s, Tap: %s, Dotted: %s, %d params", LOG_DEBUG("Creating New Tap, Chip: %s, Tap: %s, Dotted: %s, %d params",
@ -367,14 +367,14 @@ static int jim_newtap_cmd(Jim_GetOptInfo *goi )
/* clear them as we find them */ /* clear them as we find them */
reqbits = (NTREQ_IRLEN | NTREQ_IRCAPTURE | NTREQ_IRMASK); reqbits = (NTREQ_IRLEN | NTREQ_IRCAPTURE | NTREQ_IRMASK);
while (goi->argc ){ while (goi->argc){
e = Jim_GetOpt_Nvp(goi, opts, &n ); e = Jim_GetOpt_Nvp(goi, opts, &n);
if (e != JIM_OK ){ if (e != JIM_OK){
Jim_GetOpt_NvpUnknown(goi, opts, 0 ); Jim_GetOpt_NvpUnknown(goi, opts, 0);
return e; return e;
} }
LOG_DEBUG("Processing option: %s", n->name ); LOG_DEBUG("Processing option: %s", n->name);
switch (n->value ){ switch (n->value){
case NTAP_OPT_ENABLED: case NTAP_OPT_ENABLED:
pTap->disabled_after_reset = false; pTap->disabled_after_reset = false;
break; break;
@ -385,7 +385,7 @@ static int jim_newtap_cmd(Jim_GetOptInfo *goi )
{ {
uint32_t *new_expected_ids; uint32_t *new_expected_ids;
e = Jim_GetOpt_Wide(goi, &w ); e = Jim_GetOpt_Wide(goi, &w);
if (e != JIM_OK) { if (e != JIM_OK) {
Jim_SetResult_sprintf(goi->interp, "option: %s bad parameter", n->name); Jim_SetResult_sprintf(goi->interp, "option: %s bad parameter", n->name);
return e; return e;
@ -409,9 +409,9 @@ static int jim_newtap_cmd(Jim_GetOptInfo *goi )
case NTAP_OPT_IRLEN: case NTAP_OPT_IRLEN:
case NTAP_OPT_IRMASK: case NTAP_OPT_IRMASK:
case NTAP_OPT_IRCAPTURE: case NTAP_OPT_IRCAPTURE:
e = Jim_GetOpt_Wide(goi, &w ); e = Jim_GetOpt_Wide(goi, &w);
if (e != JIM_OK ){ if (e != JIM_OK){
Jim_SetResult_sprintf(goi->interp, "option: %s bad parameter", n->name ); Jim_SetResult_sprintf(goi->interp, "option: %s bad parameter", n->name);
return e; return e;
} }
switch (n->value){ switch (n->value){
@ -441,7 +441,7 @@ static int jim_newtap_cmd(Jim_GetOptInfo *goi )
break; break;
} }
} /* switch (n->value) */ } /* switch (n->value) */
} /* while (goi->argc ) */ } /* while (goi->argc) */
/* default is enabled-after-reset */ /* default is enabled-after-reset */
pTap->enabled = !pTap->disabled_after_reset; pTap->enabled = !pTap->disabled_after_reset;
@ -475,7 +475,7 @@ static void jtag_tap_handle_event(jtag_tap_t *tap, enum jtag_event e)
tap->dotted_name, tap->dotted_name,
e, e,
Jim_Nvp_value2name_simple(nvp_jtag_tap_event, e)->name, Jim_Nvp_value2name_simple(nvp_jtag_tap_event, e)->name,
Jim_GetString(jteap->body, NULL) ); Jim_GetString(jteap->body, NULL));
if (Jim_EvalObj(interp, jteap->body) != JIM_OK) { if (Jim_EvalObj(interp, jteap->body) != JIM_OK) {
Jim_PrintErrorMessage(interp); Jim_PrintErrorMessage(interp);
} else { } else {
@ -498,7 +498,7 @@ static void jtag_tap_handle_event(jtag_tap_t *tap, enum jtag_event e)
} }
static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv ) static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
{ {
Jim_GetOptInfo goi; Jim_GetOptInfo goi;
int e; int e;
@ -532,44 +532,44 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv )
context = Jim_GetAssocData(interp, "context"); context = Jim_GetAssocData(interp, "context");
/* go past the command */ /* go past the command */
Jim_GetOpt_Setup(&goi, interp, argc-1, argv + 1 ); Jim_GetOpt_Setup(&goi, interp, argc-1, argv + 1);
e = Jim_GetOpt_Nvp(&goi, jtag_cmds, &n ); e = Jim_GetOpt_Nvp(&goi, jtag_cmds, &n);
if (e != JIM_OK ){ if (e != JIM_OK){
Jim_GetOpt_NvpUnknown(&goi, jtag_cmds, 0 ); Jim_GetOpt_NvpUnknown(&goi, jtag_cmds, 0);
return e; return e;
} }
Jim_SetEmptyResult(goi.interp ); Jim_SetEmptyResult(goi.interp);
switch (n->value ){ switch (n->value){
case JTAG_CMD_INTERFACE: case JTAG_CMD_INTERFACE:
/* return the name of the interface */ /* return the name of the interface */
/* TCL code might need to know the exact type... */ /* TCL code might need to know the exact type... */
/* FUTURE: we allow this as a means to "set" the interface. */ /* FUTURE: we allow this as a means to "set" the interface. */
if (goi.argc != 0 ){ if (goi.argc != 0){
Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)"); Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)");
return JIM_ERR; return JIM_ERR;
} }
Jim_SetResultString(goi.interp, jtag_interface->name, -1 ); Jim_SetResultString(goi.interp, jtag_interface->name, -1);
return JIM_OK; return JIM_OK;
case JTAG_CMD_INIT_RESET: case JTAG_CMD_INIT_RESET:
if (goi.argc != 0 ){ if (goi.argc != 0){
Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)"); Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)");
return JIM_ERR; return JIM_ERR;
} }
e = jtag_init_reset(context); e = jtag_init_reset(context);
if (e != ERROR_OK ){ if (e != ERROR_OK){
Jim_SetResult_sprintf(goi.interp, "error: %d", e); Jim_SetResult_sprintf(goi.interp, "error: %d", e);
return JIM_ERR; return JIM_ERR;
} }
return JIM_OK; return JIM_OK;
case JTAG_CMD_NEWTAP: case JTAG_CMD_NEWTAP:
return jim_newtap_cmd(&goi ); return jim_newtap_cmd(&goi);
break; break;
case JTAG_CMD_TAPISENABLED: case JTAG_CMD_TAPISENABLED:
case JTAG_CMD_TAPENABLE: case JTAG_CMD_TAPENABLE:
case JTAG_CMD_TAPDISABLE: case JTAG_CMD_TAPDISABLE:
if (goi.argc != 1 ){ if (goi.argc != 1){
Jim_SetResultString(goi.interp, "Too many parameters",-1 ); Jim_SetResultString(goi.interp, "Too many parameters",-1);
return JIM_ERR; return JIM_ERR;
} }
@ -619,7 +619,7 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv )
break; break;
case JTAG_CMD_CGET: case JTAG_CMD_CGET:
if (goi.argc < 2 ){ if (goi.argc < 2){
Jim_WrongNumArgs(goi.interp, 0, NULL, "?tap-name? -option ..."); Jim_WrongNumArgs(goi.interp, 0, NULL, "?tap-name? -option ...");
return JIM_ERR; return JIM_ERR;
} }
@ -628,8 +628,8 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv )
jtag_tap_t *t; jtag_tap_t *t;
Jim_GetOpt_Obj(&goi, &o); Jim_GetOpt_Obj(&goi, &o);
t = jtag_tap_by_jim_obj(goi.interp, o ); t = jtag_tap_by_jim_obj(goi.interp, o);
if (t == NULL ){ if (t == NULL){
return JIM_ERR; return JIM_ERR;
} }
@ -639,7 +639,7 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv )
break; break;
case JTAG_CMD_CONFIGURE: case JTAG_CMD_CONFIGURE:
if (goi.argc < 3 ){ if (goi.argc < 3){
Jim_WrongNumArgs(goi.interp, 0, NULL, "?tap-name? -option ?VALUE? ..."); Jim_WrongNumArgs(goi.interp, 0, NULL, "?tap-name? -option ?VALUE? ...");
return JIM_ERR; return JIM_ERR;
} }
@ -648,8 +648,8 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv )
jtag_tap_t *t; jtag_tap_t *t;
Jim_GetOpt_Obj(&goi, &o); Jim_GetOpt_Obj(&goi, &o);
t = jtag_tap_by_jim_obj(goi.interp, o ); t = jtag_tap_by_jim_obj(goi.interp, o);
if (t == NULL ){ if (t == NULL){
return JIM_ERR; return JIM_ERR;
} }
@ -806,7 +806,7 @@ static int handle_jtag_device_command(struct command_context_s *cmd_ctx, char *c
* argv[ 3] = not actually used by anything but in the docs * argv[ 3] = not actually used by anything but in the docs
*/ */
if (argc < 4 ){ if (argc < 4){
command_print(cmd_ctx, "OLD DEPRECATED SYNTAX: Please use the NEW syntax"); command_print(cmd_ctx, "OLD DEPRECATED SYNTAX: Please use the NEW syntax");
return ERROR_OK; return ERROR_OK;
} }
@ -814,41 +814,41 @@ static int handle_jtag_device_command(struct command_context_s *cmd_ctx, char *c
command_print(cmd_ctx, "jtag newtap CHIP TAP -irlen %s -ircapture %s -irvalue %s", command_print(cmd_ctx, "jtag newtap CHIP TAP -irlen %s -ircapture %s -irvalue %s",
args[0], args[0],
args[1], args[1],
args[2] ); args[2]);
command_print(cmd_ctx, "Example: STM32 has 2 taps, the cortexM3(len4) + boundaryscan(len5)"); command_print(cmd_ctx, "Example: STM32 has 2 taps, the cortexM3(len4) + boundaryscan(len5)");
command_print(cmd_ctx, "jtag newtap stm32 cortexm3 ....., thus creating the tap: \"stm32.cortexm3\""); command_print(cmd_ctx, "jtag newtap stm32 cortexm3 ....., thus creating the tap: \"stm32.cortexm3\"");
command_print(cmd_ctx, "jtag newtap stm32 boundary ....., and the tap: \"stm32.boundary\""); command_print(cmd_ctx, "jtag newtap stm32 boundary ....., and the tap: \"stm32.boundary\"");
command_print(cmd_ctx, "And then refer to the taps by the dotted name."); command_print(cmd_ctx, "And then refer to the taps by the dotted name.");
newargs[0] = Jim_NewStringObj(interp, "jtag", -1 ); newargs[0] = Jim_NewStringObj(interp, "jtag", -1);
newargs[1] = Jim_NewStringObj(interp, "newtap", -1 ); newargs[1] = Jim_NewStringObj(interp, "newtap", -1);
sprintf(buf, "chip%d", jtag_tap_count() ); sprintf(buf, "chip%d", jtag_tap_count());
newargs[2] = Jim_NewStringObj(interp, buf, -1 ); newargs[2] = Jim_NewStringObj(interp, buf, -1);
sprintf(buf, "tap%d", jtag_tap_count() ); sprintf(buf, "tap%d", jtag_tap_count());
newargs[3] = Jim_NewStringObj(interp, buf, -1 ); newargs[3] = Jim_NewStringObj(interp, buf, -1);
newargs[4] = Jim_NewStringObj(interp, "-irlen", -1 ); newargs[4] = Jim_NewStringObj(interp, "-irlen", -1);
newargs[5] = Jim_NewStringObj(interp, args[0], -1 ); newargs[5] = Jim_NewStringObj(interp, args[0], -1);
newargs[6] = Jim_NewStringObj(interp, "-ircapture", -1 ); newargs[6] = Jim_NewStringObj(interp, "-ircapture", -1);
newargs[7] = Jim_NewStringObj(interp, args[1], -1 ); newargs[7] = Jim_NewStringObj(interp, args[1], -1);
newargs[8] = Jim_NewStringObj(interp, "-irmask", -1 ); newargs[8] = Jim_NewStringObj(interp, "-irmask", -1);
newargs[9] = Jim_NewStringObj(interp, args[2], -1 ); newargs[9] = Jim_NewStringObj(interp, args[2], -1);
command_print(cmd_ctx, "NEW COMMAND:"); command_print(cmd_ctx, "NEW COMMAND:");
sprintf(buf, "%s %s %s %s %s %s %s %s %s %s", sprintf(buf, "%s %s %s %s %s %s %s %s %s %s",
Jim_GetString(newargs[0], NULL ), Jim_GetString(newargs[0], NULL),
Jim_GetString(newargs[1], NULL ), Jim_GetString(newargs[1], NULL),
Jim_GetString(newargs[2], NULL ), Jim_GetString(newargs[2], NULL),
Jim_GetString(newargs[3], NULL ), Jim_GetString(newargs[3], NULL),
Jim_GetString(newargs[4], NULL ), Jim_GetString(newargs[4], NULL),
Jim_GetString(newargs[5], NULL ), Jim_GetString(newargs[5], NULL),
Jim_GetString(newargs[6], NULL ), Jim_GetString(newargs[6], NULL),
Jim_GetString(newargs[7], NULL ), Jim_GetString(newargs[7], NULL),
Jim_GetString(newargs[8], NULL ), Jim_GetString(newargs[8], NULL),
Jim_GetString(newargs[9], NULL ) ); Jim_GetString(newargs[9], NULL));
e = jim_jtag_command(interp, 10, newargs ); e = jim_jtag_command(interp, 10, newargs);
if (e != JIM_OK ){ if (e != JIM_OK){
command_print(cmd_ctx, "%s", Jim_GetString(Jim_GetResult(interp), NULL ) ); command_print(cmd_ctx, "%s", Jim_GetString(Jim_GetResult(interp), NULL));
} }
return e; return e;
} }
@ -861,7 +861,7 @@ static int handle_scan_chain_command(struct command_context_s *cmd_ctx, char *cm
command_print(cmd_ctx, " TapName | Enabled | IdCode Expected IrLen IrCap IrMask Instr "); command_print(cmd_ctx, " TapName | Enabled | IdCode Expected IrLen IrCap IrMask Instr ");
command_print(cmd_ctx, "---|--------------------|---------|------------|------------|------|------|------|---------"); command_print(cmd_ctx, "---|--------------------|---------|------------|------------|------|------|------|---------");
while (tap ){ while (tap){
uint32_t expected, expected_mask, cur_instr, ii; uint32_t expected, expected_mask, cur_instr, ii;
expected = buf_get_u32(tap->expected, 0, tap->ir_length); expected = buf_get_u32(tap->expected, 0, tap->ir_length);
expected_mask = buf_get_u32(tap->expected_mask, 0, tap->ir_length); expected_mask = buf_get_u32(tap->expected_mask, 0, tap->ir_length);
@ -1174,20 +1174,20 @@ static int handle_irscan_command(struct command_context_s *cmd_ctx, char *cmd, c
*/ */
endstate = TAP_IDLE; endstate = TAP_IDLE;
if (argc >= 4 ){ if (argc >= 4){
/* have at least one pair of numbers. */ /* have at least one pair of numbers. */
/* is last pair the magic text? */ /* is last pair the magic text? */
if (0 == strcmp("-endstate", args[ argc - 2 ] ) ){ if (0 == strcmp("-endstate", args[ argc - 2 ])){
const char *cpA; const char *cpA;
const char *cpS; const char *cpS;
cpA = args[ argc-1 ]; cpA = args[ argc-1 ];
for (endstate = 0 ; endstate < TAP_NUM_STATES ; endstate++ ){ for (endstate = 0 ; endstate < TAP_NUM_STATES ; endstate++){
cpS = tap_state_name(endstate ); cpS = tap_state_name(endstate);
if (0 == strcmp(cpA, cpS ) ){ if (0 == strcmp(cpA, cpS)){
break; break;
} }
} }
if (endstate >= TAP_NUM_STATES ){ if (endstate >= TAP_NUM_STATES){
return ERROR_COMMAND_SYNTAX_ERROR; return ERROR_COMMAND_SYNTAX_ERROR;
} else { } else {
if (!scan_is_safe(endstate)) if (!scan_is_safe(endstate))
@ -1207,10 +1207,10 @@ static int handle_irscan_command(struct command_context_s *cmd_ctx, char *cmd, c
int retval; int retval;
for (i = 0; i < num_fields; i++) for (i = 0; i < num_fields; i++)
{ {
tap = jtag_tap_by_string(args[i*2] ); tap = jtag_tap_by_string(args[i*2]);
if (tap == NULL) if (tap == NULL)
{ {
command_print(cmd_ctx, "Tap: %s unknown", args[i*2] ); command_print(cmd_ctx, "Tap: %s unknown", args[i*2]);
return ERROR_FAIL; return ERROR_FAIL;
} }
int field_size = tap->ir_length; int field_size = tap->ir_length;
@ -1281,12 +1281,12 @@ static int Jim_Command_drscan(Jim_Interp *interp, int argc, Jim_Obj *const *args
e = Jim_GetLong(interp, args[i], &bits); e = Jim_GetLong(interp, args[i], &bits);
/* If valid - try next arg */ /* If valid - try next arg */
if (e == JIM_OK ){ if (e == JIM_OK){
continue; continue;
} }
/* Not valid.. are we at the end? */ /* Not valid.. are we at the end? */
if (((i + 2) != argc) ){ if (((i + 2) != argc)){
/* nope, then error */ /* nope, then error */
return e; return e;
} }
@ -1297,17 +1297,17 @@ static int Jim_Command_drscan(Jim_Interp *interp, int argc, Jim_Obj *const *args
*/ */
/* get arg as a string. */ /* get arg as a string. */
cp = Jim_GetString(args[i], NULL ); cp = Jim_GetString(args[i], NULL);
/* is it the magic? */ /* is it the magic? */
if (0 == strcmp("-endstate", cp ) ){ if (0 == strcmp("-endstate", cp)){
/* is the statename valid? */ /* is the statename valid? */
cp = Jim_GetString(args[i + 1], NULL ); cp = Jim_GetString(args[i + 1], NULL);
/* see if it is a valid state name */ /* see if it is a valid state name */
endstate = tap_state_by_name(cp); endstate = tap_state_by_name(cp);
if (endstate < 0 ){ if (endstate < 0){
/* update the error message */ /* update the error message */
Jim_SetResult_sprintf(interp,"endstate: %s invalid", cp ); Jim_SetResult_sprintf(interp,"endstate: %s invalid", cp);
} else { } else {
if (!scan_is_safe(endstate)) if (!scan_is_safe(endstate))
LOG_WARNING("drscan with unsafe " LOG_WARNING("drscan with unsafe "
@ -1321,13 +1321,13 @@ static int Jim_Command_drscan(Jim_Interp *interp, int argc, Jim_Obj *const *args
} }
/* Still an error? */ /* Still an error? */
if (e != JIM_OK ){ if (e != JIM_OK){
return e; /* too bad */ return e; /* too bad */
} }
} /* validate args */ } /* validate args */
tap = jtag_tap_by_jim_obj(interp, args[1] ); tap = jtag_tap_by_jim_obj(interp, args[1]);
if (tap == NULL ){ if (tap == NULL){
return JIM_ERR; return JIM_ERR;
} }
@ -1399,12 +1399,12 @@ static int Jim_Command_pathmove(Jim_Interp *interp, int argc, Jim_Obj *const *ar
for (i = 0; i < argc-1; i++) for (i = 0; i < argc-1; i++)
{ {
const char *cp; const char *cp;
cp = Jim_GetString(args[i + 1], NULL ); cp = Jim_GetString(args[i + 1], NULL);
states[i] = tap_state_by_name(cp); states[i] = tap_state_by_name(cp);
if (states[i] < 0 ) if (states[i] < 0)
{ {
/* update the error message */ /* update the error message */
Jim_SetResult_sprintf(interp,"endstate: %s invalid", cp ); Jim_SetResult_sprintf(interp,"endstate: %s invalid", cp);
return JIM_ERR; return JIM_ERR;
} }
} }

View File

@ -378,7 +378,7 @@ static int vsllink_execute_queue(void)
break; /* above stable states are OK */ break; /* above stable states are OK */
default: default:
LOG_ERROR("jtag_add_clocks() was called with TAP in non-stable state \"%s\"", LOG_ERROR("jtag_add_clocks() was called with TAP in non-stable state \"%s\"",
tap_state_name(tap_get_state()) ); tap_state_name(tap_get_state()));
exit(-1); exit(-1);
} }
vsllink_stableclocks(cmd->cmd.stableclocks->num_cycles, scan_size); vsllink_stableclocks(cmd->cmd.stableclocks->num_cycles, scan_size);
@ -1178,7 +1178,7 @@ static void vsllink_scan_normal(bool ir_scan, enum scan_type type, uint8_t *buff
uint8_t bits_left, tms_tmp, tdi_len; uint8_t bits_left, tms_tmp, tdi_len;
int i; int i;
if (0 == scan_size ) if (0 == scan_size)
{ {
return; return;
} }
@ -1845,7 +1845,7 @@ static int vsllink_usb_message(vsllink_jtag_t *vsllink_jtag, int out_length, int
if (in_length > 0) if (in_length > 0)
{ {
result = vsllink_usb_read(vsllink_jtag); result = vsllink_usb_read(vsllink_jtag);
if (result == in_length ) if (result == in_length)
{ {
return result; return result;
} }

View File

@ -26,7 +26,7 @@
#define TEST_MANUAL() 0 #define TEST_MANUAL() 0
#if 0 #if 0
int diag_printf(const char *fmt, ... ); int diag_printf(const char *fmt, ...);
#define ZY1000_POKE(a, b) HAL_WRITE_UINT32(a, b); diag_printf("poke 0x%08x,0x%08x\n", a, b) #define ZY1000_POKE(a, b) HAL_WRITE_UINT32(a, b); diag_printf("poke 0x%08x,0x%08x\n", a, b)
#define ZY1000_PEEK(a, b) HAL_READ_UINT32(a, b); diag_printf("peek 0x%08x = 0x%08x\n", a, b) #define ZY1000_PEEK(a, b) HAL_READ_UINT32(a, b); diag_printf("peek 0x%08x = 0x%08x\n", a, b)
#else #else

View File

@ -208,7 +208,7 @@ command_context_t *setup_command_handler(void)
} }
LOG_DEBUG("log init complete"); LOG_DEBUG("log init complete");
LOG_OUTPUT(OPENOCD_VERSION "\n" ); LOG_OUTPUT(OPENOCD_VERSION "\n");
register_command(cmd_ctx, NULL, "init", handle_init_command, register_command(cmd_ctx, NULL, "init", handle_init_command,
COMMAND_ANY, "initializes target and servers - nop on subsequent invocations"); COMMAND_ANY, "initializes target and servers - nop on subsequent invocations");
@ -264,7 +264,7 @@ int openocd_main(int argc, char *argv[])
return EXIT_FAILURE; return EXIT_FAILURE;
ret = parse_config_file(cmd_ctx); ret = parse_config_file(cmd_ctx);
if ((ret != ERROR_OK) && (ret != ERROR_COMMAND_CLOSE_CONNECTION) ) if ((ret != ERROR_OK) && (ret != ERROR_COMMAND_CLOSE_CONNECTION))
return EXIT_FAILURE; return EXIT_FAILURE;
#if BUILD_HTTPD #if BUILD_HTTPD

View File

@ -243,7 +243,7 @@ static int virtex2_pld_device_command(struct command_context_s *cmd_ctx,
tap = jtag_tap_by_string(args[1]); tap = jtag_tap_by_string(args[1]);
if (tap == NULL) { if (tap == NULL) {
command_print(cmd_ctx, "Tap: %s does not exist", args[1] ); command_print(cmd_ctx, "Tap: %s does not exist", args[1]);
return ERROR_OK; return ERROR_OK;
} }

View File

@ -319,9 +319,9 @@ int gdb_put_packet_inner(connection_t *connection, char *buffer, int len)
break; break;
if ((retval = gdb_get_char(connection, &reply)) != ERROR_OK) if ((retval = gdb_get_char(connection, &reply)) != ERROR_OK)
return retval; return retval;
if (reply == '$' ){ if (reply == '$'){
/* fix a problem with some IAR tools */ /* fix a problem with some IAR tools */
gdb_putback_char(connection, reply ); gdb_putback_char(connection, reply);
LOG_DEBUG("Unexpected start of new packet"); LOG_DEBUG("Unexpected start of new packet");
break; break;
} }
@ -402,9 +402,9 @@ int gdb_put_packet_inner(connection_t *connection, char *buffer, int len)
log_remove_callback(gdb_log_callback, connection); log_remove_callback(gdb_log_callback, connection);
LOG_WARNING("negative reply, retrying"); LOG_WARNING("negative reply, retrying");
} }
else if (reply == '$' ){ else if (reply == '$'){
LOG_ERROR("GDB missing ack(1) - assumed good"); LOG_ERROR("GDB missing ack(1) - assumed good");
gdb_putback_char(connection, reply ); gdb_putback_char(connection, reply);
return ERROR_OK; return ERROR_OK;
} else { } else {
@ -413,9 +413,9 @@ int gdb_put_packet_inner(connection_t *connection, char *buffer, int len)
return ERROR_SERVER_REMOTE_CLOSED; return ERROR_SERVER_REMOTE_CLOSED;
} }
} }
else if (reply == '$' ){ else if (reply == '$'){
LOG_ERROR("GDB missing ack(2) - assumed good"); LOG_ERROR("GDB missing ack(2) - assumed good");
gdb_putback_char(connection, reply ); gdb_putback_char(connection, reply);
return ERROR_OK; return ERROR_OK;
} }
else else
@ -709,7 +709,7 @@ int gdb_target_callback_event_handler(struct target_s *target, enum target_event
int retval; int retval;
connection_t *connection = priv; connection_t *connection = priv;
target_handle_event(target, event ); target_handle_event(target, event);
switch (event) switch (event)
{ {
case TARGET_EVENT_EARLY_HALTED: case TARGET_EVENT_EARLY_HALTED:
@ -719,7 +719,7 @@ int gdb_target_callback_event_handler(struct target_s *target, enum target_event
target_call_event_callbacks(target, TARGET_EVENT_GDB_END); target_call_event_callbacks(target, TARGET_EVENT_GDB_END);
break; break;
case TARGET_EVENT_GDB_FLASH_ERASE_START: case TARGET_EVENT_GDB_FLASH_ERASE_START:
target_handle_event(target, TARGET_EVENT_OLD_gdb_program_config ); target_handle_event(target, TARGET_EVENT_OLD_gdb_program_config);
if ((retval = jtag_execute_queue()) != ERROR_OK) if ((retval = jtag_execute_queue()) != ERROR_OK)
{ {
return retval; return retval;
@ -800,7 +800,7 @@ int gdb_new_connection(connection_t *connection)
*/ */
if (initial_ack != '+') if (initial_ack != '+')
gdb_putback_char(connection, initial_ack); gdb_putback_char(connection, initial_ack);
target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_ATTACH ); target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_ATTACH);
gdb_actual_connections++; gdb_actual_connections++;
@ -839,7 +839,7 @@ int gdb_connection_closed(connection_t *connection)
target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_END); target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_END);
log_remove_callback(gdb_log_callback, connection); log_remove_callback(gdb_log_callback, connection);
target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_DETACH ); target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_DETACH);
return ERROR_OK; return ERROR_OK;
} }
@ -847,7 +847,7 @@ int gdb_connection_closed(connection_t *connection)
void gdb_send_error(connection_t *connection, uint8_t the_error) void gdb_send_error(connection_t *connection, uint8_t the_error)
{ {
char err[4]; char err[4];
snprintf(err, 4, "E%2.2X", the_error ); snprintf(err, 4, "E%2.2X", the_error);
gdb_put_packet(connection, err, 3); gdb_put_packet(connection, err, 3);
} }
@ -1360,7 +1360,7 @@ int gdb_step_continue_packet(connection_t *connection, target_t *target, char *p
if (packet[0] == 'c') if (packet[0] == 'c')
{ {
LOG_DEBUG("continue"); LOG_DEBUG("continue");
target_handle_event(target, TARGET_EVENT_OLD_pre_resume ); target_handle_event(target, TARGET_EVENT_OLD_pre_resume);
retval = target_resume(target, current, address, 0, 0); /* resume at current address, don't handle breakpoints, not debugging */ retval = target_resume(target, current, address, 0, 0); /* resume at current address, don't handle breakpoints, not debugging */
} }
else if (packet[0] == 's') else if (packet[0] == 's')
@ -1872,7 +1872,7 @@ int gdb_v_packet(connection_t *connection, target_t *target, char *packet, int p
/* perform any target specific operations before the erase */ /* perform any target specific operations before the erase */
target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_FLASH_ERASE_START); target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_FLASH_ERASE_START);
result = flash_erase_address_range(gdb_service->target, addr, length ); result = flash_erase_address_range(gdb_service->target, addr, length);
target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_FLASH_ERASE_END); target_call_event_callbacks(gdb_service->target, TARGET_EVENT_GDB_FLASH_ERASE_END);
/* perform erase */ /* perform erase */
@ -1964,10 +1964,10 @@ int gdb_v_packet(connection_t *connection, target_t *target, char *packet, int p
int gdb_detach(connection_t *connection, target_t *target) int gdb_detach(connection_t *connection, target_t *target)
{ {
switch (detach_mode ) switch (detach_mode)
{ {
case GDB_DETACH_RESUME: case GDB_DETACH_RESUME:
target_handle_event(target, TARGET_EVENT_OLD_pre_resume ); target_handle_event(target, TARGET_EVENT_OLD_pre_resume);
target_resume(target, 1, 0, 1, 0); target_resume(target, 1, 0, 1, 0);
break; break;
@ -2036,18 +2036,18 @@ int gdb_input_inner(connection_t *connection)
/* terminate with zero */ /* terminate with zero */
packet[packet_size] = 0; packet[packet_size] = 0;
if (LOG_LEVEL_IS(LOG_LVL_DEBUG ) ){ if (LOG_LEVEL_IS(LOG_LVL_DEBUG)){
if (packet[0] == 'X' ){ if (packet[0] == 'X'){
// binary packets spew junk into the debug log stream // binary packets spew junk into the debug log stream
char buf[ 50 ]; char buf[ 50 ];
int x; int x;
for (x = 0 ; (x < 49) && (packet[x] != ':') ; x++ ){ for (x = 0 ; (x < 49) && (packet[x] != ':') ; x++){
buf[x] = packet[x]; buf[x] = packet[x];
} }
buf[x] = 0; buf[x] = 0;
LOG_DEBUG("received packet: '%s:<binary-data>'", buf ); LOG_DEBUG("received packet: '%s:<binary-data>'", buf);
} else { } else {
LOG_DEBUG("received packet: '%s'", packet ); LOG_DEBUG("received packet: '%s'", packet);
} }
} }

View File

@ -111,7 +111,7 @@ static int httpd_Jim_Command_writeform(Jim_Interp *interp, int argc,
const char *script = alloc_printf("set dummy_val $httppostdata(%s); set dummy_val", const char *script = alloc_printf("set dummy_val $httppostdata(%s); set dummy_val",
name); name);
retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__ ); retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__);
free((void *) script); free((void *) script);
if (retcode != JIM_OK) if (retcode != JIM_OK)
return retcode; return retcode;
@ -152,7 +152,7 @@ httpd_Jim_Command_formfetch(Jim_Interp *interp,
const char *script = alloc_printf("set dummy_val $httppostdata(%s); set dummy_val", const char *script = alloc_printf("set dummy_val $httppostdata(%s); set dummy_val",
name); name);
int retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__ ); int retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__);
free((void *) script); free((void *) script);
if (retcode != JIM_OK) if (retcode != JIM_OK)
{ {
@ -257,7 +257,7 @@ int handle_request(struct MHD_Connection * connection, const char * url)
const char *script = alloc_printf( const char *script = alloc_printf(
"global httpdata; source {%s}; set httpdata", url); "global httpdata; source {%s}; set httpdata", url);
retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__ ); retcode = Jim_Eval_Named(interp, script, "httpd.c", __LINE__);
free((void *) script); free((void *) script);
if (retcode == JIM_ERR) if (retcode == JIM_ERR)
@ -415,8 +415,8 @@ static pthread_mutex_t mutex;
int httpd_start(void) int httpd_start(void)
{ {
pthread_mutexattr_t attr; pthread_mutexattr_t attr;
pthread_mutexattr_init(&attr ); pthread_mutexattr_init(&attr);
pthread_mutex_init(&mutex, &attr ); pthread_mutex_init(&mutex, &attr);
int port = 8888; int port = 8888;
LOG_USER("Launching httpd server on port %d", port); LOG_USER("Launching httpd server on port %d", port);
@ -446,16 +446,16 @@ int httpd_start(void)
void httpd_stop(void) void httpd_stop(void)
{ {
MHD_stop_daemon(d); MHD_stop_daemon(d);
pthread_mutex_destroy(&mutex ); pthread_mutex_destroy(&mutex);
} }
void openocd_sleep_prelude(void) void openocd_sleep_prelude(void)
{ {
pthread_mutex_unlock(&mutex ); pthread_mutex_unlock(&mutex);
} }
void openocd_sleep_postlude(void) void openocd_sleep_postlude(void)
{ {
pthread_mutex_lock(&mutex ); pthread_mutex_lock(&mutex);
} }

View File

@ -528,7 +528,7 @@ int server_quit(void)
#ifdef _WIN32 #ifdef _WIN32
WSACleanup(); WSACleanup();
SetConsoleCtrlHandler(ControlHandler, FALSE ); SetConsoleCtrlHandler(ControlHandler, FALSE);
#endif #endif
return ERROR_OK; return ERROR_OK;

View File

@ -273,7 +273,7 @@ static const char* tap_state_svf_name(tap_state_t state)
{ {
const char* ret; const char* ret;
switch (state ) switch (state)
{ {
case TAP_RESET: ret = "RESET"; break; case TAP_RESET: ret = "RESET"; break;
case TAP_IDLE: ret = "IDLE"; break; case TAP_IDLE: ret = "IDLE"; break;
@ -422,7 +422,7 @@ static int handle_svf_command(struct command_context_s *cmd_ctx, char *cmd, char
// TAP_RESET // TAP_RESET
jtag_add_tlr(); jtag_add_tlr();
while (ERROR_OK == svf_read_command_from_file(svf_fd) ) while (ERROR_OK == svf_read_command_from_file(svf_fd))
{ {
if (ERROR_OK != svf_run_command(cmd_ctx, svf_command_buffer)) if (ERROR_OK != svf_run_command(cmd_ctx, svf_command_buffer))
{ {
@ -505,7 +505,7 @@ static int svf_read_command_from_file(int fd)
char ch, *tmp_buffer = NULL; char ch, *tmp_buffer = NULL;
int cmd_pos = 0, cmd_ok = 0, slash = 0, comment = 0; int cmd_pos = 0, cmd_ok = 0, slash = 0, comment = 0;
while (!cmd_ok && (read(fd, &ch, 1) > 0) ) while (!cmd_ok && (read(fd, &ch, 1) > 0))
{ {
switch (ch) switch (ch)
{ {

View File

@ -709,7 +709,7 @@ int arm11_arch_state(struct target_s *target)
arm11_common_t * arm11 = target->arch_info; arm11_common_t * arm11 = target->arch_info;
LOG_USER("target halted due to %s\ncpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "", LOG_USER("target halted due to %s\ncpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "",
Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason )->name, Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason)->name,
R(CPSR), R(CPSR),
R(PC)); R(PC));
@ -732,7 +732,7 @@ int arm11_halt(struct target_s *target)
arm11_common_t * arm11 = target->arch_info; arm11_common_t * arm11 = target->arch_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state == TARGET_UNKNOWN) if (target->state == TARGET_UNKNOWN)
{ {
@ -789,7 +789,7 @@ int arm11_resume(struct target_s *target, int current, uint32_t address, int han
arm11_common_t * arm11 = target->arch_info; arm11_common_t * arm11 = target->arch_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state != TARGET_HALTED) if (target->state != TARGET_HALTED)
@ -889,7 +889,7 @@ int arm11_step(struct target_s *target, int current, uint32_t address, int handl
FNC_INFO; FNC_INFO;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state != TARGET_HALTED) if (target->state != TARGET_HALTED)
{ {
@ -1035,7 +1035,7 @@ int arm11_deassert_reset(struct target_s *target)
#if 0 #if 0
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
/* deassert reset lines */ /* deassert reset lines */
@ -1960,7 +1960,7 @@ int arm11_register_commands(struct command_context_s *cmd_ctx)
RC_FINAL_BOOL("error_fatal", "Terminate program if transfer error was found (default: enabled)", RC_FINAL_BOOL("error_fatal", "Terminate program if transfer error was found (default: enabled)",
memwrite_error_fatal) memwrite_error_fatal)
) /* memwrite */ ) /* memwrite */
RC_FINAL_BOOL("no_increment", "Don't increment address on multi-read/-write (default: disabled)", RC_FINAL_BOOL("no_increment", "Don't increment address on multi-read/-write (default: disabled)",
memrw_no_increment) memrw_no_increment)
@ -1976,7 +1976,7 @@ int arm11_register_commands(struct command_context_s *cmd_ctx)
RC_FINAL("mcr", "Write Coprocessor register", RC_FINAL("mcr", "Write Coprocessor register",
arm11_handle_mcr) arm11_handle_mcr)
) /* arm11 */ ) /* arm11 */
return ERROR_OK; return ERROR_OK;
} }

View File

@ -319,7 +319,7 @@ int arm720t_arch_state(struct target_s *target)
"cpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "\n" "cpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "\n"
"MMU: %s, Cache: %s", "MMU: %s, Cache: %s",
armv4_5_state_strings[armv4_5->core_state], armv4_5_state_strings[armv4_5->core_state],
Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason )->name , Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason)->name ,
armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)], armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)],
buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32), buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32),
buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32), buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32),

View File

@ -526,7 +526,7 @@ int arm7_9_set_watchpoint(struct target_s *target, watchpoint_t *watchpoint)
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_ADDR_VALUE], watchpoint->address); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_ADDR_VALUE], watchpoint->address);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_ADDR_MASK], mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_ADDR_MASK], mask);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_DATA_MASK], watchpoint->mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_DATA_MASK], watchpoint->mask);
if (watchpoint->mask != 0xffffffffu ) if (watchpoint->mask != 0xffffffffu)
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_DATA_VALUE], watchpoint->value); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_DATA_VALUE], watchpoint->value);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_CONTROL_MASK], 0xff & ~EICE_W_CTRL_nOPC & ~rw_mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_CONTROL_MASK], 0xff & ~EICE_W_CTRL_nOPC & ~rw_mask);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_CONTROL_VALUE], EICE_W_CTRL_ENABLE | EICE_W_CTRL_nOPC | (watchpoint->rw & 1)); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W0_CONTROL_VALUE], EICE_W_CTRL_ENABLE | EICE_W_CTRL_nOPC | (watchpoint->rw & 1));
@ -543,7 +543,7 @@ int arm7_9_set_watchpoint(struct target_s *target, watchpoint_t *watchpoint)
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_ADDR_VALUE], watchpoint->address); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_ADDR_VALUE], watchpoint->address);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_ADDR_MASK], mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_ADDR_MASK], mask);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_DATA_MASK], watchpoint->mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_DATA_MASK], watchpoint->mask);
if (watchpoint->mask != 0xffffffffu ) if (watchpoint->mask != 0xffffffffu)
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_DATA_VALUE], watchpoint->value); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_DATA_VALUE], watchpoint->value);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_CONTROL_MASK], 0xff & ~EICE_W_CTRL_nOPC & ~rw_mask); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_CONTROL_MASK], 0xff & ~EICE_W_CTRL_nOPC & ~rw_mask);
embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_CONTROL_VALUE], EICE_W_CTRL_ENABLE | EICE_W_CTRL_nOPC | (watchpoint->rw & 1)); embeddedice_set_reg(&arm7_9->eice_cache->reg_list[EICE_W1_CONTROL_VALUE], EICE_W_CTRL_ENABLE | EICE_W_CTRL_nOPC | (watchpoint->rw & 1));

View File

@ -822,7 +822,7 @@ int arm7tdmi_init_arch_info(target_t *target, arm7tdmi_common_t *arm7tdmi, jtag_
return ERROR_OK; return ERROR_OK;
} }
int arm7tdmi_target_create(struct target_s *target, Jim_Interp *interp ) int arm7tdmi_target_create(struct target_s *target, Jim_Interp *interp)
{ {
arm7tdmi_common_t *arm7tdmi; arm7tdmi_common_t *arm7tdmi;

View File

@ -110,7 +110,7 @@ int arm966e_init_arch_info(target_t *target, arm966e_common_t *arm966e, jtag_tap
return ERROR_OK; return ERROR_OK;
} }
int arm966e_target_create(struct target_s *target, Jim_Interp *interp ) int arm966e_target_create(struct target_s *target, Jim_Interp *interp)
{ {
arm966e_common_t *arm966e = calloc(1,sizeof(arm966e_common_t)); arm966e_common_t *arm966e = calloc(1,sizeof(arm966e_common_t));

View File

@ -39,7 +39,7 @@
int handle_arm9tdmi_catch_vectors_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); int handle_arm9tdmi_catch_vectors_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
/* forward declarations */ /* forward declarations */
int arm9tdmi_target_create(struct target_s *target, Jim_Interp *interp ); int arm9tdmi_target_create(struct target_s *target, Jim_Interp *interp);
int arm9tdmi_quit(void); int arm9tdmi_quit(void);

View File

@ -81,7 +81,7 @@ int adi_jtag_dp_scan(swjdp_common_t *swjdp, uint8_t instr, uint8_t reg_addr, uin
arm_jtag_set_instr(jtag_info, instr, NULL); arm_jtag_set_instr(jtag_info, instr, NULL);
/* Add specified number of tck clocks before accessing memory bus */ /* Add specified number of tck clocks before accessing memory bus */
if ((instr == DAP_IR_APACC) && ((reg_addr == AP_REG_DRW)||((reg_addr&0xF0) == AP_REG_BD0) )&& (swjdp->memaccess_tck != 0)) if ((instr == DAP_IR_APACC) && ((reg_addr == AP_REG_DRW)||((reg_addr&0xF0) == AP_REG_BD0))&& (swjdp->memaccess_tck != 0))
jtag_add_runtest(swjdp->memaccess_tck, jtag_set_end_state(TAP_IDLE)); jtag_add_runtest(swjdp->memaccess_tck, jtag_set_end_state(TAP_IDLE));
fields[0].tap = jtag_info->tap; fields[0].tap = jtag_info->tap;
@ -112,7 +112,7 @@ int adi_jtag_dp_scan_u32(swjdp_common_t *swjdp, uint8_t instr, uint8_t reg_addr,
arm_jtag_set_instr(jtag_info, instr, NULL); arm_jtag_set_instr(jtag_info, instr, NULL);
/* Add specified number of tck clocks before accessing memory bus */ /* Add specified number of tck clocks before accessing memory bus */
if ((instr == DAP_IR_APACC) && ((reg_addr == AP_REG_DRW)||((reg_addr&0xF0) == AP_REG_BD0) )&& (swjdp->memaccess_tck != 0)) if ((instr == DAP_IR_APACC) && ((reg_addr == AP_REG_DRW)||((reg_addr&0xF0) == AP_REG_BD0))&& (swjdp->memaccess_tck != 0))
jtag_add_runtest(swjdp->memaccess_tck, jtag_set_end_state(TAP_IDLE)); jtag_add_runtest(swjdp->memaccess_tck, jtag_set_end_state(TAP_IDLE));
fields[0].tap = jtag_info->tap; fields[0].tap = jtag_info->tap;
@ -374,13 +374,13 @@ int dap_setup_accessport(swjdp_common_t *swjdp, uint32_t csw, uint32_t tar)
if (csw != swjdp->ap_csw_value) if (csw != swjdp->ap_csw_value)
{ {
/* LOG_DEBUG("swjdp : Set CSW %x",csw); */ /* LOG_DEBUG("swjdp : Set CSW %x",csw); */
dap_ap_write_reg_u32(swjdp, AP_REG_CSW, csw ); dap_ap_write_reg_u32(swjdp, AP_REG_CSW, csw);
swjdp->ap_csw_value = csw; swjdp->ap_csw_value = csw;
} }
if (tar != swjdp->ap_tar_value) if (tar != swjdp->ap_tar_value)
{ {
/* LOG_DEBUG("swjdp : Set TAR %x",tar); */ /* LOG_DEBUG("swjdp : Set TAR %x",tar); */
dap_ap_write_reg_u32(swjdp, AP_REG_TAR, tar ); dap_ap_write_reg_u32(swjdp, AP_REG_TAR, tar);
swjdp->ap_tar_value = tar; swjdp->ap_tar_value = tar;
} }
if (csw & CSW_ADDRINC_MASK) if (csw & CSW_ADDRINC_MASK)
@ -404,7 +404,7 @@ int mem_ap_read_u32(swjdp_common_t *swjdp, uint32_t address, uint32_t *value)
swjdp->trans_mode = TRANS_MODE_COMPOSITE; swjdp->trans_mode = TRANS_MODE_COMPOSITE;
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, address & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, address & 0xFFFFFFF0);
dap_ap_read_reg_u32(swjdp, AP_REG_BD0 | (address & 0xC), value ); dap_ap_read_reg_u32(swjdp, AP_REG_BD0 | (address & 0xC), value);
return ERROR_OK; return ERROR_OK;
} }
@ -428,7 +428,7 @@ int mem_ap_write_u32(swjdp_common_t *swjdp, uint32_t address, uint32_t value)
swjdp->trans_mode = TRANS_MODE_COMPOSITE; swjdp->trans_mode = TRANS_MODE_COMPOSITE;
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, address & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, address & 0xFFFFFFF0);
dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (address & 0xC), value ); dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (address & 0xC), value);
return ERROR_OK; return ERROR_OK;
} }
@ -467,7 +467,7 @@ int mem_ap_write_buf_u32(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint
uint32_t outvalue; uint32_t outvalue;
memcpy(&outvalue, pBuffer, sizeof(uint32_t)); memcpy(&outvalue, pBuffer, sizeof(uint32_t));
for (i = 0; i < 4; i++ ) for (i = 0; i < 4; i++)
{ {
*((uint8_t*)pBuffer + (adr & 0x3)) = outvalue; *((uint8_t*)pBuffer + (adr & 0x3)) = outvalue;
outvalue >>= 8; outvalue >>= 8;
@ -492,7 +492,7 @@ int mem_ap_write_buf_u32(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint
for (writecount = 0; writecount < blocksize; writecount++) for (writecount = 0; writecount < blocksize; writecount++)
{ {
dap_ap_write_reg(swjdp, AP_REG_DRW, buffer + 4 * writecount ); dap_ap_write_reg(swjdp, AP_REG_DRW, buffer + 4 * writecount);
} }
if (swjdp_transaction_endcheck(swjdp) == ERROR_OK) if (swjdp_transaction_endcheck(swjdp) == ERROR_OK)
@ -546,7 +546,7 @@ int mem_ap_write_buf_packed_u16(swjdp_common_t *swjdp, uint8_t *buffer, int coun
{ {
nbytes = MIN((writecount << 1), 4); nbytes = MIN((writecount << 1), 4);
if (nbytes < 4 ) if (nbytes < 4)
{ {
if (mem_ap_write_buf_u16(swjdp, buffer, nbytes, address) != ERROR_OK) if (mem_ap_write_buf_u16(swjdp, buffer, nbytes, address) != ERROR_OK)
{ {
@ -561,7 +561,7 @@ int mem_ap_write_buf_packed_u16(swjdp_common_t *swjdp, uint8_t *buffer, int coun
uint32_t outvalue; uint32_t outvalue;
memcpy(&outvalue, buffer, sizeof(uint32_t)); memcpy(&outvalue, buffer, sizeof(uint32_t));
for (i = 0; i < nbytes; i++ ) for (i = 0; i < nbytes; i++)
{ {
*((uint8_t*)buffer + (address & 0x3)) = outvalue; *((uint8_t*)buffer + (address & 0x3)) = outvalue;
outvalue >>= 8; outvalue >>= 8;
@ -602,7 +602,7 @@ int mem_ap_write_buf_u16(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint
uint16_t svalue; uint16_t svalue;
memcpy(&svalue, buffer, sizeof(uint16_t)); memcpy(&svalue, buffer, sizeof(uint16_t));
uint32_t outvalue = (uint32_t)svalue << 8 * (address & 0x3); uint32_t outvalue = (uint32_t)svalue << 8 * (address & 0x3);
dap_ap_write_reg_u32(swjdp, AP_REG_DRW, outvalue ); dap_ap_write_reg_u32(swjdp, AP_REG_DRW, outvalue);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
count -= 2; count -= 2;
address += 2; address += 2;
@ -638,7 +638,7 @@ int mem_ap_write_buf_packed_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count
{ {
nbytes = MIN(writecount, 4); nbytes = MIN(writecount, 4);
if (nbytes < 4 ) if (nbytes < 4)
{ {
if (mem_ap_write_buf_u8(swjdp, buffer, nbytes, address) != ERROR_OK) if (mem_ap_write_buf_u8(swjdp, buffer, nbytes, address) != ERROR_OK)
{ {
@ -653,7 +653,7 @@ int mem_ap_write_buf_packed_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count
uint32_t outvalue; uint32_t outvalue;
memcpy(&outvalue, buffer, sizeof(uint32_t)); memcpy(&outvalue, buffer, sizeof(uint32_t));
for (i = 0; i < nbytes; i++ ) for (i = 0; i < nbytes; i++)
{ {
*((uint8_t*)buffer + (address & 0x3)) = outvalue; *((uint8_t*)buffer + (address & 0x3)) = outvalue;
outvalue >>= 8; outvalue >>= 8;
@ -692,7 +692,7 @@ int mem_ap_write_buf_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint3
{ {
dap_setup_accessport(swjdp, CSW_8BIT | CSW_ADDRINC_SINGLE, address); dap_setup_accessport(swjdp, CSW_8BIT | CSW_ADDRINC_SINGLE, address);
uint32_t outvalue = (uint32_t)*buffer << 8 * (address & 0x3); uint32_t outvalue = (uint32_t)*buffer << 8 * (address & 0x3);
dap_ap_write_reg_u32(swjdp, AP_REG_DRW, outvalue ); dap_ap_write_reg_u32(swjdp, AP_REG_DRW, outvalue);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
count--; count--;
address++; address++;
@ -770,7 +770,7 @@ int mem_ap_read_buf_u32(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint3
uint32_t data; uint32_t data;
memcpy(&data, pBuffer, sizeof(uint32_t)); memcpy(&data, pBuffer, sizeof(uint32_t));
for (i = 0; i < 4; i++ ) for (i = 0; i < 4; i++)
{ {
*((uint8_t*)pBuffer) = (data >> 8 * (adr & 0x3)); *((uint8_t*)pBuffer) = (data >> 8 * (adr & 0x3));
pBuffer++; pBuffer++;
@ -810,7 +810,7 @@ int mem_ap_read_buf_packed_u16(swjdp_common_t *swjdp, uint8_t *buffer, int count
do do
{ {
dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue ); dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue);
if (swjdp_transaction_endcheck(swjdp) != ERROR_OK) if (swjdp_transaction_endcheck(swjdp) != ERROR_OK)
{ {
LOG_WARNING("Block read error address 0x%" PRIx32 ", count 0x%x", address, count); LOG_WARNING("Block read error address 0x%" PRIx32 ", count 0x%x", address, count);
@ -819,7 +819,7 @@ int mem_ap_read_buf_packed_u16(swjdp_common_t *swjdp, uint8_t *buffer, int count
nbytes = MIN((readcount << 1), 4); nbytes = MIN((readcount << 1), 4);
for (i = 0; i < nbytes; i++ ) for (i = 0; i < nbytes; i++)
{ {
*((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3)); *((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3));
buffer++; buffer++;
@ -847,11 +847,11 @@ int mem_ap_read_buf_u16(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint3
while (count > 0) while (count > 0)
{ {
dap_setup_accessport(swjdp, CSW_16BIT | CSW_ADDRINC_SINGLE, address); dap_setup_accessport(swjdp, CSW_16BIT | CSW_ADDRINC_SINGLE, address);
dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue ); dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
if (address & 0x1) if (address & 0x1)
{ {
for (i = 0; i < 2; i++ ) for (i = 0; i < 2; i++)
{ {
*((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3)); *((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3));
buffer++; buffer++;
@ -902,7 +902,7 @@ int mem_ap_read_buf_packed_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count,
do do
{ {
dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue ); dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue);
if (swjdp_transaction_endcheck(swjdp) != ERROR_OK) if (swjdp_transaction_endcheck(swjdp) != ERROR_OK)
{ {
LOG_WARNING("Block read error address 0x%" PRIx32 ", count 0x%x", address, count); LOG_WARNING("Block read error address 0x%" PRIx32 ", count 0x%x", address, count);
@ -911,7 +911,7 @@ int mem_ap_read_buf_packed_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count,
nbytes = MIN(readcount, 4); nbytes = MIN(readcount, 4);
for (i = 0; i < nbytes; i++ ) for (i = 0; i < nbytes; i++)
{ {
*((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3)); *((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3));
buffer++; buffer++;
@ -939,7 +939,7 @@ int mem_ap_read_buf_u8(swjdp_common_t *swjdp, uint8_t *buffer, int count, uint32
while (count > 0) while (count > 0)
{ {
dap_setup_accessport(swjdp, CSW_8BIT | CSW_ADDRINC_SINGLE, address); dap_setup_accessport(swjdp, CSW_8BIT | CSW_ADDRINC_SINGLE, address);
dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue ); dap_ap_read_reg_u32(swjdp, AP_REG_DRW, &invalue);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
*((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3)); *((uint8_t*)buffer) = (invalue >> 8 * (address & 0x3));
count--; count--;
@ -1065,7 +1065,7 @@ int dap_info_command(struct command_context_s *cmd_ctx, swjdp_common_t *swjdp, i
} }
else else
{ {
command_print(cmd_ctx, "\tROM table in legacy format" ); command_print(cmd_ctx, "\tROM table in legacy format");
} }
/* Now we read ROM table ID registers, ref. ARM IHI 0029B sec */ /* Now we read ROM table ID registers, ref. ARM IHI 0029B sec */
mem_ap_read_u32(swjdp, (dbgbase&0xFFFFF000) | 0xFF0, &cid0); mem_ap_read_u32(swjdp, (dbgbase&0xFFFFF000) | 0xFF0, &cid0);
@ -1081,7 +1081,7 @@ int dap_info_command(struct command_context_s *cmd_ctx, swjdp_common_t *swjdp, i
} }
else else
{ {
command_print(cmd_ctx, "\tMEMTYPE system memory not present. Dedicated debug bus" ); command_print(cmd_ctx, "\tMEMTYPE system memory not present. Dedicated debug bus");
} }
/* Now we read ROM table entries from dbgbase&0xFFFFF000) | 0x000 until we get 0x00000000 */ /* Now we read ROM table entries from dbgbase&0xFFFFF000) | 0x000 until we get 0x00000000 */

View File

@ -762,7 +762,7 @@ int evaluate_mrs_msr(uint32_t opcode, uint32_t address, arm_instruction_t *instr
(opcode & 0x40000) ? "s" : "", (opcode & 0x40000) ? "s" : "",
(opcode & 0x80000) ? "f" : "", (opcode & 0x80000) ? "f" : "",
ror(immediate, (rotate * 2)) ror(immediate, (rotate * 2))
); );
} }
else /* register variant */ else /* register variant */
{ {
@ -774,7 +774,7 @@ int evaluate_mrs_msr(uint32_t opcode, uint32_t address, arm_instruction_t *instr
(opcode & 0x40000) ? "s" : "", (opcode & 0x40000) ? "s" : "",
(opcode & 0x80000) ? "f" : "", (opcode & 0x80000) ? "f" : "",
Rm Rm
); );
} }
} }
@ -1200,7 +1200,7 @@ int arm_evaluate_opcode(uint32_t opcode, uint32_t address, arm_instruction_t *in
if ((opcode & 0x0e000000) == 0x0a000000) if ((opcode & 0x0e000000) == 0x0a000000)
return evaluate_blx_imm(opcode, address, instruction); return evaluate_blx_imm(opcode, address, instruction);
/* Extended coprocessor opcode space (ARMv5 and higher )*/ /* Extended coprocessor opcode space (ARMv5 and higher)*/
/* Coprocessor load/store and double register transfers */ /* Coprocessor load/store and double register transfers */
if ((opcode & 0x0e000000) == 0x0c000000) if ((opcode & 0x0e000000) == 0x0c000000)
return evaluate_ldc_stc_mcrr_mrrc(opcode, address, instruction); return evaluate_ldc_stc_mcrr_mrrc(opcode, address, instruction);

View File

@ -299,7 +299,7 @@ int armv4_5_arch_state(struct target_s *target)
LOG_USER("target halted in %s state due to %s, current mode: %s\ncpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "", LOG_USER("target halted in %s state due to %s, current mode: %s\ncpsr: 0x%8.8" PRIx32 " pc: 0x%8.8" PRIx32 "",
armv4_5_state_strings[armv4_5->core_state], armv4_5_state_strings[armv4_5->core_state],
Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason )->name, Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason)->name,
armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)], armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)],
buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32), buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32),
buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32)); buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32));

View File

@ -144,7 +144,7 @@ extern int armv7m_blank_check_memory(struct target_s *target, uint32_t address,
* Rd: source register * Rd: source register
* SYSm: destination special register * SYSm: destination special register
*/ */
#define ARMV7M_T_MSR(SYSm, Rn) ((0xF380 | (Rn << 8 )) | ((0x8800 | SYSm) << 16)) #define ARMV7M_T_MSR(SYSm, Rn) ((0xF380 | (Rn << 8)) | ((0x8800 | SYSm) << 16))
/* Change Processor State. The instruction modifies the PRIMASK and FAULTMASK /* Change Processor State. The instruction modifies the PRIMASK and FAULTMASK
* special-purpose register values (Thumb mode) 16 bit Thumb2 instruction * special-purpose register values (Thumb mode) 16 bit Thumb2 instruction
@ -159,7 +159,7 @@ extern int armv7m_blank_check_memory(struct target_s *target, uint32_t address,
/* Breakpoint (Thumb mode) v5 onwards /* Breakpoint (Thumb mode) v5 onwards
* Im: immediate value used by debugger * Im: immediate value used by debugger
*/ */
#define ARMV7M_T_BKPT(Im) ((0xBE00 | Im ) | ((0xBE00 | Im ) << 16)) #define ARMV7M_T_BKPT(Im) ((0xBE00 | Im) | ((0xBE00 | Im) << 16))
/* Store register (Thumb mode) /* Store register (Thumb mode)
* Rd: source register * Rd: source register

View File

@ -109,11 +109,11 @@ int cortexm3_dap_read_coreregister_u32(swjdp_common_t *swjdp, uint32_t *value, i
/* mem_ap_write_u32(swjdp, DCB_DCRSR, regnum); */ /* mem_ap_write_u32(swjdp, DCB_DCRSR, regnum); */
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRSR & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRSR & 0xFFFFFFF0);
dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRSR & 0xC), regnum ); dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRSR & 0xC), regnum);
/* mem_ap_read_u32(swjdp, DCB_DCRDR, value); */ /* mem_ap_read_u32(swjdp, DCB_DCRDR, value); */
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRDR & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRDR & 0xFFFFFFF0);
dap_ap_read_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRDR & 0xC), value ); dap_ap_read_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRDR & 0xC), value);
mem_ap_write_u32(swjdp, DCB_DCRDR, dcrdr); mem_ap_write_u32(swjdp, DCB_DCRDR, dcrdr);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
@ -134,11 +134,11 @@ int cortexm3_dap_write_coreregister_u32(swjdp_common_t *swjdp, uint32_t value, i
/* mem_ap_write_u32(swjdp, DCB_DCRDR, core_regs[i]); */ /* mem_ap_write_u32(swjdp, DCB_DCRDR, core_regs[i]); */
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRDR & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRDR & 0xFFFFFFF0);
dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRDR & 0xC), value ); dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRDR & 0xC), value);
/* mem_ap_write_u32(swjdp, DCB_DCRSR, i | DCRSR_WnR ); */ /* mem_ap_write_u32(swjdp, DCB_DCRSR, i | DCRSR_WnR); */
dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRSR & 0xFFFFFFF0); dap_setup_accessport(swjdp, CSW_32BIT | CSW_ADDRINC_OFF, DCB_DCRSR & 0xFFFFFFF0);
dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRSR & 0xC), regnum | DCRSR_WnR ); dap_ap_write_reg_u32(swjdp, AP_REG_BD0 | (DCB_DCRSR & 0xC), regnum | DCRSR_WnR);
mem_ap_write_u32(swjdp, DCB_DCRDR, dcrdr); mem_ap_write_u32(swjdp, DCB_DCRDR, dcrdr);
retval = swjdp_transaction_endcheck(swjdp); retval = swjdp_transaction_endcheck(swjdp);
@ -204,7 +204,7 @@ int cortex_m3_single_step_core(target_t *target)
return ERROR_OK; return ERROR_OK;
} }
int cortex_m3_exec_opcode(target_t *target,uint32_t opcode, int len /* MODE, r0_invalue, &r0_outvalue */ ) int cortex_m3_exec_opcode(target_t *target,uint32_t opcode, int len /* MODE, r0_invalue, &r0_outvalue */)
{ {
/* get pointers to arch-specific information */ /* get pointers to arch-specific information */
armv7m_common_t *armv7m = target->arch_info; armv7m_common_t *armv7m = target->arch_info;
@ -444,7 +444,7 @@ int cortex_m3_debug_entry(target_t *target)
LOG_DEBUG("entered debug state in core mode: %s at PC 0x%" PRIx32 ", target->state: %s", LOG_DEBUG("entered debug state in core mode: %s at PC 0x%" PRIx32 ", target->state: %s",
armv7m_mode_strings[armv7m->core_mode], armv7m_mode_strings[armv7m->core_mode],
*(uint32_t*)(armv7m->core_cache->reg_list[15].value), *(uint32_t*)(armv7m->core_cache->reg_list[15].value),
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (armv7m->post_debug_entry) if (armv7m->post_debug_entry)
armv7m->post_debug_entry(target); armv7m->post_debug_entry(target);
@ -520,7 +520,7 @@ int cortex_m3_poll(target_t *target)
#if 0 #if 0
/* Read Debug Fault Status Register, added to figure out the lockup when running flashtest.script */ /* Read Debug Fault Status Register, added to figure out the lockup when running flashtest.script */
mem_ap_read_atomic_u32(swjdp, NVIC_DFSR, &cortex_m3->nvic_dfsr); mem_ap_read_atomic_u32(swjdp, NVIC_DFSR, &cortex_m3->nvic_dfsr);
LOG_DEBUG("dcb_dhcsr 0x%x, nvic_dfsr 0x%x, target->state: %s", cortex_m3->dcb_dhcsr, cortex_m3->nvic_dfsr, Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); LOG_DEBUG("dcb_dhcsr 0x%x, nvic_dfsr 0x%x, target->state: %s", cortex_m3->dcb_dhcsr, cortex_m3->nvic_dfsr, Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
#endif #endif
return ERROR_OK; return ERROR_OK;
@ -529,7 +529,7 @@ int cortex_m3_poll(target_t *target)
int cortex_m3_halt(target_t *target) int cortex_m3_halt(target_t *target)
{ {
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state == TARGET_HALTED) if (target->state == TARGET_HALTED)
{ {
@ -751,7 +751,7 @@ int cortex_m3_assert_reset(target_t *target)
int assert_srst = 1; int assert_srst = 1;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name ); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
enum reset_types jtag_reset_config = jtag_get_reset_config(); enum reset_types jtag_reset_config = jtag_get_reset_config();
if (!(jtag_reset_config & RESET_HAS_SRST)) if (!(jtag_reset_config & RESET_HAS_SRST))
@ -765,7 +765,7 @@ int cortex_m3_assert_reset(target_t *target)
if (!(cortex_m3->dcb_dhcsr & C_DEBUGEN)) if (!(cortex_m3->dcb_dhcsr & C_DEBUGEN))
mem_ap_write_u32(swjdp, DCB_DHCSR, DBGKEY | C_DEBUGEN); mem_ap_write_u32(swjdp, DCB_DHCSR, DBGKEY | C_DEBUGEN);
mem_ap_write_u32(swjdp, DCB_DCRDR, 0 ); mem_ap_write_u32(swjdp, DCB_DCRDR, 0);
if (!target->reset_halt) if (!target->reset_halt)
{ {
@ -862,7 +862,7 @@ int cortex_m3_assert_reset(target_t *target)
int cortex_m3_deassert_reset(target_t *target) int cortex_m3_deassert_reset(target_t *target)
{ {
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
/* deassert reset lines */ /* deassert reset lines */
jtag_add_reset(0, 0); jtag_add_reset(0, 0);

View File

@ -387,10 +387,10 @@ static int handle_etb_config_command(struct command_context_s *cmd_ctx, char *cm
return ERROR_FAIL; return ERROR_FAIL;
} }
tap = jtag_tap_by_string(args[1] ); tap = jtag_tap_by_string(args[1]);
if (tap == NULL) if (tap == NULL)
{ {
command_print(cmd_ctx, "Tap: %s does not exist", args[1] ); command_print(cmd_ctx, "Tap: %s does not exist", args[1]);
return ERROR_FAIL; return ERROR_FAIL;
} }

View File

@ -533,7 +533,7 @@ static int image_mot_buffer_complete(image_t *image)
} }
else if (record_type >= 1 && record_type <= 3) else if (record_type >= 1 && record_type <= 3)
{ {
switch (record_type ) switch (record_type)
{ {
case 1: case 1:
/* S1 - 16 bit address data record */ /* S1 - 16 bit address data record */
@ -636,7 +636,7 @@ static int image_mot_buffer_complete(image_t *image)
cal_checksum += (uint8_t)checksum; cal_checksum += (uint8_t)checksum;
bytes_read += 2; bytes_read += 2;
if (cal_checksum != 0xFF ) if (cal_checksum != 0xFF)
{ {
/* checksum failed */ /* checksum failed */
LOG_ERROR("incorrect record checksum found in S19 file"); LOG_ERROR("incorrect record checksum found in S19 file");
@ -852,7 +852,7 @@ int image_read_section(image_t *image, int section, uint32_t offset, uint32_t si
memcpy(buffer + *size_read, memcpy(buffer + *size_read,
image_memory->cache + (address - image_memory->cache_address), image_memory->cache + (address - image_memory->cache_address),
(size_in_cache > size) ? size : size_in_cache (size_in_cache > size) ? size : size_in_cache
); );
*size_read += (size_in_cache > size) ? size : size_in_cache; *size_read += (size_in_cache > size) ? size : size_in_cache;
address += (size_in_cache > size) ? size : size_in_cache; address += (size_in_cache > size) ? size : size_in_cache;

View File

@ -265,7 +265,7 @@ int mips32_arch_state(struct target_s *target)
} }
LOG_USER("target halted due to %s, pc: 0x%8.8" PRIx32 "", LOG_USER("target halted due to %s, pc: 0x%8.8" PRIx32 "",
Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason )->name , Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason)->name ,
buf_get_u32(mips32->core_cache->reg_list[MIPS32_PC].value, 0, 32)); buf_get_u32(mips32->core_cache->reg_list[MIPS32_PC].value, 0, 32));
return ERROR_OK; return ERROR_OK;

View File

@ -187,7 +187,7 @@ static int mips32_pracc_exec_write(mips32_pracc_context *ctx, uint32_t address)
offset = (address - MIPS32_PRACC_PARAM_IN) / 4; offset = (address - MIPS32_PRACC_PARAM_IN) / 4;
ctx->local_iparam[offset] = data; ctx->local_iparam[offset] = data;
} }
else if ((address >= MIPS32_PRACC_PARAM_OUT ) else if ((address >= MIPS32_PRACC_PARAM_OUT)
&& (address <= MIPS32_PRACC_PARAM_OUT + ctx->num_oparam * 4)) && (address <= MIPS32_PRACC_PARAM_OUT + ctx->num_oparam * 4))
{ {
offset = (address - MIPS32_PRACC_PARAM_OUT) / 4; offset = (address - MIPS32_PRACC_PARAM_OUT) / 4;

View File

@ -35,7 +35,7 @@
#define UPPER16(uint32_t) (uint32_t >> 16) #define UPPER16(uint32_t) (uint32_t >> 16)
#define LOWER16(uint32_t) (uint32_t & 0xFFFF) #define LOWER16(uint32_t) (uint32_t & 0xFFFF)
#define NEG16(v) (((~(v)) + 1) & 0xFFFF) #define NEG16(v) (((~(v)) + 1) & 0xFFFF)
/*#define NEG18(v) (((~(v)) + 1) & 0x3FFFF )*/ /*#define NEG18(v) (((~(v)) + 1) & 0x3FFFF)*/
extern int mips32_pracc_read_mem(mips_ejtag_t *ejtag_info, uint32_t addr, int size, int count, void *buf); extern int mips32_pracc_read_mem(mips_ejtag_t *ejtag_info, uint32_t addr, int size, int count, void *buf);
extern int mips32_pracc_write_mem(mips_ejtag_t *ejtag_info, uint32_t addr, int size, int count, void *buf); extern int mips32_pracc_write_mem(mips_ejtag_t *ejtag_info, uint32_t addr, int size, int count, void *buf);

View File

@ -292,7 +292,7 @@ int mips_ejtag_init(mips_ejtag_t *ejtag_info)
ejtag_info->impcode & (1 << 16) ? " MIPS16": "", ejtag_info->impcode & (1 << 16) ? " MIPS16": "",
ejtag_info->impcode & (1 << 14) ? " noDMA": " DMA", ejtag_info->impcode & (1 << 14) ? " noDMA": " DMA",
ejtag_info->impcode & (1 << 0) ? " MIPS64": " MIPS32" ejtag_info->impcode & (1 << 0) ? " MIPS64": " MIPS32"
); );
if ((ejtag_info->impcode & (1 << 14)) == 0) if ((ejtag_info->impcode & (1 << 14)) == 0)
LOG_DEBUG("EJTAG: DMA Access Mode Support Enabled"); LOG_DEBUG("EJTAG: DMA Access Mode Support Enabled");

View File

@ -148,7 +148,7 @@ int mips_m4k_debug_entry(target_t *target)
LOG_DEBUG("entered debug state at PC 0x%" PRIx32 ", target->state: %s", LOG_DEBUG("entered debug state at PC 0x%" PRIx32 ", target->state: %s",
*(uint32_t*)(mips32->core_cache->reg_list[MIPS32_PC].value), *(uint32_t*)(mips32->core_cache->reg_list[MIPS32_PC].value),
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
return ERROR_OK; return ERROR_OK;
} }
@ -220,7 +220,7 @@ int mips_m4k_halt(struct target_s *target)
mips_ejtag_t *ejtag_info = &mips32->ejtag_info; mips_ejtag_t *ejtag_info = &mips32->ejtag_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state == TARGET_HALTED) if (target->state == TARGET_HALTED)
{ {
@ -265,7 +265,7 @@ int mips_m4k_assert_reset(target_t *target)
mips_ejtag_t *ejtag_info = &mips32->ejtag_info; mips_ejtag_t *ejtag_info = &mips32->ejtag_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
enum reset_types jtag_reset_config = jtag_get_reset_config(); enum reset_types jtag_reset_config = jtag_get_reset_config();
if (!(jtag_reset_config & RESET_HAS_SRST)) if (!(jtag_reset_config & RESET_HAS_SRST))
@ -324,7 +324,7 @@ int mips_m4k_assert_reset(target_t *target)
int mips_m4k_deassert_reset(target_t *target) int mips_m4k_deassert_reset(target_t *target)
{ {
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
/* deassert reset lines */ /* deassert reset lines */
jtag_add_reset(0, 0); jtag_add_reset(0, 0);

View File

@ -119,7 +119,7 @@ static int register_set_dummy_core_reg(reg_t *reg, uint8_t *buf)
void register_init_dummy(reg_t *reg) void register_init_dummy(reg_t *reg)
{ {
static int dummy_arch_type = -1; static int dummy_arch_type = -1;
if (dummy_arch_type == -1 ) if (dummy_arch_type == -1)
dummy_arch_type = register_reg_arch_type(register_get_dummy_core_reg, register_set_dummy_core_reg); dummy_arch_type = register_reg_arch_type(register_get_dummy_core_reg, register_set_dummy_core_reg);
reg->arch_type = dummy_arch_type; reg->arch_type = dummy_arch_type;

File diff suppressed because it is too large Load Diff

View File

@ -397,7 +397,7 @@ int target_write_u8(struct target_s *target, uint32_t address, uint8_t value);
int target_arch_state(struct target_s *target); int target_arch_state(struct target_s *target);
void target_handle_event(target_t *t, enum target_event e); void target_handle_event(target_t *t, enum target_event e);
void target_all_handle_event(enum target_event e ); void target_all_handle_event(enum target_event e);
#define ERROR_TARGET_INVALID (-300) #define ERROR_TARGET_INVALID (-300)
#define ERROR_TARGET_INIT_FAILED (-301) #define ERROR_TARGET_INIT_FAILED (-301)
@ -412,6 +412,6 @@ void target_all_handle_event(enum target_event e );
#define ERROR_TARGET_NOT_EXAMINED (-311) #define ERROR_TARGET_NOT_EXAMINED (-311)
extern const Jim_Nvp nvp_error_target[]; extern const Jim_Nvp nvp_error_target[];
extern const char *target_strerror_safe(int err ); extern const char *target_strerror_safe(int err);
#endif /* TARGET_H */ #endif /* TARGET_H */

View File

@ -117,8 +117,8 @@ int target_request(target_t *target, uint32_t request)
{ {
target_req_cmd_t target_req_cmd = request & 0xff; target_req_cmd_t target_req_cmd = request & 0xff;
if (charmsg_mode ) { if (charmsg_mode) {
target_charmsg(target, target_req_cmd ); target_charmsg(target, target_req_cmd);
return ERROR_OK; return ERROR_OK;
} }
switch (target_req_cmd) switch (target_req_cmd)
@ -295,7 +295,7 @@ static int handle_target_request_debugmsgs_command(struct command_context_s *cmd
} }
command_print(cmd_ctx, "receiving debug messages from current target %s", command_print(cmd_ctx, "receiving debug messages from current target %s",
(receiving) ? (charmsg_mode?"charmsg":"enabled") : "disabled" ); (receiving) ? (charmsg_mode?"charmsg":"enabled") : "disabled");
return ERROR_OK; return ERROR_OK;
} }

View File

@ -129,16 +129,16 @@ struct target_type_s
int (*register_commands)(struct command_context_s *cmd_ctx); int (*register_commands)(struct command_context_s *cmd_ctx);
/* called when target is created */ /* called when target is created */
int (*target_create)(struct target_s *target, Jim_Interp *interp ); int (*target_create)(struct target_s *target, Jim_Interp *interp);
/* called for various config parameters */ /* called for various config parameters */
/* returns JIM_CONTINUE - if option not understood */ /* returns JIM_CONTINUE - if option not understood */
/* otherwise: JIM_OK, or JIM_ERR, */ /* otherwise: JIM_OK, or JIM_ERR, */
int (*target_jim_configure)(struct target_s *target, Jim_GetOptInfo *goi ); int (*target_jim_configure)(struct target_s *target, Jim_GetOptInfo *goi);
/* target commands specifically handled by the target */ /* target commands specifically handled by the target */
/* returns JIM_OK, or JIM_ERR, or JIM_CONTINUE - if option not understood */ /* returns JIM_OK, or JIM_ERR, or JIM_CONTINUE - if option not understood */
int (*target_jim_commands)(struct target_s *target, Jim_GetOptInfo *goi ); int (*target_jim_commands)(struct target_s *target, Jim_GetOptInfo *goi);
/* invoked after JTAG chain has been examined & validated. During /* invoked after JTAG chain has been examined & validated. During
* this stage the target is examined and any additional setup is * this stage the target is examined and any additional setup is

View File

@ -123,7 +123,7 @@ static int handle_trace_history_command(struct command_context_s *cmd_ctx, char
uint32_t first = 0; uint32_t first = 0;
uint32_t last = trace->trace_history_pos; uint32_t last = trace->trace_history_pos;
if (!trace->trace_history_size ) { if (!trace->trace_history_size) {
command_print(cmd_ctx, "trace history buffer is not allocated"); command_print(cmd_ctx, "trace history buffer is not allocated");
return ERROR_OK; return ERROR_OK;
} }

View File

@ -959,7 +959,7 @@ int xscale_arch_state(struct target_s *target)
"MMU: %s, D-Cache: %s, I-Cache: %s" "MMU: %s, D-Cache: %s, I-Cache: %s"
"%s", "%s",
armv4_5_state_strings[armv4_5->core_state], armv4_5_state_strings[armv4_5->core_state],
Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason )->name , Jim_Nvp_value2name_simple(nvp_target_debug_reason, target->debug_reason)->name ,
armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)], armv4_5_mode_strings[armv4_5_mode_to_number(armv4_5->core_mode)],
buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32), buf_get_u32(armv4_5->core_cache->reg_list[ARMV4_5_CPSR].value, 0, 32),
buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32), buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32),
@ -1202,7 +1202,7 @@ int xscale_halt(target_t *target)
xscale_common_t *xscale = armv4_5->arch_info; xscale_common_t *xscale = armv4_5->arch_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
if (target->state == TARGET_HALTED) if (target->state == TARGET_HALTED)
{ {
@ -1568,7 +1568,7 @@ int xscale_assert_reset(target_t *target)
xscale_common_t *xscale = armv4_5->arch_info; xscale_common_t *xscale = armv4_5->arch_info;
LOG_DEBUG("target->state: %s", LOG_DEBUG("target->state: %s",
Jim_Nvp_value2name_simple(nvp_target_state, target->state )->name); Jim_Nvp_value2name_simple(nvp_target_state, target->state)->name);
/* select DCSR instruction (set endstate to R-T-I to ensure we don't /* select DCSR instruction (set endstate to R-T-I to ensure we don't
* end up in T-L-R, which would reset JTAG * end up in T-L-R, which would reset JTAG

View File

@ -129,11 +129,11 @@ static int xsvf_fd = 0;
/* map xsvf tap state to an openocd "tap_state_t" */ /* map xsvf tap state to an openocd "tap_state_t" */
static tap_state_t xsvf_to_tap(int xsvf_state ) static tap_state_t xsvf_to_tap(int xsvf_state)
{ {
tap_state_t ret; tap_state_t ret;
switch (xsvf_state ) switch (xsvf_state)
{ {
case XSV_RESET: ret = TAP_RESET; break; case XSV_RESET: ret = TAP_RESET; break;
case XSV_IDLE: ret = TAP_IDLE; break; case XSV_IDLE: ret = TAP_IDLE; break;
@ -152,7 +152,7 @@ static tap_state_t xsvf_to_tap(int xsvf_state )
case XSV_IREXIT2: ret = TAP_IREXIT2; break; case XSV_IREXIT2: ret = TAP_IREXIT2; break;
case XSV_IRUPDATE: ret = TAP_IRUPDATE; break; case XSV_IRUPDATE: ret = TAP_IRUPDATE; break;
default: default:
LOG_ERROR("UNKNOWN XSVF STATE 0x%02X", xsvf_state ); LOG_ERROR("UNKNOWN XSVF STATE 0x%02X", xsvf_state);
exit(1); exit(1);
} }
@ -232,10 +232,10 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (strcmp(args[0], "plain") != 0) if (strcmp(args[0], "plain") != 0)
{ {
tap = jtag_tap_by_string(args[0] ); tap = jtag_tap_by_string(args[0]);
if (!tap ) if (!tap)
{ {
command_print(cmd_ctx, "Tap: %s unknown", args[0] ); command_print(cmd_ctx, "Tap: %s unknown", args[0]);
return ERROR_FAIL; return ERROR_FAIL;
} }
} }
@ -261,7 +261,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_USER("xsvf processing file: \"%s\"", filename); LOG_USER("xsvf processing file: \"%s\"", filename);
while (read(xsvf_fd, &opcode, 1) > 0 ) while (read(xsvf_fd, &opcode, 1) > 0)
{ {
/* record the position of the just read opcode within the file */ /* record the position of the just read opcode within the file */
file_offset = lseek(xsvf_fd, 0, SEEK_CUR) - 1; file_offset = lseek(xsvf_fd, 0, SEEK_CUR) - 1;
@ -309,7 +309,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
else else
{ {
xrepeat = myrepeat; xrepeat = myrepeat;
LOG_DEBUG("XREPEAT %d", xrepeat ); LOG_DEBUG("XREPEAT %d", xrepeat);
} }
} }
break; break;
@ -327,7 +327,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
xsdrsize = be_to_h_u32(xsdrsize_buf); xsdrsize = be_to_h_u32(xsdrsize_buf);
LOG_DEBUG("XSDRSIZE %d", xsdrsize); LOG_DEBUG("XSDRSIZE %d", xsdrsize);
if (dr_out_buf ) free(dr_out_buf); if (dr_out_buf) free(dr_out_buf);
if (dr_in_buf) free(dr_in_buf); if (dr_in_buf) free(dr_in_buf);
if (dr_in_mask) free(dr_in_mask); if (dr_in_mask) free(dr_in_mask);
@ -354,7 +354,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (opcode == XSDRTDO) if (opcode == XSDRTDO)
{ {
if (xsvf_read_buffer(xsdrsize, xsvf_fd, dr_in_buf) != ERROR_OK ) if (xsvf_read_buffer(xsdrsize, xsvf_fd, dr_in_buf) != ERROR_OK)
{ {
do_abort = 1; do_abort = 1;
break; break;
@ -366,11 +366,11 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_DEBUG("%s %d", op_name, xsdrsize); LOG_DEBUG("%s %d", op_name, xsdrsize);
for (attempt = 0; attempt < limit; ++attempt ) for (attempt = 0; attempt < limit; ++attempt)
{ {
scan_field_t field; scan_field_t field;
if (attempt > 0 ) if (attempt > 0)
{ {
/* perform the XC9500 exception handling sequence shown in xapp067.pdf and /* perform the XC9500 exception handling sequence shown in xapp067.pdf and
illustrated in psuedo code at end of this file. We start from state illustrated in psuedo code at end of this file. We start from state
@ -393,7 +393,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
TAP_IDLE, TAP_IDLE,
}; };
jtag_add_pathmove(DIM(exception_path), exception_path ); jtag_add_pathmove(DIM(exception_path), exception_path);
if (verbose) if (verbose)
LOG_USER("%s mismatch, xsdrsize=%d retry=%d", op_name, xsdrsize, attempt); LOG_USER("%s mismatch, xsdrsize=%d retry=%d", op_name, xsdrsize, attempt);
@ -498,14 +498,14 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
mystate = xsvf_to_tap(uc); mystate = xsvf_to_tap(uc);
LOG_DEBUG("XSTATE 0x%02X %s", uc, tap_state_name(mystate) ); LOG_DEBUG("XSTATE 0x%02X %s", uc, tap_state_name(mystate));
/* there is no need for the lookahead code that was here since we /* there is no need for the lookahead code that was here since we
queue up the jtag commands anyway. This is a simple way to handle queue up the jtag commands anyway. This is a simple way to handle
the XSTATE. the XSTATE.
*/ */
if (jtag_add_statemove(mystate ) != ERROR_OK ) if (jtag_add_statemove(mystate) != ERROR_OK)
{ {
/* For special states known as stable states /* For special states known as stable states
(Test-Logic-Reset, Run-Test/Idle, Pause-DR, Pause- IR), (Test-Logic-Reset, Run-Test/Idle, Pause-DR, Pause- IR),
@ -524,7 +524,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_ERROR("XSTATE %s is not reachable from current state %s in one clock cycle", LOG_ERROR("XSTATE %s is not reachable from current state %s in one clock cycle",
tap_state_name(mystate), tap_state_name(mystate),
tap_state_name(cmd_queue_cur_state) tap_state_name(cmd_queue_cur_state)
); );
} }
} }
break; break;
@ -538,9 +538,9 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
} }
/* see page 22 of XSVF spec */ /* see page 22 of XSVF spec */
if (uc == 0 ) if (uc == 0)
xendir = TAP_IDLE; xendir = TAP_IDLE;
else if (uc == 1 ) else if (uc == 1)
xendir = TAP_IRPAUSE; xendir = TAP_IRPAUSE;
else else
{ {
@ -561,9 +561,9 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
} }
/* see page 22 of XSVF spec */ /* see page 22 of XSVF spec */
if (uc == 0 ) if (uc == 0)
xenddr = TAP_IDLE; xenddr = TAP_IDLE;
else if (uc == 1 ) else if (uc == 1)
xenddr = TAP_DRPAUSE; xenddr = TAP_DRPAUSE;
else else
{ {
@ -583,7 +583,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
int bitcount; int bitcount;
tap_state_t my_end_state = xruntest ? TAP_IDLE : xendir; tap_state_t my_end_state = xruntest ? TAP_IDLE : xendir;
if (opcode == XSIR ) if (opcode == XSIR)
{ {
/* one byte bitcount */ /* one byte bitcount */
if (read(xsvf_fd, short_buf, 1) < 0) if (read(xsvf_fd, short_buf, 1) < 0)
@ -664,7 +664,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
break; break;
} }
if (ndx < sizeof(comment)-1 ) if (ndx < sizeof(comment)-1)
comment[ndx++] = uc; comment[ndx++] = uc;
} while (uc != 0); } while (uc != 0);
@ -703,15 +703,15 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_DEBUG("XWAIT %s %s usecs:%d", tap_state_name(wait_state), tap_state_name(end_state), delay); LOG_DEBUG("XWAIT %s %s usecs:%d", tap_state_name(wait_state), tap_state_name(end_state), delay);
if (runtest_requires_tck && wait_state == TAP_IDLE ) if (runtest_requires_tck && wait_state == TAP_IDLE)
{ {
jtag_add_runtest(delay, end_state); jtag_add_runtest(delay, end_state);
} }
else else
{ {
jtag_add_statemove(wait_state ); jtag_add_statemove(wait_state);
jtag_add_sleep(delay); jtag_add_sleep(delay);
jtag_add_statemove(end_state ); jtag_add_statemove(end_state);
} }
} }
break; break;
@ -734,14 +734,14 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (read(xsvf_fd, &wait, 1) < 0 if (read(xsvf_fd, &wait, 1) < 0
|| read(xsvf_fd, &end, 1) < 0 || read(xsvf_fd, &end, 1) < 0
|| read(xsvf_fd, clock_buf, 4) < 0 || read(xsvf_fd, clock_buf, 4) < 0
|| read(xsvf_fd, usecs_buf, 4) < 0 ) || read(xsvf_fd, usecs_buf, 4) < 0)
{ {
do_abort = 1; do_abort = 1;
break; break;
} }
wait_state = xsvf_to_tap(wait ); wait_state = xsvf_to_tap(wait);
end_state = xsvf_to_tap(end ); end_state = xsvf_to_tap(end);
clock_count = be_to_h_u32(clock_buf); clock_count = be_to_h_u32(clock_buf);
usecs = be_to_h_u32(usecs_buf); usecs = be_to_h_u32(usecs_buf);
@ -758,17 +758,17 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
*/ */
if (wait_state != TAP_IRPAUSE && wait_state != TAP_DRPAUSE && wait_state != TAP_RESET && wait_state != TAP_IDLE) if (wait_state != TAP_IRPAUSE && wait_state != TAP_DRPAUSE && wait_state != TAP_RESET && wait_state != TAP_IDLE)
{ {
LOG_ERROR("illegal XWAITSTATE wait_state: \"%s\"", tap_state_name(wait_state )); LOG_ERROR("illegal XWAITSTATE wait_state: \"%s\"", tap_state_name(wait_state));
unsupported = 1; unsupported = 1;
} }
jtag_add_statemove(wait_state ); jtag_add_statemove(wait_state);
jtag_add_clocks(clock_count ); jtag_add_clocks(clock_count);
jtag_add_sleep(usecs ); jtag_add_sleep(usecs);
jtag_add_statemove(end_state ); jtag_add_statemove(end_state);
} }
break; break;
@ -779,7 +779,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
*/ */
uint8_t count_buf[4]; uint8_t count_buf[4];
if (read(xsvf_fd, count_buf, 4) < 0 ) if (read(xsvf_fd, count_buf, 4) < 0)
{ {
do_abort = 1; do_abort = 1;
break; break;
@ -801,7 +801,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (read(xsvf_fd, &state, 1) < 0 if (read(xsvf_fd, &state, 1) < 0
|| read(xsvf_fd, clock_buf, 4) < 0 || read(xsvf_fd, clock_buf, 4) < 0
|| read(xsvf_fd, usecs_buf, 4) < 0 ) || read(xsvf_fd, usecs_buf, 4) < 0)
{ {
do_abort = 1; do_abort = 1;
break; break;
@ -827,7 +827,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_DEBUG("LSDR"); LOG_DEBUG("LSDR");
if (xsvf_read_buffer(xsdrsize, xsvf_fd, dr_out_buf) != ERROR_OK if (xsvf_read_buffer(xsdrsize, xsvf_fd, dr_out_buf) != ERROR_OK
|| xsvf_read_buffer(xsdrsize, xsvf_fd, dr_in_buf) != ERROR_OK ) || xsvf_read_buffer(xsdrsize, xsvf_fd, dr_in_buf) != ERROR_OK)
{ {
do_abort = 1; do_abort = 1;
break; break;
@ -836,11 +836,11 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (limit < 1) if (limit < 1)
limit = 1; limit = 1;
for (attempt = 0; attempt < limit; ++attempt ) for (attempt = 0; attempt < limit; ++attempt)
{ {
scan_field_t field; scan_field_t field;
jtag_add_statemove(loop_state ); jtag_add_statemove(loop_state);
jtag_add_clocks(loop_clocks); jtag_add_clocks(loop_clocks);
jtag_add_sleep(loop_usecs); jtag_add_sleep(loop_usecs);
@ -871,9 +871,9 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
} }
} }
if (!matched ) if (!matched)
{ {
LOG_USER("LSDR mismatch" ); LOG_USER("LSDR mismatch");
tdo_mismatch = 1; tdo_mismatch = 1;
break; break;
} }
@ -890,7 +890,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
break; break;
} }
switch (trst_mode ) switch (trst_mode)
{ {
case XTRST_ON: case XTRST_ON:
jtag_add_reset(1, 0); jtag_add_reset(1, 0);
@ -902,7 +902,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
case XTRST_ABSENT: case XTRST_ABSENT:
break; break;
default: default:
LOG_ERROR("XTRST mode argument (0x%02X) out of range", trst_mode ); LOG_ERROR("XTRST mode argument (0x%02X) out of range", trst_mode);
do_abort = 1; do_abort = 1;
} }
} }
@ -918,7 +918,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
LOG_DEBUG("xsvf failed, setting taps to reasonable state"); LOG_DEBUG("xsvf failed, setting taps to reasonable state");
/* upon error, return the TAPs to a reasonable state */ /* upon error, return the TAPs to a reasonable state */
jtag_add_statemove(TAP_IDLE ); jtag_add_statemove(TAP_IDLE);
jtag_execute_queue(); jtag_execute_queue();
break; break;
} }
@ -927,7 +927,7 @@ static int handle_xsvf_command(struct command_context_s *cmd_ctx, char *cmd, cha
if (tdo_mismatch) if (tdo_mismatch)
{ {
command_print(cmd_ctx, "TDO mismatch, somewhere near offset %lu in xsvf file, aborting", command_print(cmd_ctx, "TDO mismatch, somewhere near offset %lu in xsvf file, aborting",
file_offset ); file_offset);
return ERROR_FAIL; return ERROR_FAIL;