Lines Matching defs:ns
30 /* Full wrap around is 44bits in ns (~4.887 hrs) */
52 static void dte_write_nco(void __iomem *regs, s64 ns)
56 sum2 = (u32)((ns >> DTE_NCO_SUM2_SHIFT) & DTE_NCO_SUM2_MASK);
62 sum3 = (u32)(((ns >> DTE_NCO_SUM3_SHIFT) & DTE_NCO_SUM3_MASK) <<
73 s64 ns;
76 * ignoring sum1 (4 bits) gives a 16ns resolution, which
81 ns = ((s64)sum3 << DTE_NCO_SUM3_SHIFT) |
84 return ns;
89 s64 ns;
91 ns = dte_read_nco(ptp_dte->regs);
94 if ((delta < 0) && (abs(delta) > ns)) {
96 ns += DTE_NCO_MAX_NS + delta;
99 ns = 0;
102 ns += delta;
103 if (ns > DTE_NCO_MAX_NS) {
105 ns -= DTE_NCO_MAX_NS;
109 dte_write_nco(ptp_dte->regs, ns);
111 ptp_dte->ts_ovf_last = (ns >> DTE_NCO_TS_WRAP_LSHIFT) &
118 s64 ns = 0;
120 ns = dte_read_nco(ptp_dte->regs);
123 ts_ovf = (ns >> DTE_NCO_TS_WRAP_LSHIFT) & DTE_NCO_TS_WRAP_MASK;
132 ns += (s64)(BIT_ULL(DTE_WRAP_AROUND_NSEC_SHIFT) * ptp_dte->ts_wrap_cnt);
134 return ns;