• Alessandro Rubini's avatar
    wr-servo: changes for the better · ac320650
    Alessandro Rubini authored
    What happened, sometimes, is that the phase setpoint take a meaningless
    (and high) value. This is because we were into SYNC_NSEC and moved
    to SYNC_PHASE without checking. Maybe because of other problems too.
    That situation led to a lockup of the softpll, which tries to
    reach an unreachable setpoint.
    
    Now we force to stay in SYNC_NSEC if the offset is more than one cycle
    (and SYNC_SEC if more than one second).
    
    As a side effect, the phase setpoint is always 0..16ns (while earlier
    I got setpoints of 1.5 of 17.5 etc, up to 64.5 for the same setup and
    same temperature).
    
    The problem here is: what is going to happen if, by thermal effect,
    the phase setpoint crosses the 0..16n interval?
    Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    ac320650
Name
Last commit
Last update
..
Makefile Loading commit data...
common-fun.c Loading commit data...
fsm-table.c Loading commit data...
hooks.c Loading commit data...
state-wr-calibrated.c Loading commit data...
state-wr-calibration.c Loading commit data...
state-wr-link-on.c Loading commit data...
state-wr-locked.c Loading commit data...
state-wr-m-lock.c Loading commit data...
state-wr-present.c Loading commit data...
state-wr-resp-calib-req.c Loading commit data...
state-wr-s-lock.c Loading commit data...
wr-api.h Loading commit data...
wr-constants.h Loading commit data...
wr-msg.c Loading commit data...
wr-servo.c Loading commit data...