Commit d50566c7 authored by Takahiro Shimizu's avatar Takahiro Shimizu Committed by David S. Miller

pch_gbe: scale time stamps to nanoseconds

This patch fixes the helper functions that give the transmit and
receive time stamps to return nanoseconds, instead of arbitrary clock
ticks.

[ RC - Rebased Takahiro's changes and wrote a commit message
  explaining the changes. ]
Signed-off-by: default avatarTakahiro Shimizu <tshimizu818@gmail.com>
Signed-off-by: default avatarRichard Cochran <richardcochran@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5f568e5a
...@@ -101,8 +101,6 @@ const char pch_driver_version[] = DRV_VERSION; ...@@ -101,8 +101,6 @@ const char pch_driver_version[] = DRV_VERSION;
#ifdef CONFIG_PCH_PTP #ifdef CONFIG_PCH_PTP
/* Macros for ieee1588 */ /* Macros for ieee1588 */
#define TICKS_NS_SHIFT 5
/* 0x40 Time Synchronization Channel Control Register Bits */ /* 0x40 Time Synchronization Channel Control Register Bits */
#define MASTER_MODE (1<<0) #define MASTER_MODE (1<<0)
#define SLAVE_MODE (0<<0) #define SLAVE_MODE (0<<0)
...@@ -183,7 +181,6 @@ static void pch_rx_timestamp( ...@@ -183,7 +181,6 @@ static void pch_rx_timestamp(
goto out; goto out;
ns = pch_rx_snap_read(pdev); ns = pch_rx_snap_read(pdev);
ns <<= TICKS_NS_SHIFT;
shhwtstamps = skb_hwtstamps(skb); shhwtstamps = skb_hwtstamps(skb);
memset(shhwtstamps, 0, sizeof(*shhwtstamps)); memset(shhwtstamps, 0, sizeof(*shhwtstamps));
...@@ -226,7 +223,6 @@ static void pch_tx_timestamp( ...@@ -226,7 +223,6 @@ static void pch_tx_timestamp(
} }
ns = pch_tx_snap_read(pdev); ns = pch_tx_snap_read(pdev);
ns <<= TICKS_NS_SHIFT;
memset(&shhwtstamps, 0, sizeof(shhwtstamps)); memset(&shhwtstamps, 0, sizeof(shhwtstamps));
shhwtstamps.hwtstamp = ns_to_ktime(ns); shhwtstamps.hwtstamp = ns_to_ktime(ns);
......
...@@ -261,6 +261,7 @@ u64 pch_rx_snap_read(struct pci_dev *pdev) ...@@ -261,6 +261,7 @@ u64 pch_rx_snap_read(struct pci_dev *pdev)
ns = ((u64) hi) << 32; ns = ((u64) hi) << 32;
ns |= lo; ns |= lo;
ns <<= TICKS_NS_SHIFT;
return ns; return ns;
} }
...@@ -277,6 +278,7 @@ u64 pch_tx_snap_read(struct pci_dev *pdev) ...@@ -277,6 +278,7 @@ u64 pch_tx_snap_read(struct pci_dev *pdev)
ns = ((u64) hi) << 32; ns = ((u64) hi) << 32;
ns |= lo; ns |= lo;
ns <<= TICKS_NS_SHIFT;
return ns; return ns;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment