]> git.baikalelectronics.ru Git - kernel.git/commit
net: stmmac: fixed new system time seconds value calculation
authorRoland Hii <roland.king.guan.hii@intel.com>
Wed, 19 Jun 2019 14:13:48 +0000 (22:13 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sat, 22 Jun 2019 23:16:23 +0000 (16:16 -0700)
commite159d21cd3ecc6438ea26337a8d751d1bcd9381b
tree8a00323ec0eaa3a272a61aaeb5389d57ae28d54e
parentbccecd180539104403e265d1011f6303fe0478b3
net: stmmac: fixed new system time seconds value calculation

When ADDSUB bit is set, the system time seconds field is calculated as
the complement of the seconds part of the update value.

For example, if 3.000000001 seconds need to be subtracted from the
system time, this field is calculated as
2^32 - 3 = 4294967296 - 3 = 0x100000000 - 3 = 0xFFFFFFFD

Previously, the 0x100000000 is mistakenly written as 100000000.

This is further simplified from
  sec = (0x100000000ULL - sec);
to
  sec = -sec;

Fixes: 1fef308879cc ("stmmac: fix PTP support for GMAC4")
Signed-off-by: Roland Hii <roland.king.guan.hii@intel.com>
Signed-off-by: Ong Boon Leong <boon.leong.ong@intel.com>
Signed-off-by: Voon Weifeng <weifeng.voon@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_hwtstamp.c