Commit ed394bc1 authored by Grzegorz Daniluk's avatar Grzegorz Daniluk

Revert "wr-servo: simplify servo_reset (do as init does)" - it breaks 1-PPS in master mode

This reverts commit a72f6bdc.
parent 365e3e99
......@@ -134,7 +134,35 @@ static int got_sync = 0;
void wr_servo_reset(struct pp_instance *ppi)
{
wr_servo_init(ppi);
/* values from servo_state to be preserved */
uint32_t n_err_state;
uint32_t n_err_offset;
uint32_t n_err_delta_rtt;
struct wr_servo_state *s;
s = &((struct wr_data *)ppi->ext_data)->servo_state;
if (!s) {
/* Don't clean servo state when is not available */
return;
}
/* shmem lock */
wrs_shm_write(ppsi_head, WRS_SHM_WRITE_BEGIN);
ppi->flags = 0;
/* preserve some values from servo_state */
n_err_state = s->n_err_state;
n_err_offset = s->n_err_offset;
n_err_delta_rtt = s->n_err_delta_rtt;
/* clear servo_state to display empty fields in wr_mon and SNMP */
memset(s, 0, sizeof(struct wr_servo_state));
/* restore values from servo_state */
s->n_err_state = n_err_state;
s->n_err_offset = n_err_offset;
s->n_err_delta_rtt = n_err_delta_rtt;
/* shmem unlock */
wrs_shm_write(ppsi_head, WRS_SHM_WRITE_END);
}
static inline int32_t delta_to_ps(struct FixedDelta d)
......
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