• Wesley W. Terpstra's avatar
    rxts_calibrator: fix incorrect t24p phase resulting in rare track failures · 94245412
    Wesley W. Terpstra authored
    t24p calibration finds the rising&falling edges in
    dev/rxts_calibrator.c:rxts_calibration_update.  It then computes the
    "transition" as (falling+rising)/2.  That is, ttrans points 25% past the
    dangerous transition.  Now that value arrives in one of the three copies of
    ptpd_netif_linearize_rx_timestamp (depending on build).  In this method
    ttrans has +-1/4 period added to it to compute trip_lo and trip_hi.  The
    intent as described by the comment (and common sense) is to avoid the rising
    edge when the phase is within +-1/4 period.  Unfortunately, this code
    assumes that ttrans IS the rising edge, when in fact it is the rising
    edge+25%. Thus, the code ACTUALLY tests phase within 0-50%.
    94245412
rxts_calibrator.c 6.5 KB