Home
last modified time | relevance | path

Searched refs:scaled_ppm (Results 1 – 25 of 68) sorted by relevance

123

/linux/include/linux/
H A Dptp_clock_kernel.h204 int (*adjfine)(struct ptp_clock_info *ptp, long scaled_ppm);
298 static inline bool diff_by_scaled_ppm(u64 base, long scaled_ppm, u64 *diff) in diff_by_scaled_ppm() argument
302 if (scaled_ppm < 0) { in diff_by_scaled_ppm()
304 scaled_ppm = -scaled_ppm; in diff_by_scaled_ppm()
307 *diff = mul_u64_u64_div_u64(base, (u64)scaled_ppm, 1000000ULL << 16); in diff_by_scaled_ppm()
320 static inline u64 adjust_by_scaled_ppm(u64 base, long scaled_ppm) in adjust_by_scaled_ppm() argument
324 if (diff_by_scaled_ppm(base, scaled_ppm, &diff)) in adjust_by_scaled_ppm()
/linux/drivers/net/ethernet/renesas/
H A Drcar_gen4_ptp.c38 static int rcar_gen4_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in rcar_gen4_ptp_adjfine() argument
42 bool neg_adj = scaled_ppm < 0; in rcar_gen4_ptp_adjfine()
46 scaled_ppm = -scaled_ppm; in rcar_gen4_ptp_adjfine()
47 diff = div_s64(addend * scaled_ppm_to_ppb(scaled_ppm), NSEC_PER_SEC); in rcar_gen4_ptp_adjfine()
/linux/drivers/net/ethernet/engleder/
H A Dtsnep_ptp.c72 static int tsnep_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in tsnep_ptp_adjfine() argument
79 if (scaled_ppm < 0) { in tsnep_ptp_adjfine()
80 scaled_ppm = -scaled_ppm; in tsnep_ptp_adjfine()
88 rate_offset = scaled_ppm; in tsnep_ptp_adjfine()
/linux/drivers/net/ethernet/cavium/common/
H A Dcavium_ptp.c93 static int cavium_ptp_adjfine(struct ptp_clock_info *ptp_info, long scaled_ppm) in cavium_ptp_adjfine() argument
102 if (scaled_ppm < 0) { in cavium_ptp_adjfine()
104 scaled_ppm = -scaled_ppm; in cavium_ptp_adjfine()
123 adj = comp * scaled_ppm; in cavium_ptp_adjfine()
/linux/drivers/net/ethernet/marvell/mvpp2/
H A Dmvpp2_tai.c164 static int mvpp22_tai_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in mvpp22_tai_adjfine() argument
173 neg_adj = scaled_ppm < 0; in mvpp22_tai_adjfine()
175 scaled_ppm = -scaled_ppm; in mvpp22_tai_adjfine()
177 val = mvpp22_calc_frac_ppm(tai, scaled_ppm); in mvpp22_tai_adjfine()
/linux/drivers/net/ethernet/microchip/sparx5/
H A Dsparx5_ptp.c396 static int sparx5_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in sparx5_ptp_adjfine() argument
405 if (!scaled_ppm) in sparx5_ptp_adjfine()
408 if (scaled_ppm < 0) { in sparx5_ptp_adjfine()
410 scaled_ppm = -scaled_ppm; in sparx5_ptp_adjfine()
419 ref = sparx5_ptp_get_1ppm(sparx5) * (scaled_ppm >> 16); in sparx5_ptp_adjfine()
420 ref += (sparx5_ptp_get_1ppm(sparx5) * (0xffff & scaled_ppm)) >> 16; in sparx5_ptp_adjfine()
/linux/drivers/net/dsa/hirschmann/
H A Dhellcreek_ptp.c132 static int hellcreek_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in hellcreek_ptp_adjfine() argument
139 if (scaled_ppm < 0) { in hellcreek_ptp_adjfine()
141 scaled_ppm = -scaled_ppm; in hellcreek_ptp_adjfine()
156 adj = scaled_ppm; in hellcreek_ptp_adjfine()
/linux/drivers/net/ethernet/cadence/
H A Dmacb_ptp.c124 static int gem_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in gem_ptp_adjfine() argument
132 if (scaled_ppm < 0) { in gem_ptp_adjfine()
134 scaled_ppm = -scaled_ppm; in gem_ptp_adjfine()
143 adj = (u64)scaled_ppm * word; in gem_ptp_adjfine()
/linux/drivers/net/ethernet/marvell/octeontx2/af/
H A Dptp.c312 static int ptp_adjfine(struct ptp *ptp, long scaled_ppm) in ptp_adjfine() argument
319 if (scaled_ppm < 0) { in ptp_adjfine()
321 scaled_ppm = -scaled_ppm; in ptp_adjfine()
339 ppb = 1 + scaled_ppm; in ptp_adjfine()
636 err = ptp_adjfine(rvu->ptp, req->scaled_ppm); in rvu_mbox_handler_ptp_op()
/linux/drivers/net/dsa/mv88e6xxx/
H A Dptp.c243 static int mv88e6xxx_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in mv88e6xxx_ptp_adjfine() argument
250 if (scaled_ppm < 0) { in mv88e6xxx_ptp_adjfine()
252 scaled_ppm = -scaled_ppm; in mv88e6xxx_ptp_adjfine()
257 adj *= scaled_ppm; in mv88e6xxx_ptp_adjfine()
/linux/drivers/ptp/
H A Dptp_mock.c49 static int mock_phc_adjfine(struct ptp_clock_info *info, long scaled_ppm) in mock_phc_adjfine() argument
54 adj = (s64)scaled_ppm << MOCK_PHC_FADJ_SHIFT; in mock_phc_adjfine()
H A Dptp_qoriq.c202 int ptp_qoriq_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in ptp_qoriq_adjfine() argument
210 if (scaled_ppm < 0) { in ptp_qoriq_adjfine()
212 scaled_ppm = -scaled_ppm; in ptp_qoriq_adjfine()
223 diff = mul_u64_u64_div_u64(adj, scaled_ppm, 32768000000); in ptp_qoriq_adjfine()
H A Dptp_idt82p33.c523 static int _idt82p33_adjfine(struct idt82p33_channel *channel, long scaled_ppm) in _idt82p33_adjfine() argument
544 fcw = scaled_ppm * 762939453125ULL; in _idt82p33_adjfine()
566 s64 scaled_ppm = div_s64(((s64)ddco_ppb << 13), 125); in idt82p33_ddco_scaled_ppm() local
569 current_ppm += scaled_ppm; in idt82p33_ddco_scaled_ppm()
1010 static int idt82p33_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in idt82p33_adjfine() argument
1020 if (scaled_ppm == channel->current_freq) in idt82p33_adjfine()
1024 err = _idt82p33_adjfine(channel, scaled_ppm); in idt82p33_adjfine()
1027 channel->current_freq = scaled_ppm; in idt82p33_adjfine()
H A Dptp_dte.c137 static int ptp_dte_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in ptp_dte_adjfine() argument
139 s32 ppb = scaled_ppm_to_ppb(scaled_ppm); in ptp_dte_adjfine()
/linux/drivers/net/wireless/intel/iwlwifi/mld/
H A Dptp.c144 static int iwl_mld_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in iwl_mld_ptp_adjfine() argument
172 data->scaled_freq = PTP_SCALE_FACTOR + scaled_ppm; in iwl_mld_ptp_adjfine()
174 scaled_ppm, (unsigned long long)data->scaled_freq); in iwl_mld_ptp_adjfine()
/linux/drivers/net/wireless/intel/iwlwifi/mvm/
H A Dptp.c244 static int iwl_mvm_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in iwl_mvm_ptp_adjfine() argument
264 data->scaled_freq = SCALE_FACTOR + scaled_ppm; in iwl_mvm_ptp_adjfine()
266 scaled_ppm, (unsigned long long)data->scaled_freq); in iwl_mvm_ptp_adjfine()
/linux/drivers/net/ethernet/microchip/lan966x/
H A Dlan966x_ptp.c622 static int lan966x_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in lan966x_ptp_adjfine() argument
631 if (!scaled_ppm) in lan966x_ptp_adjfine()
634 if (scaled_ppm < 0) { in lan966x_ptp_adjfine()
636 scaled_ppm = -scaled_ppm; in lan966x_ptp_adjfine()
645 ref = LAN966X_1PPM_FORMAT * (scaled_ppm >> 16); in lan966x_ptp_adjfine()
646 ref += (LAN966X_1PPM_FORMAT * (0xffff & scaled_ppm)) >> 16; in lan966x_ptp_adjfine()
/linux/drivers/net/ethernet/amd/xgbe/
H A Dxgbe-ptp.c16 static int xgbe_adjfine(struct ptp_clock_info *info, long scaled_ppm) in xgbe_adjfine() argument
24 addend = adjust_by_scaled_ppm(pdata->tstamp_addend, scaled_ppm); in xgbe_adjfine()
/linux/drivers/net/ethernet/mscc/
H A Docelot_ptp.c138 int ocelot_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in ocelot_ptp_adjfine() argument
147 if (!scaled_ppm) in ocelot_ptp_adjfine()
150 if (scaled_ppm < 0) { in ocelot_ptp_adjfine()
152 scaled_ppm = -scaled_ppm; in ocelot_ptp_adjfine()
156 do_div(adj, scaled_ppm); in ocelot_ptp_adjfine()
/linux/drivers/net/phy/
H A Dmicrochip_rds_ptp.c755 long scaled_ppm) in mchp_rds_ptp_ltc_adjfine() argument
765 if (!scaled_ppm) in mchp_rds_ptp_ltc_adjfine()
768 if (scaled_ppm < 0) { in mchp_rds_ptp_ltc_adjfine()
769 scaled_ppm = -scaled_ppm; in mchp_rds_ptp_ltc_adjfine()
773 rate = MCHP_RDS_PTP_1PPM_FORMAT * (upper_16_bits(scaled_ppm)); in mchp_rds_ptp_ltc_adjfine()
774 rate += (MCHP_RDS_PTP_1PPM_FORMAT * (lower_16_bits(scaled_ppm))) >> 16; in mchp_rds_ptp_ltc_adjfine()
H A Dbcm-phy-ptp.c344 static int bcm_ptp_adjfine(struct ptp_clock_info *info, long scaled_ppm) in bcm_ptp_adjfine() argument
352 if (scaled_ppm < 0) { in bcm_ptp_adjfine()
354 scaled_ppm = -scaled_ppm; in bcm_ptp_adjfine()
357 adj = scaled_ppm << 9; in bcm_ptp_adjfine()
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Den_clock.c128 static int mlx4_en_phc_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in mlx4_en_phc_adjfine() argument
135 mult = (u32)adjust_by_scaled_ppm(mdev->nominal_c_mult, scaled_ppm); in mlx4_en_phc_adjfine()
/linux/drivers/net/ethernet/meta/fbnic/
H A Dfbnic_time.c107 static int fbnic_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in fbnic_ptp_adjfine() argument
115 addend = adjust_by_scaled_ppm(dclk_period, scaled_ppm); in fbnic_ptp_adjfine()
/linux/drivers/net/ethernet/xscale/
H A Dptp_ixp46x.c123 static int ptp_ixp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm) in ptp_ixp_adjfine() argument
129 addend = adjust_by_scaled_ppm(DEFAULT_ADDEND, scaled_ppm); in ptp_ixp_adjfine()
/linux/include/soc/mscc/
H A Docelot_ptp.h52 int ocelot_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm);

123