Give a different error when writing to flash or ram
authorUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Sun, 29 Jan 2012 13:21:26 +0000 (14:21 +0100)
committerUwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Thu, 2 Feb 2012 21:51:49 +0000 (22:51 +0100)
flash/main.c

index 249e5fddc016d3b74867cf4d8e941bf7d067ca30..24287456b41e283abc6624711267532b4de83fd9 100644 (file)
@@ -126,17 +126,23 @@ int main(int ac, char** av)
   if (o.cmd == DO_WRITE) /* write */
   {
     if ((o.addr >= sl->flash_base) &&
-       (o.addr < sl->flash_base + sl->flash_size))
+       (o.addr < sl->flash_base + sl->flash_size)) {
        err = stlink_fwrite_flash(sl, o.filename, o.addr);
-    else if ((o.addr >= sl->sram_base) &&
+       if (err == -1)
+       {
+           printf("stlink_fwrite_flash() == -1\n");
+           goto on_error;
+       }
+    }
+   else if ((o.addr >= sl->sram_base) &&
             (o.addr < sl->sram_base + sl->sram_size))
        err = stlink_fwrite_sram(sl, o.filename, o.addr);
-    if (err == -1)
-    {
-      printf("stlink_fwrite_flash() == -1\n");
-      goto on_error;
-    }
-  }
+       if (err == -1)
+       {
+           printf("stlink_sram_flash() == -1\n");
+           goto on_error;
+       }
+   }
   else if (o.cmd == DO_ERASE) 
   {
      err = stlink_erase_flash_mass(sl);