X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fflash%2Focl.c;h=51ccc9616b610d232f0a63399f80f55991ba6cef;hb=712d3fc0fb3ed69342a649d8bbb0d6d901a64720;hp=17b57a87d094233e61554bf19b30bbaa77789f9e;hpb=84df52f9ea78e2d71bde648a16b69d80404c6421;p=openocd.git diff --git a/src/flash/ocl.c b/src/flash/ocl.c index 17b57a87d0..51ccc9616b 100644 --- a/src/flash/ocl.c +++ b/src/flash/ocl.c @@ -26,32 +26,6 @@ #include "embeddedice.h" -static int ocl_register_commands(struct command_context_s *cmd_ctx); -static int ocl_flash_bank_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct flash_bank_s *bank); -static int ocl_erase(struct flash_bank_s *bank, int first, int last); -static int ocl_protect(struct flash_bank_s *bank, int set, int first, int last); -static int ocl_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint32_t count); -static int ocl_probe(struct flash_bank_s *bank); -static int ocl_erase_check(struct flash_bank_s *bank); -static int ocl_protect_check(struct flash_bank_s *bank); -static int ocl_info(struct flash_bank_s *bank, char *buf, int buf_size); -static int ocl_auto_probe(struct flash_bank_s *bank); - -flash_driver_t ocl_flash = -{ - .name = "ocl", - .register_commands = ocl_register_commands, - .flash_bank_command = ocl_flash_bank_command, - .erase = ocl_erase, - .protect = ocl_protect, - .write = ocl_write, - .probe = ocl_probe, - .erase_check = ocl_erase_check, - .protect_check = ocl_protect_check, - .info = ocl_info, - .auto_probe = ocl_auto_probe -}; - typedef struct ocl_priv_s { arm_jtag_t *jtag_info; @@ -59,11 +33,6 @@ typedef struct ocl_priv_s unsigned int bufalign; } ocl_priv_t; -static int ocl_register_commands(struct command_context_s *cmd_ctx) -{ - return ERROR_OK; -} - static int ocl_erase_check(struct flash_bank_s *bank) { return ERROR_OK; @@ -139,7 +108,7 @@ static int ocl_erase(struct flash_bank_s *bank, int first, int last) } /* receive response */ - if ((retval = embeddedice_receive(ocl->jtag_info, dcc_buffer+1, 1) != ERROR_OK)) + if ((retval = embeddedice_receive(ocl->jtag_info, dcc_buffer + 1, 1) != ERROR_OK)) return retval; if (dcc_buffer[1] != OCL_CMD_DONE) @@ -182,7 +151,7 @@ static int ocl_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset } /* allocate buffer for max. ocl buffer + overhead */ - dcc_buffer = malloc(sizeof(uint32_t)*(ocl->buflen/4+3)); + dcc_buffer = malloc(sizeof(uint32_t)*(ocl->buflen/4 + 3)); while (count) { @@ -200,7 +169,7 @@ static int ocl_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset chksum = OCL_CHKS_INIT; /* copy data to DCC buffer in proper byte order and properly aligned */ - for (i = 0; isize / bank->num_sectors; - for (i = 0; inum_sectors; i++) + for (i = 0; i < bank->num_sectors; i++) { bank->sectors[i].offset = i * sectsize; bank->sectors[i].size = sectsize; @@ -378,3 +347,16 @@ static int ocl_auto_probe(struct flash_bank_s *bank) return ERROR_OK; } + +flash_driver_t ocl_flash = { + .name = "ocl", + .flash_bank_command = &ocl_flash_bank_command, + .erase = &ocl_erase, + .protect = &ocl_protect, + .write = &ocl_write, + .probe = &ocl_probe, + .erase_check = &ocl_erase_check, + .protect_check = &ocl_protect_check, + .info = &ocl_info, + .auto_probe = &ocl_auto_probe, + };