diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-10-10 18:20:17 -0400 |
---|---|---|
committer | Ben Hutchings <bhutchings@solarflare.com> | 2013-08-21 11:35:28 -0400 |
commit | 338f74df399d652788cf3bab247257ae90419c7d (patch) | |
tree | 0a17c0848023dbf6b1d6d8cf7960f395acb7a5b8 /drivers/net/ethernet/sfc/ptp.c | |
parent | 9528b9219348e0a013f4b587958a8ba9c96d7e20 (diff) |
sfc: Add and use MCDI_SET_QWORD() and MCDI_SET_ARRAY_QWORD()
No need to keep open-coding the assignment of high and low dwords.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/ptp.c')
-rw-r--r-- | drivers/net/ethernet/sfc/ptp.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/net/ethernet/sfc/ptp.c b/drivers/net/ethernet/sfc/ptp.c index 5612021d960a..d96bfc41c149 100644 --- a/drivers/net/ethernet/sfc/ptp.c +++ b/drivers/net/ethernet/sfc/ptp.c | |||
@@ -533,10 +533,8 @@ static int efx_ptp_synchronize(struct efx_nic *efx, unsigned int num_readings) | |||
533 | MCDI_SET_DWORD(synch_buf, PTP_IN_OP, MC_CMD_PTP_OP_SYNCHRONIZE); | 533 | MCDI_SET_DWORD(synch_buf, PTP_IN_OP, MC_CMD_PTP_OP_SYNCHRONIZE); |
534 | MCDI_SET_DWORD(synch_buf, PTP_IN_SYNCHRONIZE_NUMTIMESETS, | 534 | MCDI_SET_DWORD(synch_buf, PTP_IN_SYNCHRONIZE_NUMTIMESETS, |
535 | num_readings); | 535 | num_readings); |
536 | MCDI_SET_DWORD(synch_buf, PTP_IN_SYNCHRONIZE_START_ADDR_LO, | 536 | MCDI_SET_QWORD(synch_buf, PTP_IN_SYNCHRONIZE_START_ADDR, |
537 | (u32)ptp->start.dma_addr); | 537 | ptp->start.dma_addr); |
538 | MCDI_SET_DWORD(synch_buf, PTP_IN_SYNCHRONIZE_START_ADDR_HI, | ||
539 | (u32)((u64)ptp->start.dma_addr >> 32)); | ||
540 | 538 | ||
541 | /* Clear flag that signals MC ready */ | 539 | /* Clear flag that signals MC ready */ |
542 | ACCESS_ONCE(*start) = 0; | 540 | ACCESS_ONCE(*start) = 0; |
@@ -1378,9 +1376,7 @@ static int efx_phc_adjfreq(struct ptp_clock_info *ptp, s32 delta) | |||
1378 | (PPB_EXTRA_BITS + MAX_PPB_BITS)); | 1376 | (PPB_EXTRA_BITS + MAX_PPB_BITS)); |
1379 | 1377 | ||
1380 | MCDI_SET_DWORD(inadj, PTP_IN_OP, MC_CMD_PTP_OP_ADJUST); | 1378 | MCDI_SET_DWORD(inadj, PTP_IN_OP, MC_CMD_PTP_OP_ADJUST); |
1381 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_FREQ_LO, (u32)adjustment_ns); | 1379 | MCDI_SET_QWORD(inadj, PTP_IN_ADJUST_FREQ, adjustment_ns); |
1382 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_FREQ_HI, | ||
1383 | (u32)(adjustment_ns >> 32)); | ||
1384 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_SECONDS, 0); | 1380 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_SECONDS, 0); |
1385 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_NANOSECONDS, 0); | 1381 | MCDI_SET_DWORD(inadj, PTP_IN_ADJUST_NANOSECONDS, 0); |
1386 | rc = efx_mcdi_rpc(efx, MC_CMD_PTP, inadj, sizeof(inadj), | 1382 | rc = efx_mcdi_rpc(efx, MC_CMD_PTP, inadj, sizeof(inadj), |
@@ -1402,8 +1398,7 @@ static int efx_phc_adjtime(struct ptp_clock_info *ptp, s64 delta) | |||
1402 | MCDI_DECLARE_BUF(inbuf, MC_CMD_PTP_IN_ADJUST_LEN); | 1398 | MCDI_DECLARE_BUF(inbuf, MC_CMD_PTP_IN_ADJUST_LEN); |
1403 | 1399 | ||
1404 | MCDI_SET_DWORD(inbuf, PTP_IN_OP, MC_CMD_PTP_OP_ADJUST); | 1400 | MCDI_SET_DWORD(inbuf, PTP_IN_OP, MC_CMD_PTP_OP_ADJUST); |
1405 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_FREQ_LO, 0); | 1401 | MCDI_SET_QWORD(inbuf, PTP_IN_ADJUST_FREQ, 0); |
1406 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_FREQ_HI, 0); | ||
1407 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_SECONDS, (u32)delta_ts.tv_sec); | 1402 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_SECONDS, (u32)delta_ts.tv_sec); |
1408 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_NANOSECONDS, (u32)delta_ts.tv_nsec); | 1403 | MCDI_SET_DWORD(inbuf, PTP_IN_ADJUST_NANOSECONDS, (u32)delta_ts.tv_nsec); |
1409 | return efx_mcdi_rpc(efx, MC_CMD_PTP, inbuf, sizeof(inbuf), | 1404 | return efx_mcdi_rpc(efx, MC_CMD_PTP, inbuf, sizeof(inbuf), |