Commit d5fa46ca authored by Adam Wujek's avatar Adam Wujek 💬

wr-servo: pass ppi context to the wr_servo_reset

Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
parent fb0941b2
......@@ -201,7 +201,7 @@ int wrc_ptp_start()
start_tics = timer_get_tics();
WR_DSPOR(ppi)->linkUP = FALSE;
wr_servo_reset();
wr_servo_reset(ppi);
ptp_enabled = 1;
return 0;
......@@ -219,7 +219,7 @@ int wrc_ptp_stop()
ppi->frgn_rec_num = 0; /* no known master */
ptp_enabled = 0;
wr_servo_reset();
wr_servo_reset(ppi);
pp_close_globals(&ppg_static);
return 0;
......
......@@ -57,7 +57,7 @@ static int run_all_state_machines(struct pp_globals *ppg)
ppi->frgn_rec_num = 0;
ppi->frgn_rec_best = -1;
if (ppg->ebest_idx == ppi->port_idx)
wr_servo_reset();
wr_servo_reset(ppi);
}
}
......
......@@ -131,7 +131,7 @@ enum {
/* wr_servo interface */
int wr_servo_init(struct pp_instance *ppi);
void wr_servo_reset(void);
void wr_servo_reset(struct pp_instance *ppi);
void wr_servo_enable_tracking(int enable);
int wr_servo_got_sync(struct pp_instance *ppi, TimeInternal *t1,
TimeInternal *t2);
......
......@@ -28,9 +28,6 @@ static const char *servo_name[] = {
/* Enable tracking by default. Disabling the tracking is used for demos. */
static int tracking_enabled = 1;
extern struct wrs_shm_head *ppsi_head;
static struct wr_servo_state *saved_servo_pointer; /* required for
* wr_servo_reset, which doesn't
* have ppi context. */
void wr_servo_enable_tracking(int enable)
{
......@@ -144,10 +141,9 @@ static TimeInternal ts_hardwarize(TimeInternal ts, int clock_period_ps)
static int got_sync = 0;
void wr_servo_reset(void)
void wr_servo_reset(struct pp_instance *ppi)
{
if (saved_servo_pointer)
saved_servo_pointer->flags = 0;
ppi->flags = 0;
}
static inline int32_t delta_to_ps(struct FixedDelta d)
......@@ -184,8 +180,7 @@ int wr_servo_init(struct pp_instance *ppi)
strcpy(s->servo_state_name, "Uninitialized");
saved_servo_pointer = s;
saved_servo_pointer->flags |= WR_FLAG_VALID;
s->flags |= WR_FLAG_VALID;
s->update_count = 0;
s->tracking_enabled = tracking_enabled;
......
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