server: use register_commands
[fw/openocd] / src / flash / str9xpec.c
index eabe21f6f644cd6f60c26295764a3fd1c15846e3..7519413c73d416e22ceb61a8f7fabac54be84b03 100644 (file)
@@ -28,9 +28,9 @@
 #include "arm7_9_common.h"
 
 
-static int str9xpec_erase_area(struct flash_bank_s *bank, int first, int last);
-static int str9xpec_set_address(struct flash_bank_s *bank, uint8_t sector);
-static int str9xpec_write_options(struct flash_bank_s *bank);
+static int str9xpec_erase_area(struct flash_bank *bank, int first, int last);
+static int str9xpec_set_address(struct flash_bank *bank, uint8_t sector);
+static int str9xpec_write_options(struct flash_bank *bank);
 
 int str9xpec_set_instr(struct jtag_tap *tap, uint32_t new_instr, tap_state_t end_state)
 {
@@ -40,11 +40,11 @@ int str9xpec_set_instr(struct jtag_tap *tap, uint32_t new_instr, tap_state_t end
 
        if (buf_get_u32(tap->cur_instr, 0, tap->ir_length) != new_instr)
        {
-               scan_field_t field;
+               struct scan_field field;
 
                field.tap = tap;
                field.num_bits = tap->ir_length;
-               field.out_value = calloc(CEIL(field.num_bits, 8), 1);
+               field.out_value = calloc(DIV_ROUND_UP(field.num_bits, 8), 1);
                buf_set_u32(field.out_value, 0, field.num_bits, new_instr);
                field.in_value = NULL;
 
@@ -58,7 +58,7 @@ int str9xpec_set_instr(struct jtag_tap *tap, uint32_t new_instr, tap_state_t end
 
 static uint8_t str9xpec_isc_status(struct jtag_tap *tap)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
 
        if (str9xpec_set_instr(tap, ISC_NOOP, TAP_IRPAUSE) != ERROR_OK)
@@ -81,11 +81,11 @@ static uint8_t str9xpec_isc_status(struct jtag_tap *tap)
        return status;
 }
 
-static int str9xpec_isc_enable(struct flash_bank_s *bank)
+static int str9xpec_isc_enable(struct flash_bank *bank)
 {
        uint8_t status;
        struct jtag_tap *tap;
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -108,11 +108,11 @@ static int str9xpec_isc_enable(struct flash_bank_s *bank)
        return ERROR_OK;
 }
 
-static int str9xpec_isc_disable(struct flash_bank_s *bank)
+static int str9xpec_isc_disable(struct flash_bank *bank)
 {
        uint8_t status;
        struct jtag_tap *tap;
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -137,13 +137,13 @@ static int str9xpec_isc_disable(struct flash_bank_s *bank)
        return ERROR_OK;
 }
 
-static int str9xpec_read_config(struct flash_bank_s *bank)
+static int str9xpec_read_config(struct flash_bank *bank)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
        struct jtag_tap *tap;
 
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -166,9 +166,9 @@ static int str9xpec_read_config(struct flash_bank_s *bank)
        return status;
 }
 
-static int str9xpec_build_block_list(struct flash_bank_s *bank)
+static int str9xpec_build_block_list(struct flash_bank *bank)
 {
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        int i;
        int num_sectors;
@@ -205,7 +205,7 @@ static int str9xpec_build_block_list(struct flash_bank_s *bank)
        num_sectors = b0_sectors + b1_sectors;
 
        bank->num_sectors = num_sectors;
-       bank->sectors = malloc(sizeof(flash_sector_t) * num_sectors);
+       bank->sectors = malloc(sizeof(struct flash_sector) * num_sectors);
        str9xpec_info->sector_bits = malloc(sizeof(uint32_t) * num_sectors);
 
        num_sectors = 0;
@@ -237,18 +237,18 @@ static int str9xpec_build_block_list(struct flash_bank_s *bank)
  */
 FLASH_BANK_COMMAND_HANDLER(str9xpec_flash_bank_command)
 {
-       str9xpec_flash_controller_t *str9xpec_info;
-       armv4_5_common_t *armv4_5 = NULL;
-       arm7_9_common_t *arm7_9 = NULL;
-       arm_jtag_t *jtag_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info;
+       struct arm *armv4_5 = NULL;
+       struct arm7_9_common *arm7_9 = NULL;
+       struct arm_jtag *jtag_info = NULL;
 
-       if (argc < 6)
+       if (CMD_ARGC < 6)
        {
                LOG_WARNING("incomplete flash_bank str9x configuration");
                return ERROR_FLASH_BANK_INVALID;
        }
 
-       str9xpec_info = malloc(sizeof(str9xpec_flash_controller_t));
+       str9xpec_info = malloc(sizeof(struct str9xpec_flash_controller));
        bank->driver_priv = str9xpec_info;
 
        /* REVISIT verify that the jtag position of flash controller is
@@ -269,15 +269,15 @@ FLASH_BANK_COMMAND_HANDLER(str9xpec_flash_bank_command)
        return ERROR_OK;
 }
 
-static int str9xpec_blank_check(struct flash_bank_s *bank, int first, int last)
+static int str9xpec_blank_check(struct flash_bank *bank, int first, int last)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
        struct jtag_tap *tap;
        int i;
        uint8_t *buffer = NULL;
 
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -289,7 +289,7 @@ static int str9xpec_blank_check(struct flash_bank_s *bank, int first, int last)
                return ERROR_FLASH_OPERATION_FAILED;
        }
 
-       buffer = calloc(CEIL(64, 8), 1);
+       buffer = calloc(DIV_ROUND_UP(64, 8), 1);
 
        LOG_DEBUG("blank check: first_bank: %i, last_bank: %i", first, last);
 
@@ -336,12 +336,12 @@ static int str9xpec_blank_check(struct flash_bank_s *bank, int first, int last)
        return ERROR_OK;
 }
 
-static int str9xpec_protect_check(struct flash_bank_s *bank)
+static int str9xpec_protect_check(struct flash_bank *bank)
 {
        uint8_t status;
        int i;
 
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        status = str9xpec_read_config(bank);
 
@@ -358,15 +358,15 @@ static int str9xpec_protect_check(struct flash_bank_s *bank)
        return ERROR_OK;
 }
 
-static int str9xpec_erase_area(struct flash_bank_s *bank, int first, int last)
+static int str9xpec_erase_area(struct flash_bank *bank, int first, int last)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
        struct jtag_tap *tap;
        int i;
        uint8_t *buffer = NULL;
 
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -378,7 +378,7 @@ static int str9xpec_erase_area(struct flash_bank_s *bank, int first, int last)
                return ISC_STATUS_ERROR;
        }
 
-       buffer = calloc(CEIL(64, 8), 1);
+       buffer = calloc(DIV_ROUND_UP(64, 8), 1);
 
        LOG_DEBUG("erase: first_bank: %i, last_bank: %i", first, last);
 
@@ -428,7 +428,7 @@ static int str9xpec_erase_area(struct flash_bank_s *bank, int first, int last)
        return status;
 }
 
-static int str9xpec_erase(struct flash_bank_s *bank, int first, int last)
+static int str9xpec_erase(struct flash_bank *bank, int first, int last)
 {
        int status;
 
@@ -440,12 +440,12 @@ static int str9xpec_erase(struct flash_bank_s *bank, int first, int last)
        return ERROR_OK;
 }
 
-static int str9xpec_lock_device(struct flash_bank_s *bank)
+static int str9xpec_lock_device(struct flash_bank *bank)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
        struct jtag_tap *tap;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
        str9xpec_info = bank->driver_priv;
        tap = str9xpec_info->tap;
@@ -482,7 +482,7 @@ static int str9xpec_lock_device(struct flash_bank_s *bank)
        return status;
 }
 
-static int str9xpec_unlock_device(struct flash_bank_s *bank)
+static int str9xpec_unlock_device(struct flash_bank *bank)
 {
        uint8_t status;
 
@@ -491,12 +491,12 @@ static int str9xpec_unlock_device(struct flash_bank_s *bank)
        return status;
 }
 
-static int str9xpec_protect(struct flash_bank_s *bank, int set, int first, int last)
+static int str9xpec_protect(struct flash_bank *bank, int set, int first, int last)
 {
        uint8_t status;
        int i;
 
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        status = str9xpec_read_config(bank);
 
@@ -537,11 +537,11 @@ static int str9xpec_protect(struct flash_bank_s *bank, int set, int first, int l
        return ERROR_OK;
 }
 
-static int str9xpec_set_address(struct flash_bank_s *bank, uint8_t sector)
+static int str9xpec_set_address(struct flash_bank *bank, uint8_t sector)
 {
        struct jtag_tap *tap;
-       scan_field_t field;
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct scan_field field;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
 
        tap = str9xpec_info->tap;
 
@@ -558,16 +558,16 @@ static int str9xpec_set_address(struct flash_bank_s *bank, uint8_t sector)
        return ERROR_OK;
 }
 
-static int str9xpec_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t offset, uint32_t count)
+static int str9xpec_write(struct flash_bank *bank, uint8_t *buffer, uint32_t offset, uint32_t count)
 {
-       str9xpec_flash_controller_t *str9xpec_info = bank->driver_priv;
+       struct str9xpec_flash_controller *str9xpec_info = bank->driver_priv;
        uint32_t dwords_remaining = (count / 8);
        uint32_t bytes_remaining = (count & 0x00000007);
        uint32_t bytes_written = 0;
        uint8_t status;
        uint32_t check_address = offset;
        struct jtag_tap *tap;
-       scan_field_t field;
+       struct scan_field field;
        uint8_t *scanbuf;
        int i;
        int first_sector = 0;
@@ -618,7 +618,7 @@ static int str9xpec_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t o
 
        LOG_DEBUG("first_sector: %i, last_sector: %i", first_sector, last_sector);
 
-       scanbuf = calloc(CEIL(64, 8), 1);
+       scanbuf = calloc(DIV_ROUND_UP(64, 8), 1);
 
        LOG_DEBUG("ISC_PROGRAM");
 
@@ -721,31 +721,31 @@ static int str9xpec_write(struct flash_bank_s *bank, uint8_t *buffer, uint32_t o
        return ERROR_OK;
 }
 
-static int str9xpec_probe(struct flash_bank_s *bank)
+static int str9xpec_probe(struct flash_bank *bank)
 {
        return ERROR_OK;
 }
 
 COMMAND_HANDLER(str9xpec_handle_part_id_command)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t *buffer = NULL;
        struct jtag_tap *tap;
        uint32_t idcode;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
                return ERROR_COMMAND_SYNTAX_ERROR;
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
        str9xpec_info = bank->driver_priv;
        tap = str9xpec_info->tap;
 
-       buffer = calloc(CEIL(32, 8), 1);
+       buffer = calloc(DIV_ROUND_UP(32, 8), 1);
 
        str9xpec_set_instr(tap, ISC_IDCODE, TAP_IRPAUSE);
 
@@ -759,19 +759,19 @@ COMMAND_HANDLER(str9xpec_handle_part_id_command)
 
        idcode = buf_get_u32(buffer, 0, 32);
 
-       command_print(cmd_ctx, "str9xpec part id: 0x%8.8" PRIx32 "", idcode);
+       command_print(CMD_CTX, "str9xpec part id: 0x%8.8" PRIx32 "", idcode);
 
        free(buffer);
 
        return ERROR_OK;
 }
 
-static int str9xpec_erase_check(struct flash_bank_s *bank)
+static int str9xpec_erase_check(struct flash_bank *bank)
 {
        return str9xpec_blank_check(bank, 0, bank->num_sectors - 1);
 }
 
-static int str9xpec_info(struct flash_bank_s *bank, char *buf, int buf_size)
+static int str9xpec_info(struct flash_bank *bank, char *buf, int buf_size)
 {
        snprintf(buf, buf_size, "str9xpec flash driver info");
        return ERROR_OK;
@@ -780,16 +780,16 @@ static int str9xpec_info(struct flash_bank_s *bank, char *buf, int buf_size)
 COMMAND_HANDLER(str9xpec_handle_flash_options_read_command)
 {
        uint8_t status;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec options_read <bank>");
+               command_print(CMD_CTX, "str9xpec options_read <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -802,43 +802,43 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_read_command)
 
        /* boot bank */
        if (buf_get_u32(str9xpec_info->options, STR9XPEC_OPT_CSMAPBIT, 1))
-               command_print(cmd_ctx, "CS Map: bank1");
+               command_print(CMD_CTX, "CS Map: bank1");
        else
-               command_print(cmd_ctx, "CS Map: bank0");
+               command_print(CMD_CTX, "CS Map: bank0");
 
        /* OTP lock */
        if (buf_get_u32(str9xpec_info->options, STR9XPEC_OPT_OTPBIT, 1))
-               command_print(cmd_ctx, "OTP Lock: OTP Locked");
+               command_print(CMD_CTX, "OTP Lock: OTP Locked");
        else
-               command_print(cmd_ctx, "OTP Lock: OTP Unlocked");
+               command_print(CMD_CTX, "OTP Lock: OTP Unlocked");
 
        /* LVD Threshold */
        if (buf_get_u32(str9xpec_info->options, STR9XPEC_OPT_LVDTHRESBIT, 1))
-               command_print(cmd_ctx, "LVD Threshold: 2.7v");
+               command_print(CMD_CTX, "LVD Threshold: 2.7v");
        else
-               command_print(cmd_ctx, "LVD Threshold: 2.4v");
+               command_print(CMD_CTX, "LVD Threshold: 2.4v");
 
        /* LVD reset warning */
        if (buf_get_u32(str9xpec_info->options, STR9XPEC_OPT_LVDWARNBIT, 1))
-               command_print(cmd_ctx, "LVD Reset Warning: VDD or VDDQ Inputs");
+               command_print(CMD_CTX, "LVD Reset Warning: VDD or VDDQ Inputs");
        else
-               command_print(cmd_ctx, "LVD Reset Warning: VDD Input Only");
+               command_print(CMD_CTX, "LVD Reset Warning: VDD Input Only");
 
        /* LVD reset select */
        if (buf_get_u32(str9xpec_info->options, STR9XPEC_OPT_LVDSELBIT, 1))
-               command_print(cmd_ctx, "LVD Reset Selection: VDD or VDDQ Inputs");
+               command_print(CMD_CTX, "LVD Reset Selection: VDD or VDDQ Inputs");
        else
-               command_print(cmd_ctx, "LVD Reset Selection: VDD Input Only");
+               command_print(CMD_CTX, "LVD Reset Selection: VDD Input Only");
 
        return ERROR_OK;
 }
 
-static int str9xpec_write_options(struct flash_bank_s *bank)
+static int str9xpec_write_options(struct flash_bank *bank)
 {
-       scan_field_t field;
+       struct scan_field field;
        uint8_t status;
        struct jtag_tap *tap;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
        str9xpec_info = bank->driver_priv;
        tap = str9xpec_info->tap;
@@ -898,14 +898,14 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_write_command)
 {
        uint8_t status;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec options_write <bank>");
+               command_print(CMD_CTX, "str9xpec options_write <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -919,22 +919,22 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_write_command)
 
 COMMAND_HANDLER(str9xpec_handle_flash_options_cmap_command)
 {
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 2)
+       if (CMD_ARGC < 2)
        {
-               command_print(cmd_ctx, "str9xpec options_cmap <bank> <bank0 | bank1>");
+               command_print(CMD_CTX, "str9xpec options_cmap <bank> <bank0 | bank1>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
        str9xpec_info = bank->driver_priv;
 
-       if (strcmp(args[1], "bank1") == 0)
+       if (strcmp(CMD_ARGV[1], "bank1") == 0)
        {
                buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_CSMAPBIT, 1, 1);
        }
@@ -948,22 +948,22 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_cmap_command)
 
 COMMAND_HANDLER(str9xpec_handle_flash_options_lvdthd_command)
 {
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 2)
+       if (CMD_ARGC < 2)
        {
-               command_print(cmd_ctx, "str9xpec options_lvdthd <bank> <2.4v | 2.7v>");
+               command_print(CMD_CTX, "str9xpec options_lvdthd <bank> <2.4v | 2.7v>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
        str9xpec_info = bank->driver_priv;
 
-       if (strcmp(args[1], "2.7v") == 0)
+       if (strcmp(CMD_ARGV[1], "2.7v") == 0)
        {
                buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDTHRESBIT, 1, 1);
        }
@@ -977,22 +977,22 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_lvdthd_command)
 
 COMMAND_HANDLER(str9xpec_handle_flash_options_lvdsel_command)
 {
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 2)
+       if (CMD_ARGC < 2)
        {
-               command_print(cmd_ctx, "str9xpec options_lvdsel <bank> <vdd | vdd_vddq>");
+               command_print(CMD_CTX, "str9xpec options_lvdsel <bank> <vdd | vdd_vddq>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
        str9xpec_info = bank->driver_priv;
 
-       if (strcmp(args[1], "vdd_vddq") == 0)
+       if (strcmp(CMD_ARGV[1], "vdd_vddq") == 0)
        {
                buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDSELBIT, 1, 1);
        }
@@ -1006,22 +1006,22 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_lvdsel_command)
 
 COMMAND_HANDLER(str9xpec_handle_flash_options_lvdwarn_command)
 {
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 2)
+       if (CMD_ARGC < 2)
        {
-               command_print(cmd_ctx, "str9xpec options_lvdwarn <bank> <vdd | vdd_vddq>");
+               command_print(CMD_CTX, "str9xpec options_lvdwarn <bank> <vdd | vdd_vddq>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
        str9xpec_info = bank->driver_priv;
 
-       if (strcmp(args[1], "vdd_vddq") == 0)
+       if (strcmp(CMD_ARGV[1], "vdd_vddq") == 0)
        {
                buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDWARNBIT, 1, 1);
        }
@@ -1037,14 +1037,14 @@ COMMAND_HANDLER(str9xpec_handle_flash_lock_command)
 {
        uint8_t status;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec lock <bank>");
+               command_print(CMD_CTX, "str9xpec lock <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -1060,14 +1060,14 @@ COMMAND_HANDLER(str9xpec_handle_flash_unlock_command)
 {
        uint8_t status;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec unlock <bank>");
+               command_print(CMD_CTX, "str9xpec unlock <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -1084,16 +1084,16 @@ COMMAND_HANDLER(str9xpec_handle_flash_enable_turbo_command)
        struct jtag_tap *tap0;
        struct jtag_tap *tap1;
        struct jtag_tap *tap2;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec enable_turbo <bank>");
+               command_print(CMD_CTX, "str9xpec enable_turbo <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -1106,14 +1106,14 @@ COMMAND_HANDLER(str9xpec_handle_flash_enable_turbo_command)
        if (tap1 == NULL)
        {
                /* things are *WRONG* */
-               command_print(cmd_ctx,"**STR9FLASH** (tap1) invalid chain?");
+               command_print(CMD_CTX,"**STR9FLASH** (tap1) invalid chain?");
                return ERROR_OK;
        }
        tap2 = tap1->next_tap;
        if (tap2 == NULL)
        {
                /* things are *WRONG* */
-               command_print(cmd_ctx,"**STR9FLASH** (tap2) invalid chain?");
+               command_print(CMD_CTX,"**STR9FLASH** (tap2) invalid chain?");
                return ERROR_OK;
        }
 
@@ -1131,16 +1131,16 @@ COMMAND_HANDLER(str9xpec_handle_flash_enable_turbo_command)
 COMMAND_HANDLER(str9xpec_handle_flash_disable_turbo_command)
 {
        struct jtag_tap *tap;
-       str9xpec_flash_controller_t *str9xpec_info = NULL;
+       struct str9xpec_flash_controller *str9xpec_info = NULL;
 
-       if (argc < 1)
+       if (CMD_ARGC < 1)
        {
-               command_print(cmd_ctx, "str9xpec disable_turbo <bank>");
+               command_print(CMD_CTX, "str9xpec disable_turbo <bank>");
                return ERROR_OK;
        }
 
-       flash_bank_t *bank;
-       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       struct flash_bank *bank;
+       int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
        if (ERROR_OK != retval)
                return retval;
 
@@ -1163,49 +1163,49 @@ COMMAND_HANDLER(str9xpec_handle_flash_disable_turbo_command)
        return ERROR_OK;
 }
 
-static int str9xpec_register_commands(struct command_context_s *cmd_ctx)
+static int str9xpec_register_commands(struct command_context *cmd_ctx)
 {
-       command_t *str9xpec_cmd = register_command(cmd_ctx, NULL, "str9xpec",
+       struct command *str9xpec_cmd = COMMAND_REGISTER(cmd_ctx, NULL, "str9xpec",
                        NULL, COMMAND_ANY, "str9xpec flash specific commands");
 
-       register_command(cmd_ctx, str9xpec_cmd, "enable_turbo",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "enable_turbo",
                        str9xpec_handle_flash_enable_turbo_command,
                        COMMAND_EXEC, "enable str9xpec turbo mode");
-       register_command(cmd_ctx, str9xpec_cmd, "disable_turbo",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "disable_turbo",
                        str9xpec_handle_flash_disable_turbo_command,
                        COMMAND_EXEC, "disable str9xpec turbo mode");
-       register_command(cmd_ctx, str9xpec_cmd, "options_cmap",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_cmap",
                        str9xpec_handle_flash_options_cmap_command,
                        COMMAND_EXEC, "configure str9xpec boot sector");
-       register_command(cmd_ctx, str9xpec_cmd, "options_lvdthd",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_lvdthd",
                        str9xpec_handle_flash_options_lvdthd_command,
                        COMMAND_EXEC, "configure str9xpec lvd threshold");
-       register_command(cmd_ctx, str9xpec_cmd, "options_lvdsel",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_lvdsel",
                        str9xpec_handle_flash_options_lvdsel_command,
                        COMMAND_EXEC, "configure str9xpec lvd selection");
-       register_command(cmd_ctx, str9xpec_cmd, "options_lvdwarn",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_lvdwarn",
                        str9xpec_handle_flash_options_lvdwarn_command,
                        COMMAND_EXEC, "configure str9xpec lvd warning");
-       register_command(cmd_ctx, str9xpec_cmd, "options_read",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_read",
                        str9xpec_handle_flash_options_read_command,
                        COMMAND_EXEC, "read str9xpec options");
-       register_command(cmd_ctx, str9xpec_cmd, "options_write",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "options_write",
                        str9xpec_handle_flash_options_write_command,
                        COMMAND_EXEC, "write str9xpec options");
-       register_command(cmd_ctx, str9xpec_cmd, "lock",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "lock",
                        str9xpec_handle_flash_lock_command,
                        COMMAND_EXEC, "lock str9xpec device");
-       register_command(cmd_ctx, str9xpec_cmd, "unlock",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "unlock",
                        str9xpec_handle_flash_unlock_command,
                        COMMAND_EXEC, "unlock str9xpec device");
-       register_command(cmd_ctx, str9xpec_cmd, "part_id",
+       COMMAND_REGISTER(cmd_ctx, str9xpec_cmd, "part_id",
                        str9xpec_handle_part_id_command,
                        COMMAND_EXEC, "print part id of str9xpec flash bank <num>");
 
        return ERROR_OK;
 }
 
-flash_driver_t str9xpec_flash = {
+struct flash_driver str9xpec_flash = {
                .name = "str9xpec",
                .register_commands = &str9xpec_register_commands,
                .flash_bank_command = &str9xpec_flash_bank_command,