FLASH/NOR: Remove useless file tms470.h
[openocd.git] / src / flash / nor / tms470.c
index 7efcbd4b918620217fb9341f30715064aba052d4..4ca6cd8d8f62139013939c2aee50f8e0cae94c54 100644 (file)
@@ -21,7 +21,6 @@
 #include "config.h"
 #endif
 
-#include "tms470.h"
 #include "imp.h"
 
 
                       Internal Support, Helpers
    ---------------------------------------------------------------------- */
 
-const struct flash_sector TMS470R1A256_SECTORS[] = {
+struct tms470_flash_bank
+{
+       unsigned ordinal;
+
+       /* device identification register */
+       uint32_t device_ident_reg;
+       uint32_t silicon_version;
+       uint32_t technology_family;
+       uint32_t rom_flash;
+       uint32_t part_number;
+       char * part_name;
+
+};
+
+static const struct flash_sector TMS470R1A256_SECTORS[] = {
        {0x00000000, 0x00002000, -1, -1},
        {0x00002000, 0x00002000, -1, -1},
        {0x00004000, 0x00002000, -1, -1},
@@ -49,7 +62,7 @@ const struct flash_sector TMS470R1A256_SECTORS[] = {
 #define TMS470R1A256_NUM_SECTORS \
        ARRAY_SIZE(TMS470R1A256_SECTORS)
 
-const struct flash_sector TMS470R1A288_BANK0_SECTORS[] = {
+static const struct flash_sector TMS470R1A288_BANK0_SECTORS[] = {
        {0x00000000, 0x00002000, -1, -1},
        {0x00002000, 0x00002000, -1, -1},
        {0x00004000, 0x00002000, -1, -1},
@@ -59,7 +72,7 @@ const struct flash_sector TMS470R1A288_BANK0_SECTORS[] = {
 #define TMS470R1A288_BANK0_NUM_SECTORS \
        ARRAY_SIZE(TMS470R1A288_BANK0_SECTORS)
 
-const struct flash_sector TMS470R1A288_BANK1_SECTORS[] = {
+static const struct flash_sector TMS470R1A288_BANK1_SECTORS[] = {
        {0x00040000, 0x00010000, -1, -1},
        {0x00050000, 0x00010000, -1, -1},
        {0x00060000, 0x00010000, -1, -1},
@@ -69,7 +82,7 @@ const struct flash_sector TMS470R1A288_BANK1_SECTORS[] = {
 #define TMS470R1A288_BANK1_NUM_SECTORS \
        ARRAY_SIZE(TMS470R1A288_BANK1_SECTORS)
 
-const struct flash_sector TMS470R1A384_BANK0_SECTORS[] = {
+static const struct flash_sector TMS470R1A384_BANK0_SECTORS[] = {
        {0x00000000, 0x00002000, -1, -1},
        {0x00002000, 0x00002000, -1, -1},
        {0x00004000, 0x00004000, -1, -1},
@@ -85,7 +98,7 @@ const struct flash_sector TMS470R1A384_BANK0_SECTORS[] = {
 #define TMS470R1A384_BANK0_NUM_SECTORS \
        ARRAY_SIZE(TMS470R1A384_BANK0_SECTORS)
 
-const struct flash_sector TMS470R1A384_BANK1_SECTORS[] = {
+static const struct flash_sector TMS470R1A384_BANK1_SECTORS[] = {
        {0x00020000, 0x00008000, -1, -1},
        {0x00028000, 0x00008000, -1, -1},
        {0x00030000, 0x00008000, -1, -1},
@@ -95,7 +108,7 @@ const struct flash_sector TMS470R1A384_BANK1_SECTORS[] = {
 #define TMS470R1A384_BANK1_NUM_SECTORS \
        ARRAY_SIZE(TMS470R1A384_BANK1_SECTORS)
 
-const struct flash_sector TMS470R1A384_BANK2_SECTORS[] = {
+static const struct flash_sector TMS470R1A384_BANK2_SECTORS[] = {
        {0x00040000, 0x00008000, -1, -1},
        {0x00048000, 0x00008000, -1, -1},
        {0x00050000, 0x00008000, -1, -1},
@@ -139,6 +152,12 @@ static int tms470_read_part_info(struct flash_bank *bank)
        rom_flash = (device_ident_reg >> 10) & 1;
        part_number = (device_ident_reg >> 3) & 0x7f;
 
+       if (bank->sectors)
+       {
+               free(bank->sectors);
+               bank->sectors = NULL;
+       }
+
        /*
         * If the part number is known, determine if the flash bank is valid
         * based on the base address being within the known flash bank
@@ -667,7 +686,7 @@ static int tms470_flash_initialize_internal_state_machine(struct flash_bank *ban
 
 /* ---------------------------------------------------------------------- */
 
-int tms470_flash_status(struct flash_bank *bank)
+static int tms470_flash_status(struct flash_bank *bank)
 {
        struct target *target = bank->target;
        int result = ERROR_OK;
@@ -821,19 +840,19 @@ static int tms470_erase_sector(struct flash_bank *bank, int sector)
 static const struct command_registration tms470_any_command_handlers[] = {
        {
                .name = "flash_keyset",
-               .handler = &tms470_handle_flash_keyset_command,
+               .handler = tms470_handle_flash_keyset_command,
                .mode = COMMAND_ANY,
                .help = "tms470 flash_keyset <key0> <key1> <key2> <key3>",
        },
        {
                .name = "osc_megahertz",
-               .handler = &tms470_handle_osc_megahertz_command,
+               .handler = tms470_handle_osc_megahertz_command,
                .mode = COMMAND_ANY,
                .help = "tms470 osc_megahertz <MHz>",
        },
        {
                .name = "plldis",
-               .handler = &tms470_handle_plldis_command,
+               .handler = tms470_handle_plldis_command,
                .mode = COMMAND_ANY,
                .help = "tms470 plldis <0/1>",
        },
@@ -1209,7 +1228,7 @@ static int tms470_protect_check(struct flash_bank *bank)
 
 /* ---------------------------------------------------------------------- */
 
-static int tms470_info(struct flash_bank *bank, char *buf, int buf_size)
+static int get_tms470_info(struct flash_bank *bank, char *buf, int buf_size)
 {
        int used = 0;
        struct tms470_flash_bank *tms470_info = bank->driver_priv;
@@ -1258,15 +1277,16 @@ FLASH_BANK_COMMAND_HANDLER(tms470_flash_bank_command)
 }
 
 struct flash_driver tms470_flash = {
-               .name = "tms470",
-               .commands = tms470_command_handlers,
-               .flash_bank_command = &tms470_flash_bank_command,
-               .erase = &tms470_erase,
-               .protect = &tms470_protect,
-               .write = &tms470_write,
-               .probe = &tms470_probe,
-               .auto_probe = &tms470_auto_probe,
-               .erase_check = &tms470_erase_check,
-               .protect_check = &tms470_protect_check,
-               .info = &tms470_info,
-       };
+       .name = "tms470",
+       .commands = tms470_command_handlers,
+       .flash_bank_command = tms470_flash_bank_command,
+       .erase = tms470_erase,
+       .protect = tms470_protect,
+       .write = tms470_write,
+       .read = default_flash_read,
+       .probe = tms470_probe,
+       .auto_probe = tms470_auto_probe,
+       .erase_check = tms470_erase_check,
+       .protect_check = tms470_protect_check,
+       .info = get_tms470_info,
+};

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)