diff --git a/src/host/layer23/src/misc/app_cell_log.c b/src/host/layer23/src/misc/app_cell_log.c index 84f5a83..e1f9863 100644 --- a/src/host/layer23/src/misc/app_cell_log.c +++ b/src/host/layer23/src/misc/app_cell_log.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -91,6 +92,8 @@ static int l23_getopt_options(struct option **options) {"logfile", 1, 0, 'l'}, {"rach", 1, 0, 'r'}, {"no-rach", 1, 0, 'n'}, + {"gps", 1, 0, 'g'}, + {"baud", 1, 0, 'b'} }; *options = opts; @@ -103,6 +106,8 @@ static int l23_cfg_print_help() printf(" -l --logfile LOGFILE Logfile for the cell log.\n"); printf(" -r --rach RACH Nr. of RACH bursts to send.\n"); printf(" -n --no-rach Send no rach bursts.\n"); + printf(" -g --gps DEVICE /dev/ttyACM0. GPS device.\n"); + printf(" -b --baud BAUDRATE The baud rate of the GPS device\n"); return 0; } @@ -118,6 +123,16 @@ static int l23_cfg_handle(int c, const char *optarg) case 'n': RACH_MAX = 0; break; + case 'g': + snprintf(gps.device, ARRAY_SIZE(gps.device), "%s", optarg); + // force string terminator + gps.device[ARRAY_SIZE(gps.device - 1)] = '\0'; + LOGP(DGPS, LOGL_INFO, "Using GPS device %s\n", gps.device); + break; + case 'b': + gps.baud = atoi(optarg); + LOGP(DGPS, LOGL_INFO, "Setting GPS baudrate to %u\n", gps.baud); + break; } return 0; @@ -125,7 +140,7 @@ static int l23_cfg_handle(int c, const char *optarg) static struct l23_app_info info = { .copyright = "Copyright (C) 2010 Andreas Eversberg\n", - .getopt_string = "l:r:n", + .getopt_string = "l:r:ng:b:", .cfg_supported = l23_cfg_supported, .cfg_getopt_opt = l23_getopt_options, .cfg_handle_opt = l23_cfg_handle,