exit(-1);
}
- num_sectors = b0_sectors + 2;
+ num_sectors = b0_sectors + 4;
bank->num_sectors = num_sectors;
bank->sectors = malloc(sizeof(flash_sector_t) * num_sectors);
while (words_remaining > 0)
{
- bank_adr = address & 0x03;
+ bank_adr = address & ~0x03;
/* write data command */
target_write_u16(target, bank_adr, 0x40);
bytes_written++;
}
- bank_adr = address & 0x03;
+ bank_adr = address & ~0x03;
/* write data comamnd */
target_write_u16(target, bank_adr, 0x40);
{"jtagkey", jtagkey_init, jtagkey_reset, NULL},
{"jtagkey_prototype_v1", jtagkey_init, jtagkey_reset, NULL},
{"signalyzer", usbjtag_init, usbjtag_reset, NULL},
+ {"evb_lm3s811", usbjtag_init, usbjtag_reset, NULL},
{"olimex-jtag", olimex_jtag_init, olimex_jtag_reset, olimex_jtag_blink},
{"m5960", m5960_init, m5960_reset, NULL},
{NULL, NULL, NULL},
nSRST = 0x20;
nSRSTnOE = 0x20;
}
+ else if (strcmp(ft2232_layout, "evb_lm3s811") == 0)
+ {
+ nTRST = 0x0;
+ nTRSTnOE = 0x00;
+ nSRST = 0x20;
+ nSRSTnOE = 0x20;
+ low_output = 0x88;
+ low_direction = 0x8b;
+ }
else
{
ERROR("BUG: usbjtag_init called for unknown layout '%s'", ft2232_layout);
if (cmd->fields[i].in_check_value)
{
- u8 *captured = buf_set_buf(buffer, bit_count, malloc(CEIL(num_bits, 8)), 0, num_bits);
if ((cmd->fields[i].in_check_mask && buf_cmp_mask(captured, cmd->fields[i].in_check_value, cmd->fields[i].in_check_mask, num_bits))
|| (!cmd->fields[i].in_check_mask && buf_cmp(captured, cmd->fields[i].in_check_mask, num_bits)))
{
return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
}
- if (type == BKPT_HARD)
- arm7_9->wp_available--;
-
if ((length != 2) && (length != 4))
{
INFO("only breakpoints of two (Thumb) or four (ARM) bytes length supported");
return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
}
+ if (type == BKPT_HARD)
+ arm7_9->wp_available--;
+
return ERROR_OK;
}
{
armv4_5_common_t *armv4_5 = target->arch_info;
arm7_9_common_t *arm7_9 = armv4_5->arch_info;
- breakpoint_t *breakpoint = target->breakpoints;
+ breakpoint_t *breakpoint = NULL;
if (target->state != TARGET_HALTED)
{
exit(-1);
}
- chain_pos = strtoul(args[2], NULL, 0);
+ chain_pos = strtoul(args[3], NULL, 0);
if (argc >= 5)
variant = args[4];