Commit 2636527a authored by Peter Jansweijer's avatar Peter Jansweijer

add awkward locksweep hack via locksweep function in board file

parent 168f5e44
......@@ -89,6 +89,7 @@ typedef enum {
WRH_UNINITIALIZED = 0,
WRH_SYNC_TAI,
WRH_SYNC_NSEC,
WRH_LOCK_SWEEP,
WRH_SYNC_PHASE,
WRH_TRACK_PHASE,
WRH_WAIT_OFFSET_STABLE,
......
......@@ -9,6 +9,7 @@
#include <ppsi/ppsi.h>
// #include "wrs-constants.h"
#include "../proto-standard/common-fun.h"
#include "board.h"
#if CONFIG_ARCH_IS_WRS
#include <libwr/shmem.h>
......@@ -25,6 +26,7 @@ static const char * const wrh_servo_state_name[] = {
[WRH_UNINITIALIZED] = "Uninitialized",
[WRH_SYNC_NSEC] = "SYNC_NSEC",
[WRH_SYNC_TAI] = "SYNC_TAI",
[WRH_LOCK_SWEEP] = "SYNC_LOCK_SWEEP",
[WRH_SYNC_PHASE] = "SYNC_PHASE",
[WRH_TRACK_PHASE] = "TRACK_PHASE",
[WRH_WAIT_OFFSET_STABLE] = "WAIT_OFFSET_STABLE",
......@@ -276,7 +278,17 @@ static int __wrh_servo_update(struct pp_instance *ppi)
case WRH_SYNC_NSEC:
WRH_OPER()->adjust_counters(0, offset_ticks);
gs->flags |= PP_SERVO_FLAG_WAIT_HW;
setState(ppi,WRH_SYNC_PHASE);
setState(ppi,WRH_LOCK_SWEEP);
break;
case WRH_LOCK_SWEEP:
if (!lock_sweep()) {
setState(ppi,WRH_SYNC_PHASE);
} else {
pp_printf("Relock mpll\n");
mpll_restart();
}
gs->flags |= PP_SERVO_FLAG_WAIT_HW;
break;
case WRH_SYNC_PHASE:
......
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