diff options
author | ntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2007-11-21 16:37:17 +0000 |
---|---|---|
committer | ntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2007-11-21 16:37:17 +0000 |
commit | 8c634335b41a805998e5bae05328bb47057cce0b (patch) | |
tree | a94daded00dbe298d61fde9bca57b3a3de033daf /src/flash/str9xpec.c | |
parent | 89d0e422c9698dd9a1fcbd7d4b6c8490633b0029 (diff) |
- reset_run now works as expected on cortex-m3
- str9xpec erase status checked on option byte programming
- stm32x flash driver now supports sector protection
- surplus exit removed from flash.c
- openocd.texi documentation added
git-svn-id: svn://svn.berlios.de/openocd/trunk@212 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/flash/str9xpec.c')
-rw-r--r-- | src/flash/str9xpec.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/flash/str9xpec.c b/src/flash/str9xpec.c index a89a5a5a..eb08eb24 100644 --- a/src/flash/str9xpec.c +++ b/src/flash/str9xpec.c @@ -791,10 +791,10 @@ int str9xpec_write(struct flash_bank_s *bank, u8 *buffer, u32 offset, u32 count) } 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; @@ -854,7 +854,7 @@ int str9xpec_write(struct flash_bank_s *bank, u8 *buffer, u32 offset, u32 count) 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); @@ -1001,7 +1001,10 @@ int str9xpec_write_options(struct flash_bank_s *bank) 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 ); |