From f218f36df5ad401837a5a74d755174b1dc9023fe Mon Sep 17 00:00:00 2001 From: zwelch Date: Fri, 12 Jun 2009 01:40:17 +0000 Subject: [PATCH] Simplify and improve amt_jtagaccel_handle_parport_port_command: - Show the port number to the user when asking for it or setting it. - Print an error if the amt_jtagaccel_port has already been set. - Use parse_u16 helper to ensure amt_jtagaccel_port string parses correctly. git-svn-id: svn://svn.berlios.de/openocd/trunk@2210 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/jtag/amt_jtagaccel.c | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/jtag/amt_jtagaccel.c b/src/jtag/amt_jtagaccel.c index 7d0dd53c2..c7524cc12 100644 --- a/src/jtag/amt_jtagaccel.c +++ b/src/jtag/amt_jtagaccel.c @@ -526,14 +526,26 @@ static int amt_jtagaccel_quit(void) return ERROR_OK; } -static int amt_jtagaccel_handle_parport_port_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) +static int amt_jtagaccel_handle_parport_port_command( + struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) { - if (argc == 0) - return ERROR_OK; + if (argc == 1) + { + /* only if the port wasn't overwritten by cmdline */ + if (amt_jtagaccel_port == 0) + { + int retval = parse_u16(args[0], &amt_jtagaccel_port); + if (ERROR_OK != retval) + return retval; + } + else + { + LOG_ERROR("The parport port was already configured!"); + return ERROR_FAIL; + } + } - /* only if the port wasn't overwritten by cmdline */ - if (amt_jtagaccel_port == 0) - amt_jtagaccel_port = strtoul(args[0], NULL, 0); + command_print(cmd_ctx, "parport port = %u", amt_jtagaccel_port); return ERROR_OK; }