diff options
author | Fredrik Hederstierna <fredrik.hederstierna@securitas-direct.com> | 2012-02-29 10:16:27 +0000 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2012-03-06 13:32:48 +0000 |
commit | 5c5af2467b4c554b5d9c75dfdb2c07d0e066a79b (patch) | |
tree | 8c343ef9ffed9c27fc73d98b08f855cd4db4b760 | |
parent | dfe8f3a4417b03253977ae1be23f3c8196d35b21 (diff) |
flash: Additional check for NULL in str9xpec enable_turbo
Change-Id: Ifde8783b27c64e4a4bbea180cfa2c86f6a9fe49a
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/496
Tested-by: jenkins
Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com>
-rw-r--r-- | src/flash/nor/str9xpec.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/flash/nor/str9xpec.c b/src/flash/nor/str9xpec.c index e89ecf49..08d97a04 100644 --- a/src/flash/nor/str9xpec.c +++ b/src/flash/nor/str9xpec.c @@ -199,7 +199,6 @@ static int str9xpec_read_config(struct flash_bank *bank) field.out_value = NULL; field.in_value = str9xpec_info->options; - jtag_add_dr_scan(tap, 1, &field, TAP_IDLE); jtag_execute_queue(); @@ -1050,20 +1049,24 @@ COMMAND_HANDLER(str9xpec_handle_flash_enable_turbo_command) str9xpec_info = bank->driver_priv; - tap0 = str9xpec_info->tap; - /* remove arm core from chain - enter turbo mode */ + tap0 = str9xpec_info->tap; + if (tap0 == NULL) { + /* things are *WRONG* */ + command_print(CMD_CTX, "**STR9FLASH** (tap0) invalid chain?"); + return ERROR_FAIL; + } tap1 = tap0->next_tap; if (tap1 == NULL) { /* things are *WRONG* */ command_print(CMD_CTX, "**STR9FLASH** (tap1) invalid chain?"); - return ERROR_OK; + return ERROR_FAIL; } tap2 = tap1->next_tap; if (tap2 == NULL) { /* things are *WRONG* */ command_print(CMD_CTX, "**STR9FLASH** (tap2) invalid chain?"); - return ERROR_OK; + return ERROR_FAIL; } /* enable turbo mode - TURBO-PROG-ENABLE */ |