flash: handle zero when reading stm32 flash size reg
[fw/openocd] / src / flash / nor / drivers.c
index 669b0b9f07d5463d623f1a45b75d11b72dc91693..69c3387e7f0c0921b489a6617b3036177a6ecc9d 100644 (file)
@@ -16,6 +16,7 @@
  *   Free Software Foundation, Inc.,                                       *
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
+
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
@@ -26,6 +27,7 @@ extern struct flash_driver lpc288x_flash;
 extern struct flash_driver lpc2900_flash;
 extern struct flash_driver cfi_flash;
 extern struct flash_driver at91sam3_flash;
+extern struct flash_driver at91sam4_flash;
 extern struct flash_driver at91sam7_flash;
 extern struct flash_driver str7x_flash;
 extern struct flash_driver str9x_flash;
@@ -34,8 +36,8 @@ extern struct flash_driver stellaris_flash;
 extern struct flash_driver str9xpec_flash;
 extern struct flash_driver stm32f1x_flash;
 extern struct flash_driver stm32f2x_flash;
+extern struct flash_driver stm32lx_flash;
 extern struct flash_driver tms470_flash;
-extern struct flash_driver ecosflash_flash;
 extern struct flash_driver ocl_flash;
 extern struct flash_driver pic32mx_flash;
 extern struct flash_driver avr_flash;
@@ -43,8 +45,9 @@ extern struct flash_driver faux_flash;
 extern struct flash_driver virtual_flash;
 extern struct flash_driver stmsmi_flash;
 extern struct flash_driver em357_flash;
-//extern struct flash_driver dsp5680xx_flash;
+extern struct flash_driver dsp5680xx_flash;
 extern struct flash_driver fm3_flash;
+extern struct flash_driver kinetis_flash;
 
 /**
  * The list of built-in flash drivers.
@@ -57,6 +60,7 @@ static struct flash_driver *flash_drivers[] = {
        &cfi_flash,
        &at91sam7_flash,
        &at91sam3_flash,
+       &at91sam4_flash,
        &str7x_flash,
        &str9x_flash,
        &aduc702x_flash,
@@ -64,8 +68,8 @@ static struct flash_driver *flash_drivers[] = {
        &str9xpec_flash,
        &stm32f1x_flash,
        &stm32f2x_flash,
+       &stm32lx_flash,
        &tms470_flash,
-       &ecosflash_flash,
        &ocl_flash,
        &pic32mx_flash,
        &avr_flash,
@@ -73,16 +77,15 @@ static struct flash_driver *flash_drivers[] = {
        &virtual_flash,
        &stmsmi_flash,
        &em357_flash,
-       // Disabled for now, it generates warnings
-       //&dsp5680xx_flash,
        &fm3_flash,
+       &dsp5680xx_flash,
+       &kinetis_flash,
        NULL,
 };
 
 struct flash_driver *flash_driver_find_by_name(const char *name)
 {
-       for (unsigned i = 0; flash_drivers[i]; i++)
-       {
+       for (unsigned i = 0; flash_drivers[i]; i++) {
                if (strcmp(name, flash_drivers[i]->name) == 0)
                        return flash_drivers[i];
        }