cfi: check supported arch
check that the cfi driver supports the current target arch. Change-Id: I8a95908684de67bf1657d1956f2573662a641cc1 Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk> Reviewed-on: http://openocd.zylin.com/614 Tested-by: jenkins Reviewed-by: Aurelien Jacobs <aurel@gnuage.org>__archive__
parent
d2d4f776d8
commit
ca53849045
|
@ -1219,19 +1219,19 @@ static int cfi_intel_write_block(struct flash_bank *bank, uint8_t *buffer,
|
||||||
uint32_t target_code_size;
|
uint32_t target_code_size;
|
||||||
int retval = ERROR_OK;
|
int retval = ERROR_OK;
|
||||||
|
|
||||||
/* todo: if ( (!is_armv7m(target_to_armv7m(target)) && (!is_arm(target_to_arm(target)) )
|
/* check we have a supported arch */
|
||||||
**/
|
if (is_arm(target_to_arm(target))) {
|
||||||
if (strncmp(target_type_name(target), "mips_m4k", 8) == 0) {
|
/* All other ARM CPUs have 32 bit instructions */
|
||||||
LOG_ERROR("Your target has no flash block write support yet.");
|
arm_algo.common_magic = ARM_COMMON_MAGIC;
|
||||||
return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
|
arm_algo.core_mode = ARM_MODE_SVC;
|
||||||
|
arm_algo.core_state = ARM_STATE_ARM;
|
||||||
|
} else {
|
||||||
|
LOG_ERROR("Unknown architecture");
|
||||||
|
return ERROR_FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
cfi_intel_clear_status_register(bank);
|
cfi_intel_clear_status_register(bank);
|
||||||
|
|
||||||
arm_algo.common_magic = ARM_COMMON_MAGIC;
|
|
||||||
arm_algo.core_mode = ARM_MODE_SVC;
|
|
||||||
arm_algo.core_state = ARM_STATE_ARM;
|
|
||||||
|
|
||||||
/* If we are setting up the write_algorith, we need target_code_src
|
/* If we are setting up the write_algorith, we need target_code_src
|
||||||
* if not we only need target_code_size. */
|
* if not we only need target_code_size. */
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue