Clang buildfixes
[fw/openocd] / src / flash / nor / str9x.c
index 98f15e75b4bf7d8d8337b27e70dc7b084fd866e5..d0c1278f572f9f35d4d9742ac267e75b8c19bed0 100644 (file)
 #include "config.h"
 #endif
 
+#include "imp.h"
 #include "str9x.h"
-#include "arm966e.h"
-#include "algorithm.h"
+#include <target/arm966e.h>
+#include <target/algorithm.h>
 
 
 static uint32_t bank1start = 0x00080000;
@@ -229,17 +230,9 @@ static int str9x_erase(struct flash_bank *bank, int first, int last)
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       /* Check if we erase whole bank */
-       if ((first == 0) && (last == (bank->num_sectors - 1)))
-       {
-               /* Optimize to run erase bank command instead of sector */
-               erase_cmd = 0x80;
-       }
-       else
-       {
-               /* Erase sector command */
-               erase_cmd = 0x20;
-       }
+       /*A slower but stable way of erasing*/
+       /* Erase sector command */
+       erase_cmd = 0x20;
 
        for (i = first; i <= last; i++)
        {
@@ -295,10 +288,6 @@ static int str9x_erase(struct flash_bank *bank, int first, int last)
                        LOG_ERROR("error erasing flash bank, status: 0x%x", status);
                        return ERROR_FLASH_OPERATION_FAILED;
                }
-
-               /* If we ran erase bank command, we are finished */
-               if (erase_cmd == 0x80)
-                       break;
        }
 
        for (i = first; i <= last; i++)
@@ -355,7 +344,7 @@ static int str9x_write_block(struct flash_bank *bank,
        struct working_area *source;
        uint32_t address = bank->base + offset;
        struct reg_param reg_params[4];
-       struct armv4_5_algorithm armv4_5_info;
+       struct arm_algorithm armv4_5_info;
        int retval = ERROR_OK;
 
        uint32_t str9x_flash_write_code[] = {
@@ -407,9 +396,9 @@ static int str9x_write_block(struct flash_bank *bank,
                }
        }
 
-       armv4_5_info.common_magic = ARMV4_5_COMMON_MAGIC;
-       armv4_5_info.core_mode = ARMV4_5_MODE_SVC;
-       armv4_5_info.core_state = ARMV4_5_STATE_ARM;
+       armv4_5_info.common_magic = ARM_COMMON_MAGIC;
+       armv4_5_info.core_mode = ARM_MODE_SVC;
+       armv4_5_info.core_state = ARM_STATE_ARM;
 
        init_reg_param(&reg_params[0], "r0", 32, PARAM_OUT);
        init_reg_param(&reg_params[1], "r1", 32, PARAM_OUT);
@@ -678,11 +667,12 @@ COMMAND_HANDLER(str9x_handle_flash_config_command)
 
 static const struct command_registration str9x_config_command_handlers[] = {
        {
-               .name = "disable_jtag",
+               .name = "flash_config",
                .handler = &str9x_handle_flash_config_command,
                .mode = COMMAND_EXEC,
-               .help = "configure str9x flash controller",
-               .usage = "<bank_id> <BBSR> <NBBSR> <BBADR> <NBBADR>",
+               .help = "Configure str9x flash controller, prior to "
+                       "programming the flash.",
+               .usage = "bank_id BBSR NBBSR BBADR NBBADR",
        },
        COMMAND_REGISTRATION_DONE
 };