summaryrefslogtreecommitdiff
path: root/src/flash/nor/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/flash/nor/core.c')
-rw-r--r--src/flash/nor/core.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/flash/nor/core.c b/src/flash/nor/core.c
index e6c0eeb2..232d5037 100644
--- a/src/flash/nor/core.c
+++ b/src/flash/nor/core.c
@@ -220,22 +220,25 @@ struct flash_bank *get_flash_bank_by_name(const char *name)
return NULL;
}
-struct flash_bank *get_flash_bank_by_num(int num)
+int get_flash_bank_by_num(int num, struct flash_bank **bank)
{
struct flash_bank *p = get_flash_bank_by_num_noprobe(num);
int retval;
if (p == NULL)
- return NULL;
+ {
+ return ERROR_FAIL;
+ }
retval = p->driver->auto_probe(p);
if (retval != ERROR_OK)
{
LOG_ERROR("auto_probe failed %d\n", retval);
- return NULL;
+ return retval;
}
- return p;
+ *bank = p;
+ return ERROR_OK;
}
/* lookup flash bank by address */