Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp6316580ybi; Mon, 8 Jul 2019 00:59:10 -0700 (PDT) X-Google-Smtp-Source: APXvYqz0xrhMwiqok0t4YGLM77tV+bG0ayzGid1g5daR9fK6Efy3Yy4UZbVqFvBiNvoh7/pU+E/M X-Received: by 2002:a65:6294:: with SMTP id f20mr12301989pgv.349.1562572749842; Mon, 08 Jul 2019 00:59:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562572749; cv=none; d=google.com; s=arc-20160816; b=wrlrtlSkuRkjAxkGBRQx8rBlwXRAenmZaJQjE7oAgfnhfZ9bj90VQ8zP6XDB2xhHX1 HX90V20nbd6OrRWL+Pb38eUIPbq0DiJZu5xpbNpN9h1VfL7KPOrQRBYKEkR9Pnz/0vw6 VDMRPordLzFfwiiUBVyB6WCBu7CAtRgOZqKpqE676msAOgjALY6J4PM+jA7Ul0ZVBY+R 92xUuKITrEzSsGnRMnZ+uiJn78Cq0WsxdlCjsH8D++z0pJiwI/kmWUCjperTX0xhMIQ/ nhUs9mOZ4isOY70kKLsZ5K0X22cNgh8pcqCx3cbrHN/s0lNS1T3QqqYELg7/bdZtsF9F B2zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=I1VcKoaxY62cy1iVQUEXvON7Kk9+eme7y17tTLySKFs=; b=bTIyT6YCtYe5G97MGeSP3RDNT5ln5Okn2jk40agRZtpIHaYogkHzndtgIPvf1bPAxs tXEMvUb6CuoTNxuF8lsm6NDxvtV+M+KV4OfIwvJa6DKBKLR2u2vNFS8eg0uoFxms/TwI ykzH7/tB4C00jnPOqTMBYkehljOWvcpdE6D4+ksaGMlxi39u0Dxxv/Puqykv/hOG0wS/ uf822Qhu4nKH+eiSgeJHUchYdchghkF9xDa6Q0YBPv5bl3Y/q1Y5L3t8QdwMOKTQekbV MQ89XHRoM4nqVQkW8HCHHXaVpJk2AJ1V6tf0f5lXVARa98X6XoNQAOx8LFT65VwmcAl/ oADw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d31si17314121pla.84.2019.07.08.00.58.54; Mon, 08 Jul 2019 00:59:09 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728391AbfGHEz7 (ORCPT + 99 others); Mon, 8 Jul 2019 00:55:59 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:55111 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727352AbfGHEz6 (ORCPT ); Mon, 8 Jul 2019 00:55:58 -0400 Received: from 61-220-137-37.hinet-ip.hinet.net ([61.220.137.37] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.76) (envelope-from ) id 1hkLgw-000317-8W; Mon, 08 Jul 2019 04:55:54 +0000 From: Kai-Heng Feng To: jeffrey.t.kirsher@intel.com Cc: sasha.neftin@intel.com, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Kai-Heng Feng Subject: [PATCH 2/2] e1000e: disable force K1-off feature Date: Mon, 8 Jul 2019 12:55:46 +0800 Message-Id: <20190708045546.30160-2-kai.heng.feng@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190708045546.30160-1-kai.heng.feng@canonical.com> References: <20190708045546.30160-1-kai.heng.feng@canonical.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Forwardport from http://mails.dpdk.org/archives/dev/2016-November/050658.html MAC-PHY desync may occur causing misdetection of link up event. Disabling K1-off feature can work around the problem. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204057 Signed-off-by: Kai-Heng Feng --- drivers/net/ethernet/intel/e1000e/hw.h | 1 + drivers/net/ethernet/intel/e1000e/ich8lan.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/drivers/net/ethernet/intel/e1000e/hw.h b/drivers/net/ethernet/intel/e1000e/hw.h index eff75bd8a8f0..e3c71fd093ee 100644 --- a/drivers/net/ethernet/intel/e1000e/hw.h +++ b/drivers/net/ethernet/intel/e1000e/hw.h @@ -662,6 +662,7 @@ struct e1000_dev_spec_ich8lan { bool kmrn_lock_loss_workaround_enabled; struct e1000_shadow_ram shadow_ram[E1000_ICH8_SHADOW_RAM_WORDS]; bool nvm_k1_enabled; + bool disable_k1_off; bool eee_disable; u16 eee_lp_ability; enum e1000_ulp_state ulp_state; diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c index 56f88a4e538c..c1e0e03dc5cb 100644 --- a/drivers/net/ethernet/intel/e1000e/ich8lan.c +++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c @@ -1538,6 +1538,9 @@ static s32 e1000_check_for_copper_link_ich8lan(struct e1000_hw *hw) fextnvm6 &= ~E1000_FEXTNVM6_K1_OFF_ENABLE; } + if (hw->dev_spec.ich8lan.disable_k1_off == true) + fextnvm6 &= ~E1000_FEXTNVM6_K1_OFF_ENABLE; + ew32(FEXTNVM6, fextnvm6); } -- 2.17.1