From patchwork Thu Feb 16 18:42:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bernd Faust X-Patchwork-Id: 728870 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3vPQ4h6GP8z9s06 for ; Fri, 17 Feb 2017 05:42:28 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="vLXbbWKc"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933633AbdBPSmW (ORCPT ); Thu, 16 Feb 2017 13:42:22 -0500 Received: from mail-wm0-f68.google.com ([74.125.82.68]:32872 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933578AbdBPSmU (ORCPT ); Thu, 16 Feb 2017 13:42:20 -0500 Received: by mail-wm0-f68.google.com with SMTP id v77so4489528wmv.0; Thu, 16 Feb 2017 10:42:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=fKBjT+DIacPPAnUWEobtFxCSEvmsCGGml/tSPhM4QOE=; b=vLXbbWKccC+S89G0itJol1lM15o6T+v6a6gjAFQ8wW3IWyPR1brjXvnjVhSv5RTf9q hXM4+nmvG3sl2rKCtiOxlst5vlQHN7FyyZJoOhtjD8LXb6BTgZQu3nW7N/OgF1dkou7s 9tEtmyp84ThLgxAoM5xoGQVZ68KWXxG3FxUIpqLvjUumv/fd4gA4F+bXiotFDKhjwFkH tyzpmUj+zU5mo6OaQtj5l7Bu7v+Le+aZLON3B6uKPRAkMFKsbPtT/pWX1NVXdQJQ2kMz 97iKaanj5JeQNNLvRsHogQStXcttOR+tlt2fT4nqjdt4uti4nKNiUpr6YxhWmebJ1UpU KWKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=fKBjT+DIacPPAnUWEobtFxCSEvmsCGGml/tSPhM4QOE=; b=t2wJkfagDitrreEQR0rSXEsGPQbRtVcVTY5qPvUdEdQpvTWo2iiAQozxOO+FQi/0az amSBzX5HeO+Us5/et4NjZDgahdGxk8vSNxd0VqESuavqye75X+2fZVV5I0qB4ki3c/eK yHfqCu/bYhFfCPGsP3bljd0qAD9B2WBNqtkmmIEpB3HvVxYm43+qNP5gVScIOAcp9IC3 AwdkS607InZ6HqwKBnumlTIxTTwO07YlMoE3rBihhoFehb4CHAReIr+TFz79RAgikdQh SHsoSQywIEeELoc3DCUmfWSeraJgk3j4MGCV3iGEfKFLTn18g5FbPH93o5ehvgdq+29z dU1Q== X-Gm-Message-State: AMke39ms/u9zjPfpe/vwYjetf4Y88V4AsaLINuNk8W4M9MWkhIhMQVtfOMK8n//c3oNPsw== X-Received: by 10.28.23.66 with SMTP id 63mr3758755wmx.46.1487270538461; Thu, 16 Feb 2017 10:42:18 -0800 (PST) Received: from bfa-laptop.Speedport_W_724V_Typ_A_05011603_00_011 (p200300C5B3DEF76990FDF5202FC7C6F4.dip0.t-ipconnect.de. [2003:c5:b3de:f769:90fd:f520:2fc7:c6f4]) by smtp.gmail.com with ESMTPSA id z10sm1200290wmg.31.2017.02.16.10.42.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 16 Feb 2017 10:42:17 -0800 (PST) From: Bernd Faust To: Jeff Kirsher , Yanir Lubetkin , intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Bernd Faust Subject: [PATCH] e1000e: fix timing for 82579 Gigabit Ethernet controller Date: Thu, 16 Feb 2017 19:42:07 +0100 Message-Id: <1487270527-4549-1-git-send-email-berndfaust@gmail.com> X-Mailer: git-send-email 2.7.4 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org After an upgrade to Linux kernel v4.x the hardware timestamps of the 82579 Gigabit Ethernet Controller are different than expected. The values that are being read are almost four times as big as before the kernel upgrade. The difference is that after the upgrade the driver sets the clock frequency to 25MHz, where before the upgrade it was set to 96MHz. Intel confirmed that the correct frequency for this network adapter is 96MHz. Signed-off-by: Bernd Faust Tested-by: Aaron Brown --- drivers/net/ethernet/intel/e1000e/netdev.c | 6 ++++++ 1 file changed, 6 insertions(+) -- 2.7.4 diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c index 7017281..8b7113d 100644 --- a/drivers/net/ethernet/intel/e1000e/netdev.c +++ b/drivers/net/ethernet/intel/e1000e/netdev.c @@ -3511,6 +3511,12 @@ s32 e1000e_get_base_timinca(struct e1000_adapter *adapter, u32 *timinca) switch (hw->mac.type) { case e1000_pch2lan: + /* Stable 96MHz frequency */ + incperiod = INCPERIOD_96MHz; + incvalue = INCVALUE_96MHz; + shift = INCVALUE_SHIFT_96MHz; + adapter->cc.shift = shift + INCPERIOD_SHIFT_96MHz; + break; case e1000_pch_lpt: if (er32(TSYNCRXCTL) & E1000_TSYNCRXCTL_SYSCFI) { /* Stable 96MHz frequency */