X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fflash%2Ftms470.c;h=f6f3900fc4cc1089bcf26d7c9ae08ee5398b9470;hb=d6c8945662e6027f6ba12d73bac2473088672db5;hp=53043cd5bb834043f0f616e00348d492771cc0a1;hpb=cfc4d5c6b7b6f8f82dc5bbf3ee661c179814666e;p=openocd.git diff --git a/src/flash/tms470.c b/src/flash/tms470.c index 53043cd5bb..f6f3900fc4 100644 --- a/src/flash/tms470.c +++ b/src/flash/tms470.c @@ -28,7 +28,7 @@ Internal Support, Helpers ---------------------------------------------------------------------- */ -const flash_sector_t TMS470R1A256_SECTORS[] = { +const struct flash_sector TMS470R1A256_SECTORS[] = { {0x00000000, 0x00002000, -1, -1}, {0x00002000, 0x00002000, -1, -1}, {0x00004000, 0x00002000, -1, -1}, @@ -48,7 +48,7 @@ const flash_sector_t TMS470R1A256_SECTORS[] = { #define TMS470R1A256_NUM_SECTORS \ (sizeof(TMS470R1A256_SECTORS)/sizeof(TMS470R1A256_SECTORS[0])) -const flash_sector_t TMS470R1A288_BANK0_SECTORS[] = { +const struct flash_sector TMS470R1A288_BANK0_SECTORS[] = { {0x00000000, 0x00002000, -1, -1}, {0x00002000, 0x00002000, -1, -1}, {0x00004000, 0x00002000, -1, -1}, @@ -58,7 +58,7 @@ const flash_sector_t TMS470R1A288_BANK0_SECTORS[] = { #define TMS470R1A288_BANK0_NUM_SECTORS \ (sizeof(TMS470R1A288_BANK0_SECTORS)/sizeof(TMS470R1A288_BANK0_SECTORS[0])) -const flash_sector_t TMS470R1A288_BANK1_SECTORS[] = { +const struct flash_sector TMS470R1A288_BANK1_SECTORS[] = { {0x00040000, 0x00010000, -1, -1}, {0x00050000, 0x00010000, -1, -1}, {0x00060000, 0x00010000, -1, -1}, @@ -68,7 +68,7 @@ const flash_sector_t TMS470R1A288_BANK1_SECTORS[] = { #define TMS470R1A288_BANK1_NUM_SECTORS \ (sizeof(TMS470R1A288_BANK1_SECTORS)/sizeof(TMS470R1A288_BANK1_SECTORS[0])) -const flash_sector_t TMS470R1A384_BANK0_SECTORS[] = { +const struct flash_sector TMS470R1A384_BANK0_SECTORS[] = { {0x00000000, 0x00002000, -1, -1}, {0x00002000, 0x00002000, -1, -1}, {0x00004000, 0x00004000, -1, -1}, @@ -84,7 +84,7 @@ const flash_sector_t TMS470R1A384_BANK0_SECTORS[] = { #define TMS470R1A384_BANK0_NUM_SECTORS \ (sizeof(TMS470R1A384_BANK0_SECTORS)/sizeof(TMS470R1A384_BANK0_SECTORS[0])) -const flash_sector_t TMS470R1A384_BANK1_SECTORS[] = { +const struct flash_sector TMS470R1A384_BANK1_SECTORS[] = { {0x00020000, 0x00008000, -1, -1}, {0x00028000, 0x00008000, -1, -1}, {0x00030000, 0x00008000, -1, -1}, @@ -94,7 +94,7 @@ const flash_sector_t TMS470R1A384_BANK1_SECTORS[] = { #define TMS470R1A384_BANK1_NUM_SECTORS \ (sizeof(TMS470R1A384_BANK1_SECTORS)/sizeof(TMS470R1A384_BANK1_SECTORS[0])) -const flash_sector_t TMS470R1A384_BANK2_SECTORS[] = { +const struct flash_sector TMS470R1A384_BANK2_SECTORS[] = { {0x00040000, 0x00008000, -1, -1}, {0x00048000, 0x00008000, -1, -1}, {0x00050000, 0x00008000, -1, -1}, @@ -106,10 +106,10 @@ const flash_sector_t TMS470R1A384_BANK2_SECTORS[] = { /* ---------------------------------------------------------------------- */ -static int tms470_read_part_info(struct flash_bank_s *bank) +static int tms470_read_part_info(struct flash_bank *bank) { - tms470_flash_bank_t *tms470_info = bank->driver_priv; - target_t *target = bank->target; + struct tms470_flash_bank *tms470_info = bank->driver_priv; + struct target *target = bank->target; uint32_t device_ident_reg; uint32_t silicon_version; uint32_t technology_family; @@ -291,43 +291,43 @@ static uint32_t flashKeys[4]; COMMAND_HANDLER(tms470_handle_flash_keyset_command) { - if (argc > 4) + if (CMD_ARGC > 4) { - command_print(cmd_ctx, "tms470 flash_keyset "); + command_print(CMD_CTX, "tms470 flash_keyset "); return ERROR_INVALID_ARGUMENTS; } - else if (argc == 4) + else if (CMD_ARGC == 4) { int i; for (i = 0; i < 4; i++) { - int start = (0 == strncmp(args[i], "0x", 2)) ? 2 : 0; + int start = (0 == strncmp(CMD_ARGV[i], "0x", 2)) ? 2 : 0; - if (1 != sscanf(&args[i][start], "%" SCNx32 "", &flashKeys[i])) + if (1 != sscanf(&CMD_ARGV[i][start], "%" SCNx32 "", &flashKeys[i])) { - command_print(cmd_ctx, "could not process flash key %s", args[i]); - LOG_ERROR("could not process flash key %s", args[i]); + command_print(CMD_CTX, "could not process flash key %s", CMD_ARGV[i]); + LOG_ERROR("could not process flash key %s", CMD_ARGV[i]); return ERROR_INVALID_ARGUMENTS; } } keysSet = 1; } - else if (argc != 0) + else if (CMD_ARGC != 0) { - command_print(cmd_ctx, "tms470 flash_keyset "); + command_print(CMD_CTX, "tms470 flash_keyset "); return ERROR_INVALID_ARGUMENTS; } if (keysSet) { - command_print(cmd_ctx, "using flash keys 0x%08" PRIx32 ", 0x%08" PRIx32 ", 0x%08" PRIx32 ", 0x%08" PRIx32 "", + command_print(CMD_CTX, "using flash keys 0x%08" PRIx32 ", 0x%08" PRIx32 ", 0x%08" PRIx32 ", 0x%08" PRIx32 "", flashKeys[0], flashKeys[1], flashKeys[2], flashKeys[3]); } else { - command_print(cmd_ctx, "flash keys not set"); + command_print(CMD_CTX, "flash keys not set"); } return ERROR_OK; @@ -355,25 +355,25 @@ static int oscMHz = 12; COMMAND_HANDLER(tms470_handle_osc_megahertz_command) { - if (argc > 1) + if (CMD_ARGC > 1) { - command_print(cmd_ctx, "tms470 osc_megahertz "); + command_print(CMD_CTX, "tms470 osc_megahertz "); return ERROR_INVALID_ARGUMENTS; } - else if (argc == 1) + else if (CMD_ARGC == 1) { - sscanf(args[0], "%d", &oscMHz); + sscanf(CMD_ARGV[0], "%d", &oscMHz); } if (oscMHz <= 0) { LOG_ERROR("osc_megahertz must be positive and non-zero!"); - command_print(cmd_ctx, "osc_megahertz must be positive and non-zero!"); + command_print(CMD_CTX, "osc_megahertz must be positive and non-zero!"); oscMHz = 12; return ERROR_INVALID_ARGUMENTS; } - command_print(cmd_ctx, "osc_megahertz=%d", oscMHz); + command_print(CMD_CTX, "osc_megahertz=%d", oscMHz); return ERROR_OK; } @@ -384,25 +384,25 @@ static int plldis = 0; COMMAND_HANDLER(tms470_handle_plldis_command) { - if (argc > 1) + if (CMD_ARGC > 1) { - command_print(cmd_ctx, "tms470 plldis <0 | 1>"); + command_print(CMD_CTX, "tms470 plldis <0 | 1>"); return ERROR_INVALID_ARGUMENTS; } - else if (argc == 1) + else if (CMD_ARGC == 1) { - sscanf(args[0], "%d", &plldis); + sscanf(CMD_ARGV[0], "%d", &plldis); plldis = plldis ? 1 : 0; } - command_print(cmd_ctx, "plldis=%d", plldis); + command_print(CMD_CTX, "plldis=%d", plldis); return ERROR_OK; } /* ---------------------------------------------------------------------- */ -static int tms470_check_flash_unlocked(target_t * target) +static int tms470_check_flash_unlocked(struct target * target) { uint32_t fmbbusy; @@ -413,7 +413,7 @@ static int tms470_check_flash_unlocked(target_t * target) /* ---------------------------------------------------------------------- */ -static int tms470_try_flash_keys(target_t * target, const uint32_t * key_set) +static int tms470_try_flash_keys(struct target * target, const uint32_t * key_set) { uint32_t glbctrl, fmmstat; int retval = ERROR_FLASH_OPERATION_FAILED; @@ -491,9 +491,9 @@ static int tms470_try_flash_keys(target_t * target, const uint32_t * key_set) /* ---------------------------------------------------------------------- */ -static int tms470_unlock_flash(struct flash_bank_s *bank) +static int tms470_unlock_flash(struct flash_bank *bank) { - target_t *target = bank->target; + struct target *target = bank->target; const uint32_t *p_key_sets[5]; unsigned i, key_set_count; @@ -530,11 +530,11 @@ static int tms470_unlock_flash(struct flash_bank_s *bank) /* ---------------------------------------------------------------------- */ -static int tms470_flash_initialize_internal_state_machine(struct flash_bank_s *bank) +static int tms470_flash_initialize_internal_state_machine(struct flash_bank *bank) { uint32_t fmmac2, fmmac1, fmmaxep, k, delay, glbctrl, sysclk; - target_t *target = bank->target; - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct target *target = bank->target; + struct tms470_flash_bank *tms470_info = bank->driver_priv; int result = ERROR_OK; /* @@ -666,9 +666,9 @@ static int tms470_flash_initialize_internal_state_machine(struct flash_bank_s *b /* ---------------------------------------------------------------------- */ -int tms470_flash_status(struct flash_bank_s *bank) +int tms470_flash_status(struct flash_bank *bank) { - target_t *target = bank->target; + struct target *target = bank->target; int result = ERROR_OK; uint32_t fmmstat; @@ -722,10 +722,10 @@ int tms470_flash_status(struct flash_bank_s *bank) /* ---------------------------------------------------------------------- */ -static int tms470_erase_sector(struct flash_bank_s *bank, int sector) +static int tms470_erase_sector(struct flash_bank *bank, int sector) { uint32_t glbctrl, orig_fmregopt, fmbsea, fmbseb, fmmstat; - target_t *target = bank->target; + struct target *target = bank->target; uint32_t flashAddr = bank->base + bank->sectors[sector].offset; int result = ERROR_OK; @@ -817,9 +817,9 @@ static int tms470_erase_sector(struct flash_bank_s *bank, int sector) Implementation of Flash Driver Interfaces ---------------------------------------------------------------------- */ -static int tms470_register_commands(struct command_context_s *cmd_ctx) +static int tms470_register_commands(struct command_context *cmd_ctx) { - command_t *tms470_cmd = register_command(cmd_ctx, NULL, "tms470", NULL, COMMAND_ANY, "applies to TI tms470 family"); + struct command *tms470_cmd = register_command(cmd_ctx, NULL, "tms470", NULL, COMMAND_ANY, "applies to TI tms470 family"); register_command(cmd_ctx, tms470_cmd, "flash_keyset", tms470_handle_flash_keyset_command, COMMAND_ANY, "tms470 flash_keyset "); register_command(cmd_ctx, tms470_cmd, "osc_megahertz", tms470_handle_osc_megahertz_command, COMMAND_ANY, "tms470 osc_megahertz "); @@ -830,9 +830,9 @@ static int tms470_register_commands(struct command_context_s *cmd_ctx) /* ---------------------------------------------------------------------- */ -static int tms470_erase(struct flash_bank_s *bank, int first, int last) +static int tms470_erase(struct flash_bank *bank, int first, int last) { - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct tms470_flash_bank *tms470_info = bank->driver_priv; int sector, result = ERROR_OK; if (bank->target->state != TARGET_HALTED) @@ -877,10 +877,10 @@ static int tms470_erase(struct flash_bank_s *bank, int first, int last) /* ---------------------------------------------------------------------- */ -static int tms470_protect(struct flash_bank_s *bank, int set, int first, int last) +static int tms470_protect(struct flash_bank *bank, int set, int first, int last) { - tms470_flash_bank_t *tms470_info = bank->driver_priv; - target_t *target = bank->target; + struct tms470_flash_bank *tms470_info = bank->driver_priv; + struct target *target = bank->target; uint32_t fmmac2, fmbsea, fmbseb; int sector; @@ -929,9 +929,9 @@ static int tms470_protect(struct flash_bank_s *bank, int set, int first, int las /* ---------------------------------------------------------------------- */ -static int tms470_write(struct flash_bank_s *bank, uint8_t * buffer, uint32_t offset, uint32_t count) +static int tms470_write(struct flash_bank *bank, uint8_t * buffer, uint32_t offset, uint32_t count) { - target_t *target = bank->target; + struct target *target = bank->target; uint32_t glbctrl, fmbac2, orig_fmregopt, fmbsea, fmbseb, fmmaxpp, fmmstat; int result = ERROR_OK; uint32_t i; @@ -1027,7 +1027,7 @@ static int tms470_write(struct flash_bank_s *bank, uint8_t * buffer, uint32_t of /* ---------------------------------------------------------------------- */ -static int tms470_probe(struct flash_bank_s *bank) +static int tms470_probe(struct flash_bank *bank) { if (bank->target->state != TARGET_HALTED) { @@ -1038,9 +1038,9 @@ static int tms470_probe(struct flash_bank_s *bank) return tms470_read_part_info(bank); } -static int tms470_auto_probe(struct flash_bank_s *bank) +static int tms470_auto_probe(struct flash_bank *bank) { - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct tms470_flash_bank *tms470_info = bank->driver_priv; if (tms470_info->device_ident_reg) return ERROR_OK; @@ -1049,10 +1049,10 @@ static int tms470_auto_probe(struct flash_bank_s *bank) /* ---------------------------------------------------------------------- */ -static int tms470_erase_check(struct flash_bank_s *bank) +static int tms470_erase_check(struct flash_bank *bank) { - target_t *target = bank->target; - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct target *target = bank->target; + struct tms470_flash_bank *tms470_info = bank->driver_priv; int sector, result = ERROR_OK; uint32_t fmmac2, fmbac2, glbctrl, orig_fmregopt; static uint8_t buffer[64 * 1024]; @@ -1140,10 +1140,10 @@ static int tms470_erase_check(struct flash_bank_s *bank) /* ---------------------------------------------------------------------- */ -static int tms470_protect_check(struct flash_bank_s *bank) +static int tms470_protect_check(struct flash_bank *bank) { - target_t *target = bank->target; - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct target *target = bank->target; + struct tms470_flash_bank *tms470_info = bank->driver_priv; int sector, result = ERROR_OK; uint32_t fmmac2, fmbsea, fmbseb; @@ -1188,10 +1188,10 @@ static int tms470_protect_check(struct flash_bank_s *bank) /* ---------------------------------------------------------------------- */ -static int tms470_info(struct flash_bank_s *bank, char *buf, int buf_size) +static int tms470_info(struct flash_bank *bank, char *buf, int buf_size) { int used = 0; - tms470_flash_bank_t *tms470_info = bank->driver_priv; + struct tms470_flash_bank *tms470_info = bank->driver_priv; if (!tms470_info->device_ident_reg) { @@ -1222,21 +1222,21 @@ static int tms470_info(struct flash_bank_s *bank, char *buf, int buf_size) * [options...] */ -static int tms470_flash_bank_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct flash_bank_s *bank) +FLASH_BANK_COMMAND_HANDLER(tms470_flash_bank_command) { - bank->driver_priv = malloc(sizeof(tms470_flash_bank_t)); + bank->driver_priv = malloc(sizeof(struct tms470_flash_bank)); if (!bank->driver_priv) { return ERROR_FLASH_OPERATION_FAILED; } - (void)memset(bank->driver_priv, 0, sizeof(tms470_flash_bank_t)); + (void)memset(bank->driver_priv, 0, sizeof(struct tms470_flash_bank)); return ERROR_OK; } -flash_driver_t tms470_flash = { +struct flash_driver tms470_flash = { .name = "tms470", .register_commands = &tms470_register_commands, .flash_bank_command = &tms470_flash_bank_command,