Reduce the arguments to clock_create.
New clock options should go into 'struct default_ds' so that we can avoid growing clock_create indefinitely. Signed-off-by: Richard Cochran <richardcochran@gmail.com>master
parent
3136e3e46c
commit
1ce90fe160
4
clock.c
4
clock.c
|
@ -484,7 +484,7 @@ UInteger8 clock_class(struct clock *c)
|
||||||
|
|
||||||
struct clock *clock_create(int phc_index, struct interface *iface, int count,
|
struct clock *clock_create(int phc_index, struct interface *iface, int count,
|
||||||
enum timestamp_type timestamping, struct default_ds *dds,
|
enum timestamp_type timestamping, struct default_ds *dds,
|
||||||
enum servo_type servo, int stats_interval)
|
enum servo_type servo)
|
||||||
{
|
{
|
||||||
int i, fadj = 0, max_adj = 0.0, sw_ts = timestamping == TS_SOFTWARE ? 1 : 0;
|
int i, fadj = 0, max_adj = 0.0, sw_ts = timestamping == TS_SOFTWARE ? 1 : 0;
|
||||||
struct clock *c = &the_clock;
|
struct clock *c = &the_clock;
|
||||||
|
@ -537,7 +537,7 @@ struct clock *clock_create(int phc_index, struct interface *iface, int count,
|
||||||
pr_err("Failed to create moving average");
|
pr_err("Failed to create moving average");
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
c->stats_interval = stats_interval;
|
c->stats_interval = dds->stats_interval;
|
||||||
c->stats.offset = stats_create();
|
c->stats.offset = stats_create();
|
||||||
c->stats.freq = stats_create();
|
c->stats.freq = stats_create();
|
||||||
c->stats.delay = stats_create();
|
c->stats.delay = stats_create();
|
||||||
|
|
3
clock.h
3
clock.h
|
@ -67,12 +67,11 @@ UInteger8 clock_class(struct clock *c);
|
||||||
* @param timestamping The timestamping mode for this clock.
|
* @param timestamping The timestamping mode for this clock.
|
||||||
* @param dds A pointer to a default data set for the clock.
|
* @param dds A pointer to a default data set for the clock.
|
||||||
* @param servo The servo that this clock will use.
|
* @param servo The servo that this clock will use.
|
||||||
* @param stats_interval Interval in which are printed clock statistics.
|
|
||||||
* @return A pointer to the single global clock instance.
|
* @return A pointer to the single global clock instance.
|
||||||
*/
|
*/
|
||||||
struct clock *clock_create(int phc_index, struct interface *iface, int count,
|
struct clock *clock_create(int phc_index, struct interface *iface, int count,
|
||||||
enum timestamp_type timestamping, struct default_ds *dds,
|
enum timestamp_type timestamping, struct default_ds *dds,
|
||||||
enum servo_type servo, int stats_interval);
|
enum servo_type servo);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Obtains a clock's default data set.
|
* Obtains a clock's default data set.
|
||||||
|
|
2
config.c
2
config.c
|
@ -381,7 +381,7 @@ static enum parser_result parse_global_setting(const char *option,
|
||||||
} else if (!strcmp(option, "summary_interval")) {
|
} else if (!strcmp(option, "summary_interval")) {
|
||||||
if (1 != sscanf(value, "%d", &val))
|
if (1 != sscanf(value, "%d", &val))
|
||||||
return BAD_VALUE;
|
return BAD_VALUE;
|
||||||
cfg->summary_interval = val;
|
cfg->dds.stats_interval = val;
|
||||||
|
|
||||||
} else
|
} else
|
||||||
return NOT_PARSED;
|
return NOT_PARSED;
|
||||||
|
|
1
config.h
1
config.h
|
@ -76,7 +76,6 @@ struct config {
|
||||||
int print_level;
|
int print_level;
|
||||||
int use_syslog;
|
int use_syslog;
|
||||||
int verbose;
|
int verbose;
|
||||||
int summary_interval;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
int config_read(char *name, struct config *cfg);
|
int config_read(char *name, struct config *cfg);
|
||||||
|
|
1
ds.h
1
ds.h
|
@ -51,6 +51,7 @@ struct default_ds {
|
||||||
struct defaultDS dds;
|
struct defaultDS dds;
|
||||||
int free_running;
|
int free_running;
|
||||||
int freq_est_interval; /*log seconds*/
|
int freq_est_interval; /*log seconds*/
|
||||||
|
int stats_interval; /*log seconds*/
|
||||||
struct clock_description clock_desc;
|
struct clock_description clock_desc;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
5
ptp4l.c
5
ptp4l.c
|
@ -52,6 +52,7 @@ static struct config cfg_settings = {
|
||||||
},
|
},
|
||||||
.free_running = 0,
|
.free_running = 0,
|
||||||
.freq_est_interval = 1,
|
.freq_est_interval = 1,
|
||||||
|
.stats_interval = 0,
|
||||||
.clock_desc = {
|
.clock_desc = {
|
||||||
.productDescription = {
|
.productDescription = {
|
||||||
.max_symbols = 64,
|
.max_symbols = 64,
|
||||||
|
@ -99,7 +100,6 @@ static struct config cfg_settings = {
|
||||||
.print_level = LOG_INFO,
|
.print_level = LOG_INFO,
|
||||||
.use_syslog = 1,
|
.use_syslog = 1,
|
||||||
.verbose = 0,
|
.verbose = 0,
|
||||||
.summary_interval = 0,
|
|
||||||
|
|
||||||
.cfg_ignore = 0,
|
.cfg_ignore = 0,
|
||||||
};
|
};
|
||||||
|
@ -352,8 +352,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
clock = clock_create(phc_index, iface, cfg_settings.nports,
|
clock = clock_create(phc_index, iface, cfg_settings.nports,
|
||||||
*timestamping, &cfg_settings.dds,
|
*timestamping, &cfg_settings.dds,
|
||||||
cfg_settings.clock_servo,
|
cfg_settings.clock_servo);
|
||||||
cfg_settings.summary_interval);
|
|
||||||
if (!clock) {
|
if (!clock) {
|
||||||
fprintf(stderr, "failed to create a clock\n");
|
fprintf(stderr, "failed to create a clock\n");
|
||||||
return -1;
|
return -1;
|
||||||
|
|
Loading…
Reference in New Issue