From: YueHaibing Date: Fri, 27 Apr 2018 07:36:18 +0000 (+0800) Subject: ptp_pch: use helpers function for converting between ns and timespec X-Git-Tag: v4.18-rc1~114^2~357 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=80e95f472fade809daf8110861a5553fba98cfe5;p=thirdparty%2Fkernel%2Flinux.git ptp_pch: use helpers function for converting between ns and timespec use ns_to_timespec64() and timespec64_to_ns() instead of open coding Signed-off-by: YueHaibing Acked-by: Richard Cochran Signed-off-by: David S. Miller --- diff --git a/drivers/ptp/ptp_pch.c b/drivers/ptp/ptp_pch.c index b3285175f20f0..78ccf936d3560 100644 --- a/drivers/ptp/ptp_pch.c +++ b/drivers/ptp/ptp_pch.c @@ -452,7 +452,6 @@ static int ptp_pch_adjtime(struct ptp_clock_info *ptp, s64 delta) static int ptp_pch_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts) { u64 ns; - u32 remainder; unsigned long flags; struct pch_dev *pch_dev = container_of(ptp, struct pch_dev, caps); struct pch_ts_regs __iomem *regs = pch_dev->regs; @@ -461,8 +460,7 @@ static int ptp_pch_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts) ns = pch_systime_read(regs); spin_unlock_irqrestore(&pch_dev->register_lock, flags); - ts->tv_sec = div_u64_rem(ns, 1000000000, &remainder); - ts->tv_nsec = remainder; + *ts = ns_to_timespec64(ns); return 0; } @@ -474,8 +472,7 @@ static int ptp_pch_settime(struct ptp_clock_info *ptp, struct pch_dev *pch_dev = container_of(ptp, struct pch_dev, caps); struct pch_ts_regs __iomem *regs = pch_dev->regs; - ns = ts->tv_sec * 1000000000ULL; - ns += ts->tv_nsec; + ns = timespec64_to_ns(ts); spin_lock_irqsave(&pch_dev->register_lock, flags); pch_systime_write(regs, ns);