summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorMichael Riesch <michael@riesch.at>2011-09-29 08:06:26 +0400
committerDavid S. Miller <davem@davemloft.net>2011-09-29 22:46:49 +0400
commitf9b491ecc47ead6a57576a1a40cb27fd79835cc2 (patch)
tree277f0de83c3e3ccc1acdd83a18a189ecbfd5905a /drivers
parent7f5c6addcdc039c1a7c435857e6284ecac5d97c8 (diff)
downloadlinux-f9b491ecc47ead6a57576a1a40cb27fd79835cc2.tar.xz
usbnet: add timestamping support
In order to make USB-to-Ethernet-adapters (depending on usbnet) support timestamping, the "skb_defer_rx_timestamp" and "skb_tx_timestamp" function calls are added. Signed-off-by: Michael Riesch <michael@riesch.at> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/usb/usbnet.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
index ce395fe5de26..cdb958875ba4 100644
--- a/drivers/net/usb/usbnet.c
+++ b/drivers/net/usb/usbnet.c
@@ -238,6 +238,10 @@ void usbnet_skb_return (struct usbnet *dev, struct sk_buff *skb)
netif_dbg(dev, rx_status, dev->net, "< rx, len %zu, type 0x%x\n",
skb->len + sizeof (struct ethhdr), skb->protocol);
memset (skb->cb, 0, sizeof (struct skb_data));
+
+ if (skb_defer_rx_timestamp(skb))
+ return;
+
status = netif_rx (skb);
if (status != NET_RX_SUCCESS)
netif_dbg(dev, rx_err, dev->net,
@@ -1053,6 +1057,8 @@ netdev_tx_t usbnet_start_xmit (struct sk_buff *skb,
unsigned long flags;
int retval;
+ skb_tx_timestamp(skb);
+
// some devices want funky USB-level framing, for
// win32 driver (usually) and/or hardware quirks
if (info->tx_fixup) {