gpio_con = S3C2440_GPJCON;
        } else {
                LOG_ERROR("mflash: invalid port %d%s", gpio.num, gpio.port);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        ret = target_read_u32(target, gpio_con, &data);
                gpio_dat = S3C2440_GPJDAT;
        } else {
                LOG_ERROR("mflash: invalid port %d%s", gpio.num, gpio.port);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        ret = target_read_u32(target, gpio_dat, &data);
 
        *nand = get_nand_device_by_num(num);
        if (!*nand) {
                command_print(CMD_CTX, "NAND flash device '%s' not found", str);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        return ERROR_OK;
 }
                return ERROR_NAND_DEVICE_NOT_PROBED;
 
        if ((first_block < 0) || (last_block >= nand->num_blocks))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        /* make sure we know if a block is bad before erasing it */
        for (i = first_block; i <= last_block; i++)
 
 
                COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[1], offset);
                if ((offset % p->erase_size) != 0 || offset >= size)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
 
                COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], length);
                if ((length == 0) || (length % p->erase_size) != 0
                                || (length + offset) > size)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
 
                offset /= p->erase_size;
                length /= p->erase_size;
 
                COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[1], offset);
                if (offset % p->erase_size)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                offset /= p->erase_size;
 
                COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], length);
                if (length % p->erase_size)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
 
                length -= 1;
                length /= p->erase_size;
 
        {
                LOG_ERROR("Hardware doesn't support page-level unprotect. "
                        "Try the 'recover' command.");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (stellaris_info->did1 == 0)
 
 COMMAND_HANDLER(handle_flash_banks_command)
 {
        if (CMD_ARGC != 0)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        unsigned n = 0;
        for (struct flash_bank *p = flash_bank_list(); p; p = p->next, n++)
 
        if (CMD_ARGC > 4)
        {
                command_print(CMD_CTX, "tms470 flash_keyset <key0> <key1> <key2> <key3>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        else if (CMD_ARGC == 4)
        {
                        {
                                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;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
                }
 
        else if (CMD_ARGC != 0)
        {
                command_print(CMD_CTX, "tms470 flash_keyset <key0> <key1> <key2> <key3>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (keysSet)
        if (CMD_ARGC > 1)
        {
                command_print(CMD_CTX, "tms470 osc_megahertz <MHz>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        else if (CMD_ARGC == 1)
        {
                LOG_ERROR("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;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        command_print(CMD_CTX, "osc_megahertz=%d", oscMHz);
        if (CMD_ARGC > 1)
        {
                command_print(CMD_CTX, "tms470 plldis <0 | 1>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        else if (CMD_ARGC == 1)
        {
 
                struct command *parent, const char *name)
 {
        if ((!context) || (!name))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        struct command *p = NULL;
        struct command **head = command_list_for_parent(context, parent);
                struct command **out)
 {
        if (0 == CMD_ARGC)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        *out = command_find(head, CMD_ARGV[0]);
        if (NULL == *out && strncmp(CMD_ARGV[0], "ocd_", 4) == 0)
                *out = command_find(head, CMD_ARGV[0] + 4);
        if (NULL == *out)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        if (--CMD_ARGC == 0)
                return ERROR_OK;
        CMD_ARGV++;
        if (CMD_ARGC < 2)
        {
                LOG_ERROR("%s: insufficient arguments", CMD_NAME);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        // save help text and remove it from argument list
        if (!help && !usage)
        {
                LOG_ERROR("command name '%s' is unknown", CMD_NAME);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        // likewise for the leaf command name
        const char *cmd_name = CMD_ARGV[--CMD_ARGC];
 int command_context_mode(struct command_context *cmd_ctx, enum command_mode mode)
 {
        if (!cmd_ctx)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        cmd_ctx->mode = mode;
        return ERROR_OK;
                return ERROR_OK;
        if (command_parse_bool(in, out, "1", "0") == ERROR_OK)
                return ERROR_OK;
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 COMMAND_HELPER(handle_command_parse_bool, bool *out, const char *label)
                if (command_parse_bool_arg(in, out) != ERROR_OK)
                {
                        LOG_ERROR("%s: argument '%s' is not valid", CMD_NAME, in);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                // fall through
        }
                LOG_INFO("%s is %s", label, *out ? "enabled" : "disabled");
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        return ERROR_OK;
 }
 
                        break;
                default:
                        LOG_ERROR("BUG: access neither read, write nor readwrite");
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* win32 always opens in binary mode */
 
        if (CMD_ARGC != 1)
        {
                command_print(CMD_CTX, "cat <filename>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        // NOTE!!! we only have line printing capability so we print the entire file as a single line.
        if (CMD_ARGC != 1)
        {
                command_print(CMD_CTX, "trunc <filename>");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        FILE *config_file = NULL;
        if (CMD_ARGC != 0)
        {
                command_print(CMD_CTX, "meminfo");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        info = mallinfo();
        {
                command_print(CMD_CTX,
                                "append <filename> [<string1>, [<string2>, ...]]");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        int retval = ERROR_FAIL;
 {
        if (CMD_ARGC != 2)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        // NOTE!!! we only have line printing capability so we print the entire file as a single line.
 
        FILE *f = fopen(CMD_ARGV[1], "wb");
        if (f == NULL)
-               retval = ERROR_INVALID_ARGUMENTS;
+               retval = ERROR_COMMAND_SYNTAX_ERROR;
 
        size_t pos = 0;
        for (;;)
                }
 
                if ((retval == ERROR_OK) && (fwrite(((char *)data) + pos, 1, chunk, f) != chunk))
-                       retval = ERROR_INVALID_ARGUMENTS;
+                       retval = ERROR_COMMAND_SYNTAX_ERROR;
 
                if (retval != ERROR_OK)
                {
 COMMAND_HANDLER(handle_rm_command)
 {
        if (CMD_ARGC != 1)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        bool del = false;
        if (rmdir(CMD_ARGV[0]) == 0)
 
        for (cb = log_callbacks; cb; cb = cb->next)
        {
                if (cb->fn == fn && cb->priv == priv)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* alloc memory, it is safe just to return in case of an error, no need for the caller to check this */
        }
 
        /* no such item */
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 /* return allocated string w/printf() result */
 
  * error codes < 100
  */
 #define ERROR_OK                                       (0)
-#define ERROR_INVALID_ARGUMENTS                ERROR_COMMAND_SYNTAX_ERROR
 #define ERROR_NO_CONFIG_FILE           (-2)
 #define ERROR_BUF_TOO_SMALL                    (-3)
 /* see "Error:" log entry for meaningful message to the user. The caller should
 
                if (mask & m) {
                        LOG_ERROR("extra reset_config %s spec (%s)",
                                        "gating", *CMD_ARGV);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                if (m)
                        goto next;
                if (mask & m) {
                        LOG_ERROR("extra reset_config %s spec (%s)",
                                        "signal", *CMD_ARGV);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                if (m)
                        goto next;
                if (mask & m) {
                        LOG_ERROR("extra reset_config %s spec (%s)",
                                        "combination", *CMD_ARGV);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                if (m)
                        goto next;
                if (mask & m) {
                        LOG_ERROR("extra reset_config %s spec (%s)",
                                        "trst_type", *CMD_ARGV);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                if (m)
                        goto next;
                if (mask & m) {
                        LOG_ERROR("extra reset_config %s spec (%s)",
                                        "srst_type", *CMD_ARGV);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                if (m)
                        goto next;
 
                /* caller provided nonsense; fail */
                LOG_ERROR("unknown reset_config flag (%s)", *CMD_ARGV);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
 next:
                /* Remember the bits which were specified (mask)
 
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (*callbacks_p)
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        while (*p)
 
        if (khz < 0)
        {
                *jtag_speed = 0;
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (khz >= 3000) *jtag_speed = 0;
        if ((speed < 0) || (speed > 1000))
        {
                *khz = 0;
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (speed == 0) *khz = 3000;
 
        if (presto_jtag_speed_div(speed, &khz))
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        presto->jtag_speed = speed;
 
                {
                        LOG_USER("valid ZY1000 jtag_speed=[8190,2]. With divisor is %dkHz / even values between 8190-2, i.e. min %dHz, max %dMHz",
                                        ZYLIN_KHZ, (ZYLIN_KHZ * 1000) / 8190, ZYLIN_KHZ / (2 * 1000));
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                int khz;
                LOG_INFO("Target power %s", savePower ? "on" : "off");
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        return ERROR_OK;
 
        int read_count;
 
        if (!filename || !bit_file)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (stat(filename, &input_stat) == -1)
        {
 
                break;
        }
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        return ERROR_OK;
 }
                break;
        }
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        return ERROR_OK;
 }
 
        if (!is_arm_mode(armv4_5->core_mode))
                return ERROR_FAIL;
        if ((num < 0) || (num > 16))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if ((mode != ARM_MODE_ANY)
                        && (mode != armv4_5->core_mode)
        if (!is_arm_mode(armv4_5->core_mode))
                return ERROR_FAIL;
        if ((num < 0) || (num > 16))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if ((mode != ARM_MODE_ANY)
                        && (mode != armv4_5->core_mode)
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
 
        /* AP address is in bits 31:24 of DP_SELECT */
        if (ap >= 256)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        ap_old = dap->ap_current;
        dap_ap_select(dap, ap);
        int retval = ERROR_FAIL;
 
        if (ap >= 256)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        ap_old = dap->ap_current;
        dap_ap_select(dap, ap);
                COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], apsel);
                /* AP address is in bits 31:24 of DP_SELECT */
                if (apsel >= 256)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                break;
        default:
                return ERROR_COMMAND_SYNTAX_ERROR;
                COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], apsel);
                /* AP address is in bits 31:24 of DP_SELECT */
                if (apsel >= 256)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                break;
        default:
                return ERROR_COMMAND_SYNTAX_ERROR;
                COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], apsel);
                /* AP address is in bits 31:24 of DP_SELECT */
                if (apsel >= 256)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                break;
        default:
                return ERROR_COMMAND_SYNTAX_ERROR;
 
                mnemonic = "ISB";
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        strcpy(cp, mnemonic);
        return ERROR_OK;
        }
 
 undef:
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 static int t2ev_data_mod_immed(uint32_t opcode, uint32_t address,
                suffix2 = ".W";
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (one)
                                        (int) (opcode & 0x1f) + 1 - immed);
                return ERROR_OK;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        sprintf(cp, "%s\tr%d, r%d, #%d\t; %#3.3x", mnemonic,
        unsigned rt = (opcode >> 12) & 0x0f;
 
        if (rn == 0xf)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (opcode & 0x0800)
                op |= 1;
                break;
        /* error */
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        sprintf(cp, "STR%s.W\tr%d, [r%d, r%d, LSL #%d]",
                break;
        case 0x000:
        case 0x200:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* two indexed modes will write back rn */
                        (int) (opcode >> 0) & 0xf, ra);
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
        return ERROR_OK;
 }
                                (int) (opcode >> 0) & 0xf);
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        return ERROR_OK;
                sprintf(cp, "LDMDB.W\tr%d%s, ", rn, t ? "!" : "");
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        cp = strchr(cp, 0);
                        mnemonic = "STREXH";
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                rd = opcode & 0xf;
                imm = 0;
                        mnemonic = "LDREXH";
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                imm = 0;
                goto ldrex;
        }
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 
 strex:
        imm <<= 2;
        case 0:
                if (rd == 0xf) {
                        if (!(opcode & (1 << 20)))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        instruction->type = ARM_TST;
                        mnemonic = "TST";
                        suffix = "";
        case 4:
                if (rd == 0xf) {
                        if (!(opcode & (1 << 20)))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        instruction->type = ARM_TEQ;
                        mnemonic = "TEQ";
                        suffix = "";
        case 8:
                if (rd == 0xf) {
                        if (!(opcode & (1 << 20)))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        instruction->type = ARM_CMN;
                        mnemonic = "CMN";
                        suffix = "";
        case 0xd:
                if (rd == 0xf) {
                        if (!(opcode & (1 << 21)))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        instruction->type = ARM_CMP;
                        mnemonic = "CMP";
                        suffix = "";
                mnemonic = "RSB";
                break;
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        sprintf(cp, "%s%s.W\tr%d, r%d, r%d",
                        mnemonic = "ROR";
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                instruction->type = ARM_MOV;
                case 0xa:
                case 0xb:
                        if (opcode & (1 << 6))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        if (((opcode >> 12) & 0xf) != 0xf)
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        if (!(opcode & (1 << 20)))
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
 
                        switch (((opcode >> 19) & 0x04)
                                | ((opcode >> 4) & 0x3)) {
                                mnemonic = "CLZ";
                                break;
                        default:
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
                        sprintf(cp, "%s\tr%d, r%d",
                                        mnemonic,
                                        (int) (opcode >> 0) & 0xf);
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
        }
 
                char *p1 = "]", *p2 = "";
 
                if (!(opcode & 0x0500))
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
 
                immed = opcode & 0x00ff;
 
                return ERROR_OK;
        }
 
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 static int t2ev_load_byte_hints(uint32_t opcode, uint32_t address,
                goto ldrxb_immediate_t2;
        }
 
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 static int t2ev_load_halfword(uint32_t opcode, uint32_t address,
                return ERROR_OK;
        }
 
-       return ERROR_INVALID_ARGUMENTS;
+       return ERROR_COMMAND_SYNTAX_ERROR;
 }
 
 /*
         * instructions; not yet handled here.
         */
 
-       if (retval == ERROR_INVALID_ARGUMENTS) {
+       if (retval == ERROR_COMMAND_SYNTAX_ERROR) {
                instruction->type = ARM_UNDEFINED_INSTRUCTION;
                strcpy(cp, "UNDEFINED OPCODE");
                return ERROR_OK;
 
        int retval;
 
        if (regnum < 0 || regnum > 16)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (regnum == 16) {
                if (mode != ARM_MODE_ANY)
 
 
        if (regnum < 0 || regnum > 16)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (regnum == 16) {
                if (mode != ARM_MODE_ANY)
                /* FALL THROUGH */
        default:
                LOG_ERROR("unsupported {break,watch}point length/alignment");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* other shared control bits:
        int retval = ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
 
        if (bp->length < 2)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        if (!dpm->bpwp_enable)
                return retval;
 
 {
        struct arm *arm = target_to_arm(target);
        struct arm_dpm *dpm = arm->dpm;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
 
        for (unsigned i = 0; i < dpm->nbp; i++) {
                if (dpm->dbp[i].bp == bp) {
 {
        struct arm *arm = target_to_arm(target);
        struct arm_dpm *dpm = arm->dpm;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
 
        for (unsigned i = 0; i < dpm->nwp; i++) {
                if (dpm->dwp[i].wp == wp) {
 
                if (!reg)
                {
                        LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                if (reg->size != reg_params[i].size)
                {
                        LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size", reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                if ((retval = armv4_5_set_core_reg(reg, reg_params[i].value)) != ERROR_OK)
        else
        {
                LOG_ERROR("BUG: can't execute algorithms when not in ARM or Thumb state");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (arm_algorithm_info->core_mode != ARM_MODE_ANY)
                        if (!reg)
                        {
                                LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                               retval = ERROR_INVALID_ARGUMENTS;
+                               retval = ERROR_COMMAND_SYNTAX_ERROR;
                                continue;
                        }
 
                        if (reg->size != reg_params[i].size)
                        {
                                LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size", reg_params[i].reg_name);
-                               retval = ERROR_INVALID_ARGUMENTS;
+                               retval = ERROR_COMMAND_SYNTAX_ERROR;
                                continue;
                        }
 
 
        if (armv7a->common_magic != ARMV7_COMMON_MAGIC)
        {
                LOG_ERROR("BUG: called for a non-ARMv7A target");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        arm_arch_state(target);
 
        struct armv7m_common *armv7m = target_to_armv7m(target);
 
        if (num >= ARMV7M_NUM_REGS)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        armv7m_core_reg = armv7m->core_cache->reg_list[num].arch_info;
        retval = armv7m->load_core_reg_u32(target, armv7m_core_reg->type, armv7m_core_reg->num, ®_value);
        struct armv7m_common *armv7m = target_to_armv7m(target);
 
        if (num >= ARMV7M_NUM_REGS)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = buf_get_u32(armv7m->core_cache->reg_list[num].value, 0, 32);
        armv7m_core_reg = armv7m->core_cache->reg_list[num].arch_info;
                if (!reg)
                {
                        LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                if (reg->size != reg_params[i].size)
                {
                        LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size", reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
 //             regvalue = buf_get_u32(reg_params[i].value, 0, 32);
                        if (!reg)
                        {
                                LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
 
                        if (reg->size != reg_params[i].size)
                        {
                                LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size", reg_params[i].reg_name);
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
 
                        buf_set_u32(reg_params[i].value, 0, 32, buf_get_u32(reg->value, 0, 32));
 
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
 
        if ((num < 0) || (num >= AVR32NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = ap7k->core_regs[num];
        buf_set_u32(ap7k->core_cache->reg_list[num].value, 0, 32, reg_value);
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
 
        if ((num < 0) || (num >= AVR32NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = buf_get_u32(ap7k->core_cache->reg_list[num].value, 0, 32);
        ap7k->core_regs[num] = reg_value;
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
 
        /* write memory through APB-AP */
 
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
        struct armv7a_common *armv7a = target_to_armv7a(target);
        struct arm *armv4_5 = &armv7a->armv4_5_common;
        int total_bytes = count * size;
 
        /* read memory through APB-AP */
 
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
        struct armv7a_common *armv7a = target_to_armv7a(target);
        struct arm *armv4_5 = &armv7a->armv4_5_common;
        int total_bytes = count * size;
 {
        struct armv7a_common *armv7a = target_to_armv7a(target);
        struct adiv5_dap *swjdp = armv7a->armv4_5_common.dap;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
        uint8_t apsel = swjdp->apsel;
        LOG_DEBUG("Reading memory at real address 0x%x; size %d; count %d",
                        address, size, count);
 {
        struct armv7a_common *armv7a = target_to_armv7a(target);
        struct adiv5_dap *swjdp = armv7a->armv4_5_common.dap;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
        uint8_t apsel = swjdp->apsel;
 
        LOG_DEBUG("Writing memory to real address 0x%x; size %d; count %d", address,
 
                break;
 
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        return ERROR_OK;
                break;
 
        default:
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        return ERROR_OK;
 {
        struct armv7m_common *armv7m = target_to_armv7m(target);
        struct adiv5_dap *swjdp = &armv7m->dap;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
 
        /* cortex_m3 handles unaligned memory access */
        if (count && buffer) {
 {
        struct armv7m_common *armv7m = target_to_armv7m(target);
        struct adiv5_dap *swjdp = &armv7m->dap;
-       int retval = ERROR_INVALID_ARGUMENTS;
+       int retval = ERROR_COMMAND_SYNTAX_ERROR;
 
        if (count && buffer) {
                switch (size) {
                        }
                        if (i == ARRAY_SIZE(vec_ids)) {
                                LOG_ERROR("No CM3 vector '%s'", CMD_ARGV[CMD_ARGC]);
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
                }
 write:
 
        *reg_list = malloc(sizeof(struct reg *) * (*reg_list_size));
 
        if (!*reg_list)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        for (i = 0; i < DSP563XX_NUMCOREREGS; i++)
        {
        struct dsp563xx_common *dsp563xx = target_to_dsp563xx(target);
 
        if ((num < 0) || (num >= DSP563XX_NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = dsp563xx->core_regs[num];
        buf_set_u32(dsp563xx->core_cache->reg_list[num].value, 0, 32, reg_value);
        struct dsp563xx_common *dsp563xx = target_to_dsp563xx(target);
 
        if ((num < 0) || (num >= DSP563XX_NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = buf_get_u32(dsp563xx->core_cache->reg_list[num].value, 0, 32);
        dsp563xx->core_regs[num] = reg_value;
        struct dsp563xx_common *dsp563xx = calloc(1, sizeof(struct dsp563xx_common));
 
        if (!dsp563xx)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        dsp563xx->jtag_info.tap = target->tap;
        target->arch_info = dsp563xx;
        {
                LOG_ERROR("no IDCODE present on device");
 
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (!target_was_examined(target))
                        move_cmd = 0x07d891;
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* we use r0 to store temporary data */
        /* we only support 4 byte aligned data */
        if ( (size != 4) || (!count) )
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if ( mem_type != MEM_L )
 
        if ( !(buffer_y = malloc(size*count)) )
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if ( !(buffer_x = malloc(size*count)) )
        {
                free(buffer_y);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        err = dsp563xx_read_memory_core(target,MEM_Y,address,size,count/2,buffer_y);
                        move_cmd = 0x075891;
                        break;
                default:
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        /* we use r0 to store temporary data */
        /* we only support 4 byte aligned data */
        if ( (size != 4) || (!count) )
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if ( mem_type != MEM_L )
 
        if ( !(buffer_y = malloc(size*count)) )
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if ( !(buffer_x = malloc(size*count)) )
        {
                free(buffer_y);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        for(i=0,i1=0;i<count;i+=2,i1++)
 
        else
        {
                LOG_ERROR("Invalid arguments");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        retval = arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
 
 
        if (etm_reg->reg_info->mode == WO) {
                LOG_ERROR("BUG: can't read write-only register %s", r->name);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        LOG_DEBUG("%s (%u)", r->name, reg_addr);
 
        if (etm_reg->reg_info->mode == RO) {
                LOG_ERROR("BUG: can't write read--only register %s", r->name);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        LOG_DEBUG("%s (%u): 0x%8.8" PRIx32 "", r->name, reg_addr, value);
        else
        {
                command_print(CMD_CTX, "invalid option '%s'", CMD_ARGV[0]);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        uint8_t context_id;
                break;
        default:
                command_print(CMD_CTX, "invalid option '%s'", CMD_ARGV[1]);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        bool etmv1_cycle_accurate;
 
        {
                LOG_DEBUG("read past end of section: 0x%8.8" PRIx32 " + 0x%8.8" PRIx32 " > 0x%8.8" PRIx32 "",
                                offset, size, image->sections[section].size);
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (image->type == IMAGE_BINARY)
 
                /* only one section in a plain binary */
                if (section != 0)
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
 
                /* seek to offset */
                if ((retval = fileio_seek(&image_binary->fileio, offset)) != ERROR_OK)
 
        /* only image builder supports adding sections */
        if (image->type != IMAGE_BUILDER)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        /* see if there's a previous section */
        if (image->num_sections)
 
        struct mips32_common *mips32 = target_to_mips32(target);
 
        if ((num < 0) || (num >= MIPS32NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = mips32->core_regs[num];
        buf_set_u32(mips32->core_cache->reg_list[num].value, 0, 32, reg_value);
        struct mips32_common *mips32 = target_to_mips32(target);
 
        if ((num < 0) || (num >= MIPS32NUMCOREREGS))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        reg_value = buf_get_u32(mips32->core_cache->reg_list[num].value, 0, 32);
        mips32->core_regs[num] = reg_value;
                if (!reg)
                {
                        LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                if (reg->size != reg_params[i].size)
                {
                        LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size",
                                        reg_params[i].reg_name);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
 
                mips32_set_core_reg(reg, reg_params[i].value);
                        if (!reg)
                        {
                                LOG_ERROR("BUG: register '%s' not found", reg_params[i].reg_name);
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
 
                        if (reg->size != reg_params[i].size)
                        {
                                LOG_ERROR("BUG: register '%s' size doesn't match reg_params[i].size",
                                                reg_params[i].reg_name);
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                        }
 
                        buf_set_u32(reg_params[i].value, 0, 32, buf_get_u32(reg->value, 0, 32));
 
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
 
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (*callbacks_p)
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (*callbacks_p)
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        while (c)
 
        if (callback == NULL)
        {
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        while (c)
                if (buffer == NULL)
                {
                        LOG_ERROR("error allocating buffer for section (%d bytes)", (int)size);
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                retval = target_read_buffer(target, address, size, buffer);
                if (retval != ERROR_OK)
 
        struct debug_msg_receiver **p = &target->dbgmsg;
 
        if (target == NULL)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        /* see if there's already a list */
        if (*p)
 
 static int xscale_receive(struct target *target, uint32_t *buffer, int num_words)
 {
        if (num_words == 0)
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        struct xscale_common *xscale = target_to_xscale(target);
        int retval = ERROR_OK;
                        break;
                default:
                        LOG_ERROR("BUG: size neither 4, 2 nor 1");
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                jtag_add_dr_out(target->tap,
                                3,
        if (armv4_5->common_magic != ARM_COMMON_MAGIC)
        {
                LOG_ERROR("BUG: called for a non-ARMv4/5 target");
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        arm_arch_state(target);
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
                                break;
                        default:
                                LOG_ERROR("invalid read size");
-                               return ERROR_INVALID_ARGUMENTS;
+                               return ERROR_COMMAND_SYNTAX_ERROR;
                }
        }
 
 
        /* sanitize arguments */
        if (((size != 4) && (size != 2) && (size != 1)) || (count == 0) || !(buffer))
-               return ERROR_INVALID_ARGUMENTS;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        if (((size == 4) && (address & 0x3u)) || ((size == 2) && (address & 0x1u)))
                return ERROR_TARGET_UNALIGNED_ACCESS;
           else if (strcmp("disable", CMD_ARGV[0]) == 0)
                  xscale->trace.mode = XSCALE_TRACE_DISABLED;
           else
-                 return ERROR_INVALID_ARGUMENTS;
+                 return ERROR_COMMAND_SYNTAX_ERROR;
        }
 
        if (CMD_ARGC >= 2 && xscale->trace.mode != XSCALE_TRACE_DISABLED)
                  {
                         command_print(CMD_CTX, "fill buffer count must be > 0");
                         xscale->trace.mode = XSCALE_TRACE_DISABLED;
-                        return ERROR_INVALID_ARGUMENTS;
+                        return ERROR_COMMAND_SYNTAX_ERROR;
                  }
                  xscale->trace.buffer_fill = buffcount;
                  xscale->trace.mode = XSCALE_TRACE_FILL;
           else
           {
                  xscale->trace.mode = XSCALE_TRACE_DISABLED;
-                 return ERROR_INVALID_ARGUMENTS;
+                 return ERROR_COMMAND_SYNTAX_ERROR;
           }
        }
        
                        break;
                default:
                        command_print(CMD_CTX, "invalid register number");
-                       return ERROR_INVALID_ARGUMENTS;
+                       return ERROR_COMMAND_SYNTAX_ERROR;
                }
                reg = &xscale->reg_cache->reg_list[reg_no];