This is a note to let you know that I've just added the patch titled sfc: Maintain current frequency adjustment when applying a time offset to the 3.12-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: sfc-maintain-current-frequency-adjustment-when-applying-a-time-offset.patch and it can be found in the queue-3.12 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Mon Jan 13 09:44:41 PST 2014 From: Ben Hutchings <bhutchings@xxxxxxxxxxxxxx> Date: Thu, 5 Dec 2013 17:24:06 +0000 Subject: sfc: Maintain current frequency adjustment when applying a time offset From: Ben Hutchings <bhutchings@xxxxxxxxxxxxxx> [ Upstream commit cd6fe65e923175e4f2e9fb585b1d78c6bf580fc6 ] There is a single MCDI PTP operation for setting the frequency adjustment and applying a time offset to the hardware clock. When applying a time offset we should not change the frequency adjustment. These two operations can now be requested separately but this requires a flash firmware update. Keep using the single operation, but remember and repeat the previous frequency adjustment. Fixes: 7c236c43b838 ('sfc: Add support for IEEE-1588 PTP') Signed-off-by: Ben Hutchings <bhutchings@xxxxxxxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/net/ethernet/sfc/ptp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/drivers/net/ethernet/sfc/ptp.c +++ b/drivers/net/ethernet/sfc/ptp.c @@ -1426,7 +1426,7 @@ static int efx_phc_adjfreq(struct ptp_cl if (rc != 0) return rc; - ptp_data->current_adjfreq = delta; + ptp_data->current_adjfreq = adjustment_ns; return 0; } @@ -1441,7 +1441,7 @@ static int efx_phc_adjtime(struct ptp_cl MCDI_SET_DWORD(inbuf, PTP_IN_OP, MC_CMD_PTP_OP_ADJUST); MCDI_SET_DWORD(inbuf, PTP_IN_PERIPH_ID, 0); - MCDI_SET_QWORD(inbuf, PTP_IN_ADJUST_FREQ, 0); + MCDI_SET_QWORD(inbuf, PTP_IN_ADJUST_FREQ, ptp_data->current_adjfreq); MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_SECONDS, (u32)delta_ts.tv_sec); MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_NANOSECONDS, (u32)delta_ts.tv_nsec); return efx_mcdi_rpc(efx, MC_CMD_PTP, inbuf, sizeof(inbuf), Patches currently in stable-queue which might be from bhutchings@xxxxxxxxxxxxxx are queue-3.12/sfc-refactor-efx_mcdi_poll-by-introducing-efx_mcdi_poll_once.patch queue-3.12/sfc-poll-for-mcdi-completion-once-before-timeout-occurs.patch queue-3.12/sfc-stop-re-start-ptp-when-stopping-starting-the-datapath.patch queue-3.12/sfc-rx-buffer-allocation-takes-prefix-size-into-account-in-ip-header-alignment.patch queue-3.12/sfc-add-length-checks-to-efx_xmit_with_hwtstamp-and-efx_ptp_is_ptp_tx.patch queue-3.12/sfc-ptp-moderate-log-message-on-event-queue-overflow.patch queue-3.12/sfc-rate-limit-log-message-for-ptp-packets-without-a-matching-timestamp-event.patch queue-3.12/sfc-maintain-current-frequency-adjustment-when-applying-a-time-offset.patch -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html