summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/flash/cfi.c41
-rw-r--r--src/flash/ecos.c38
-rw-r--r--src/flash/faux.c38
3 files changed, 42 insertions, 75 deletions
diff --git a/src/flash/cfi.c b/src/flash/cfi.c
index 93e661c2..b448a300 100644
--- a/src/flash/cfi.c
+++ b/src/flash/cfi.c
@@ -29,39 +29,12 @@
#include "binarybuffer.h"
-static int cfi_register_commands(struct command_context_s *cmd_ctx);
-static int cfi_flash_bank_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct flash_bank_s *bank);
-static int cfi_erase(struct flash_bank_s *bank, int first, int last);
-static int cfi_protect(struct flash_bank_s *bank, int set, int first, int last);
-static int cfi_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint32_t count);
-static int cfi_probe(struct flash_bank_s *bank);
-static int cfi_auto_probe(struct flash_bank_s *bank);
-static int cfi_protect_check(struct flash_bank_s *bank);
-static int cfi_info(struct flash_bank_s *bank, char *buf, int buf_size);
-
-//static int cfi_handle_part_id_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-
#define CFI_MAX_BUS_WIDTH 4
#define CFI_MAX_CHIP_WIDTH 4
/* defines internal maximum size for code fragment in cfi_intel_write_block() */
#define CFI_MAX_INTEL_CODESIZE 256
-flash_driver_t cfi_flash =
-{
- .name = "cfi",
- .register_commands = cfi_register_commands,
- .flash_bank_command = cfi_flash_bank_command,
- .erase = cfi_erase,
- .protect = cfi_protect,
- .write = cfi_write,
- .probe = cfi_probe,
- .auto_probe = cfi_auto_probe,
- .erase_check = default_flash_blank_check,
- .protect_check = cfi_protect_check,
- .info = cfi_info
-};
-
static cfi_unlock_addresses_t cfi_unlock_addresses[] =
{
[CFI_UNLOCK_555_2AA] = { .unlock1 = 0x555, .unlock2 = 0x2aa },
@@ -2655,3 +2628,17 @@ static int cfi_info(struct flash_bank_s *bank, char *buf, int buf_size)
return ERROR_OK;
}
+
+flash_driver_t cfi_flash = {
+ .name = "cfi",
+ .register_commands = &cfi_register_commands,
+ .flash_bank_command = &cfi_flash_bank_command,
+ .erase = &cfi_erase,
+ .protect = &cfi_protect,
+ .write = &cfi_write,
+ .probe = &cfi_probe,
+ .auto_probe = &cfi_auto_probe,
+ .erase_check = &default_flash_blank_check,
+ .protect_check = &cfi_protect_check,
+ .info = &cfi_info,
+ };
diff --git a/src/flash/ecos.c b/src/flash/ecos.c
index 8583544e..401fdf2b 100644
--- a/src/flash/ecos.c
+++ b/src/flash/ecos.c
@@ -26,15 +26,6 @@
#include "image.h"
-static int ecosflash_register_commands(struct command_context_s *cmd_ctx);
-static int ecosflash_flash_bank_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct flash_bank_s *bank);
-static int ecosflash_erase(struct flash_bank_s *bank, int first, int last);
-static int ecosflash_protect(struct flash_bank_s *bank, int set, int first, int last);
-static int ecosflash_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint32_t count);
-static int ecosflash_probe(struct flash_bank_s *bank);
-static int ecosflash_protect_check(struct flash_bank_s *bank);
-static int ecosflash_info(struct flash_bank_s *bank, char *buf, int buf_size);
-
#if 0
static uint32_t ecosflash_get_flash_status(flash_bank_t *bank);
static void ecosflash_set_flash_mode(flash_bank_t *bank,int mode);
@@ -42,21 +33,6 @@ static uint32_t ecosflash_wait_status_busy(flash_bank_t *bank, uint32_t waitbits
static int ecosflash_handle_gpnvm_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
#endif
-flash_driver_t ecosflash_flash =
-{
- .name = "ecosflash",
- .register_commands = ecosflash_register_commands,
- .flash_bank_command = ecosflash_flash_bank_command,
- .erase = ecosflash_erase,
- .protect = ecosflash_protect,
- .write = ecosflash_write,
- .probe = ecosflash_probe,
- .auto_probe = ecosflash_probe,
- .erase_check = default_flash_blank_check,
- .protect_check = ecosflash_protect_check,
- .info = ecosflash_info
-};
-
typedef struct ecosflash_flash_bank_s
{
struct target_s *target;
@@ -458,3 +434,17 @@ static int ecosflash_handle_gpnvm_command(struct command_context_s *cmd_ctx, cha
return ERROR_OK;
}
#endif
+
+flash_driver_t ecosflash_flash = {
+ .name = "ecosflash",
+ .register_commands = &ecosflash_register_commands,
+ .flash_bank_command = &ecosflash_flash_bank_command,
+ .erase = &ecosflash_erase,
+ .protect = &ecosflash_protect,
+ .write = &ecosflash_write,
+ .probe = &ecosflash_probe,
+ .auto_probe = &ecosflash_probe,
+ .erase_check = &default_flash_blank_check,
+ .protect_check = &ecosflash_protect_check,
+ .info = &ecosflash_info
+ };
diff --git a/src/flash/faux.c b/src/flash/faux.c
index c5928ad6..474dee5b 100644
--- a/src/flash/faux.c
+++ b/src/flash/faux.c
@@ -25,30 +25,6 @@
#include "image.h"
-static int faux_register_commands(struct command_context_s *cmd_ctx);
-static int faux_flash_bank_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct flash_bank_s *bank);
-static int faux_erase(struct flash_bank_s *bank, int first, int last);
-static int faux_protect(struct flash_bank_s *bank, int set, int first, int last);
-static int faux_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint32_t count);
-static int faux_probe(struct flash_bank_s *bank);
-static int faux_protect_check(struct flash_bank_s *bank);
-static int faux_info(struct flash_bank_s *bank, char *buf, int buf_size);
-
-flash_driver_t faux_flash =
-{
- .name = "faux",
- .register_commands = faux_register_commands,
- .flash_bank_command = faux_flash_bank_command,
- .erase = faux_erase,
- .protect = faux_protect,
- .write = faux_write,
- .probe = faux_probe,
- .auto_probe = faux_probe,
- .erase_check = default_flash_blank_check,
- .protect_check = faux_protect_check,
- .info = faux_info
-};
-
typedef struct faux_flash_bank_s
{
struct target_s *target;
@@ -151,3 +127,17 @@ static int faux_probe(struct flash_bank_s *bank)
{
return ERROR_OK;
}
+
+flash_driver_t faux_flash = {
+ .name = "faux",
+ .register_commands = &faux_register_commands,
+ .flash_bank_command = &faux_flash_bank_command,
+ .erase = &faux_erase,
+ .protect = &faux_protect,
+ .write = &faux_write,
+ .probe = &faux_probe,
+ .auto_probe = &faux_probe,
+ .erase_check = &default_flash_blank_check,
+ .protect_check = &faux_protect_check,
+ .info = &faux_info
+ };