commit d81f2c5d4d4aa4cc7c06c1f85195f4e3894528c4
parent 09ed202d28e122de52022a96b0ac5917344143ba
Author: Dimitris Papastamos <dimitris.papastamos@arm.com>
Date: Tue, 6 Nov 2018 13:04:45 +0000
[debuglang] Fix style and a bit of refactoring
Change-Id: I8ffb37e677e897360fd4106b097010a65e26d157
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
Diffstat:
2 files changed, 60 insertions(+), 98 deletions(-)
diff --git a/scripts/gendebuglang.sh b/scripts/gendebuglang.sh
@@ -2,12 +2,7 @@
echo "
#define BUFFER_SIZE 256
-#define MAX_PARTS 50
-
-#define DEBUG(...) do{fprintf(stderr,\"DEBUG:\"); fprintf(stderr,__VA_ARGS__);}while(0)
-#define INFO(...) do{fprintf(stderr,\"INFO:\"); fprintf(stderr,__VA_ARGS__);}while(0)
-#define WARN(...) do{fprintf(stderr,\"WARN:\"); fprintf(stderr,__VA_ARGS__);}while(0)
-#define ERROR(...) do{fprintf(stderr,\"ERROR:\"); fprintf(stderr,__VA_ARGS__);}while(0)
+#define NR_ARGC_MAX 16
struct named_reg {
char* name;
diff --git a/src/debuglang/debuglang.c b/src/debuglang/debuglang.c
@@ -109,7 +109,7 @@ print_tf(struct trapframe *tfp)
* 10, unless the string begins with "0x" or "0b"
*/
unsigned long long
-base_read(char* str, int base, int *err)
+base_read(char *str, int base)
{
unsigned long long val;
char *endptr;
@@ -117,191 +117,158 @@ base_read(char* str, int base, int *err)
endptr = NULL;
errno = 0;
val = strtoull(str, &endptr, base);
- if (str == endptr || errno != 0){
- ERROR("strtoull error with '%s' in base %d\n", str, base);
- if(err != NULL)
- *err = 1;
- }
+ if (str == endptr || errno != 0)
+ error("strtoull error with '%s' in base %d\n", str, base);
return val;
}
/* Get reg struct for named reg */
-unsigned long long*
-get_named_reg(char* name, struct trapframe *tfp)
+unsigned long long *
+get_named_reg(char *name, struct trapframe *tfp)
{
size_t i;
char *regptr;
- regptr=NULL;
- for(i=0;i<NUM_NAMED_REGS;i++){
- if(strcmp(name,named_regs[i].name)==0){
- regptr = (char*) tfp;
+ regptr = NULL;
+ for (i = 0; i < NUM_NAMED_REGS; i++) {
+ if (strcmp(name, named_regs[i].name) == 0) {
+ regptr = (char *) tfp;
regptr += named_regs[i].offset;
}
}
- return (unsigned long long*) regptr;
+ return (unsigned long long *) regptr;
}
/* Get rmc_command struct for named rmc command */
static const struct rmc_command *
-get_rmc_cmd(char* name)
+get_rmc_cmd(char *name)
{
size_t i;
- for(i=0;i<NUM_RMC_COMMANDS;i++){
- if(strcmp(name,rmc_commands[i].name)==0){
+ for (i = 0; i <NUM_RMC_COMMANDS; i++)
+ if (strcmp(name, rmc_commands[i].name) == 0)
return &rmc_commands[i];
- }
- }
return NULL;
}
/* Get command struct for named command */
static const struct command *
-get_command(char* name)
+get_command(char *name)
{
const struct command *com;
- for (com = commands; com->name; com++) {
- if(strcmp(name, com->name)==0) {
+ for (com = commands; com->name; com++)
+ if (strcmp(name, com->name) == 0)
return com;
- }
- }
-
return NULL;
}
int
-do_set(char **argv,int argc, struct trapframe *tfp)
+do_set(char **argv, int argc, struct trapframe *tfp)
{
- unsigned long long *reg=NULL;
- unsigned long long setval=0;
+ unsigned long long *reg = NULL;
+ unsigned long long setval = 0;
unsigned int base;
- int err;
- err = 0;
-
- reg = get_named_reg(argv[1],tfp);
- if( reg == NULL){
- ERROR("Register '%s' not found\n",argv[1]);
- return 1;
- }
+ reg = get_named_reg(argv[1], tfp);
+ if (reg == NULL)
+ error("Register '%s' not found\n", argv[1]);
base = 0;
-
- switch(argc){
+ switch (argc) {
case 4:
- base = base_read(argv[3], 10, &err);
- if(err)
- return 1;
+ base = base_read(argv[3], 10);
/* fallthrough */
case 3:
- setval = base_read(argv[2], base, &err);
- if(err)
- return 1;
+ setval = base_read(argv[2], base);
break;
default:
- ERROR("Invalid number of parameters for set\n");
- return 1;
+ error("Invalid number of parameters for set\n");
}
- INFO("set:0x%llx\n",setval);
- *reg=setval;
+ dbg("set: 0x%llx\n",setval);
+ *reg = setval;
return 0;
}
int
do_get(char **argv, int argc, struct trapframe *tfp)
{
- unsigned long long* reg=NULL;
- char* format_string;
+ unsigned long long *reg = NULL;
+ char *fmt;
- reg = get_named_reg(argv[1],tfp);
- if(reg == NULL){
- ERROR("Register '%s' not found\n",argv[1]);
- return 1;
- }
+ reg = get_named_reg(argv[1], tfp);
+ if (reg == NULL)
+ error("Register '%s' not found\n", argv[1]);
- switch(argc){
+ switch (argc) {
case 3:
- switch(atoi(argv[2])){
+ switch (atoi(argv[2])) {
case 10:
- format_string="%llu\n";
+ fmt="%llu\n";
break;
case 16:
- format_string="%llx\n";
+ fmt="%llx\n";
break;
default:
- ERROR("Unsupported base for read:%s\nsupported: 10,16\n",
- argv[2]);
- return 1;
+ error("Unsupported base for read:%s\nsupported: 10,16\n",
+ argv[2]);
}
break;
case 2:
- format_string="%llu\n";
+ fmt="%llu\n";
break;
default:
- ERROR("Invalid number of arguments for read\n");
- return 1;
+ error("Invalid number of arguments for read\n");
}
- printf(format_string,*reg);
+ printf(fmt, *reg);
return 0;
}
int
-do_dump(char **argv,int argc, struct trapframe *tfp)
+do_dump(char **argv, int argc, struct trapframe *tfp)
{
print_tf(tfp);
return 0;
}
int
-do_trap(char **argv,int argc, struct trapframe *tfp)
+do_trap(char **argv, int argc, struct trapframe *tfp)
{
trap(tfp);
return 0;
}
int
-do_rmc(char **argv,int argc, struct trapframe *tfp)
+do_rmc(char **argv, int argc, struct trapframe *tfp)
{
unsigned char class;
unsigned char func;
unsigned int base;
const struct rmc_command *rmc_cmd;
- int err;
-
- err = 0;
base = 0;
- switch(argc){
+ switch (argc) {
case 4:
- base = base_read(argv[3], 10, &err);
- if(err)
- return 1;
+ base = base_read(argv[3], 10);
/* fallthrough */
case 3:
- class = base_read(argv[1], base, &err);
- func = base_read(argv[2], base, &err);
- if(err)
- return 1;
+ class = base_read(argv[1], base);
+ func = base_read(argv[2], base);
break;
case 2:
rmc_cmd = get_rmc_cmd(argv[1]);
- if (rmc_cmd == NULL){
- ERROR("rmc '%s' not found\n",argv[1]);
- return 1;
- }
+ if (rmc_cmd == NULL)
+ error("rmc '%s' not found\n", argv[1]);
class = rmc_cmd->class;
func = rmc_cmd->func;
break;
default:
- ERROR("Invalid number of parameters for rmc\n");
- return 1;
+ error("Invalid number of parameters for rmc\n");
}
- INFO("class:%d,func:%d\n",class,func);
- tfp->esr=(unsigned long long) RMC<<26;
+ dbg("class: %d,func:%d\n", class, func);
+ tfp->esr = (unsigned long long) RMC << 26;
tfp->esr |= class;
- tfp->esr |= (func<<8);
+ tfp->esr |= (func << 8);
trap(tfp);
return 0;
}
@@ -317,9 +284,9 @@ do_help(char **argv, int argc, struct trapframe *tfp)
}
static void
-parse_cmd(char * cmd, struct trapframe *tfp)
+parse_cmd(char *cmd, struct trapframe *tfp)
{
- char *argv[MAX_PARTS], *p;
+ char *argv[NR_ARGC_MAX], *p;
unsigned argc;
const struct command *com;
@@ -328,7 +295,7 @@ parse_cmd(char * cmd, struct trapframe *tfp)
argc = 0;
for (p = strtok(cmd, " \t\r"); p; p = strtok(NULL, " \t\r")) {
- if (argc == MAX_PARTS)
+ if (argc == NR_ARGC_MAX)
error("too much parameters");
argv[argc++] = p;
}
@@ -340,7 +307,7 @@ parse_cmd(char * cmd, struct trapframe *tfp)
error("command '%s' not found", argv[0]);
/* Call eval function for specific command */
- com->eval(argv,argc, tfp);
+ com->eval(argv, argc, tfp);
}
static int