[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <9D02360A-8016-4BCB-B14A-DAFE22EF558E@halon.se>
Date: Thu, 3 Feb 2011 11:39:27 +0100
From: Anders Berggren <anders@...on.se>
To: John Ronciak <john.ronciak@...el.com>
Cc: e1000-devel@...ts.sourceforge.net, netdev@...r.kernel.org,
Patrick Ohly <patrick.ohly@...el.com>
Subject: [PATCH] fixing hw timestamping in igb
Hardware timestamping for Intel 82580 didn't work in either 2.6.36 or 2.6.37. Comparing it to Intel's igb-2.4.12 I found that the timecounter_init clock/counter initialization was done too early.
Anders Berggren
Halon Security
lab-slang-1:~# diff -u linux-2.6.37/drivers/net/igb/igb_main.c linux/drivers/net/igb/igb_main.c
--- linux-2.6.37/drivers/net/igb/igb_main.c 2011-02-03 10:02:53.000000000 +0100
+++ linux/drivers/net/igb/igb_main.c 2011-02-03 10:12:40.000000000 +0100
@@ -98,6 +98,7 @@
static void igb_setup_mrqc(struct igb_adapter *);
static int igb_probe(struct pci_dev *, const struct pci_device_id *);
static void __devexit igb_remove(struct pci_dev *pdev);
+static void igb_init_hw_timer(struct igb_adapter *adapter);
static int igb_sw_init(struct igb_adapter *);
static int igb_open(struct net_device *);
static int igb_close(struct net_device *);
@@ -1987,6 +1988,10 @@
}
#endif
+
+ /* do hw tstamp init after resetting */
+ igb_init_hw_timer(adapter);
+
dev_info(&pdev->dev, "Intel(R) Gigabit Ethernet Network Connection\n");
/* print bus type/speed/width info */
dev_info(&pdev->dev, "%s: (PCIe:%s:%s) %pM\n",
@@ -2301,7 +2306,6 @@
return -ENOMEM;
}
- igb_init_hw_timer(adapter);
igb_probe_vfs(adapter);
/* Explicitly disable IRQ since the NIC can be in any state. */
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists