Commit acce51e1 authored by Jorge Machado's avatar Jorge Machado

irq-demo: Add argument to select clock type

parent 91bc15aa
......@@ -21,11 +21,18 @@
#define STATS_LOG_PATH "./.irq-demo.log"
#define MAX_FMC_DIO_PATH 100
typedef enum{
MONOTONIC,
REALTIME
} clock_type;
struct _user_args {
char fmc_dev_path[MAX_FMC_DIO_PATH];
unsigned int irq_period;
int verbose;
clock_type clock;
};
typedef struct _user_args * user_args;
static void demo_irq_process_loop(fmc_dio_device fmc_dev, stats_engine engine);
......
......@@ -227,7 +227,7 @@ static int parse_user_arguments(int argc, char *argv[], user_args parsed_args)
return 1;
}
while((opt = getopt(argc, argv, "hvf:p:")) != -1) {
while((opt = getopt(argc, argv, "hvf:p:c:")) != -1) {
switch(opt) {
case 'f':
strncpy(parsed_args->fmc_dev_path, optarg, MAX_FMC_DIO_PATH-1);
......@@ -235,9 +235,15 @@ static int parse_user_arguments(int argc, char *argv[], user_args parsed_args)
case 'p':
sscanf(optarg, "%d", &parsed_args->irq_period);
break;
case 'v':
case 'v':
parsed_args->verbose = 1;
break;
case 'c':
if(strcmp(optarg,"REALTIME")==0)
parsed_args->clock=REALTIME;
else
parsed_args->clock=MONOTONIC;
break;
case 'h':
default:
show_help();
......@@ -265,6 +271,7 @@ static void show_help(void)
printf("%s -f <FMC DIO device path> [options]\n", PROG_NAME);
printf("\t -f <path> \tSet FMC DIO device path\n");
printf("\t -p <period> \tSet IRQ period (in nanoseconds)\n");
printf("\t -c <MONOTONIC/REALTIME> \tSet the clock mode\n");
printf("\t -v \t\tEnable verbose mode\n");
printf("\t -h \t\tShow this help message\n");
printf("Please, press 'q' key + ENTER or CNTRL+C to exit from the demo tool\n");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment