.protect = str9xpec_protect,
.write = str9xpec_write,
.probe = str9xpec_probe,
+ .auto_probe = str9xpec_probe,
.erase_check = str9xpec_erase_check,
.protect_check = str9xpec_protect_check,
.info = str9xpec_info
} while(!(status & ISC_STATUS_BUSY));
if ((status & ISC_STATUS_ERROR) != STR9XPEC_ISC_SUCCESS)
- return ERROR_FLASH_OPERATION_FAILED;
+ return ERROR_FLASH_OPERATION_FAILED;
//if ((status & ISC_STATUS_INT_ERROR) != STR9XPEC_ISC_INTFAIL)
- // return ERROR_FLASH_OPERATION_FAILED;
+ // return ERROR_FLASH_OPERATION_FAILED;
dwords_remaining--;
bytes_written += 8;
return ERROR_FLASH_OPERATION_FAILED;
//if ((status & ISC_STATUS_INT_ERROR) != STR9XPEC_ISC_INTFAIL)
- // return ERROR_FLASH_OPERATION_FAILED;
+ // return ERROR_FLASH_OPERATION_FAILED;
}
free(scanbuf);
if (argc < 1)
{
- command_print(cmd_ctx, "usage: str9xpec part_id <num>");
- return ERROR_OK;
+ return ERROR_COMMAND_SYNTAX_ERROR;
}
bank = get_flash_bank_by_num(strtoul(args[0], NULL, 0));
chain_pos = str9xpec_info->chain_pos;
/* erase config options first */
- str9xpec_erase_area( bank, 0xFE, 0xFE );
+ status = str9xpec_erase_area( bank, 0xFE, 0xFE );
+
+ if ((status & ISC_STATUS_ERROR) != STR9XPEC_ISC_SUCCESS)
+ return status;
if (!str9xpec_info->isc_enable) {
str9xpec_isc_enable( bank );