Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp299233pxv; Thu, 8 Jul 2021 02:52:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzoJNWv7WH6lfl8kj514D6yHv6m/Ve7r3KQcdq1CRQLGg45pd9czvblw5SQRflyNit6kexg X-Received: by 2002:a17:906:c113:: with SMTP id do19mr30239125ejc.541.1625737927641; Thu, 08 Jul 2021 02:52:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625737927; cv=none; d=google.com; s=arc-20160816; b=GUvvTmhlHXzm3QoZ3tBY7TxWdAaMW7WoBeu0DsOqTtoq+wGKLSBy0lp7SN+WhBbtaT /neRiH9bDOmqXE5QQSVT48F8Bj0/TlHteVdDpHfV22G+nJxy0S+oM2Xn2phR1SK91ITC JM+2xk93rYO5EUvtAtS8X8mPS9bbnD9e6HG0VuLaRLMDk8XqczUSLORKp9Xav+OjwU7Q owsQK45uSqdxf0MIsxiVfbQbdhWOQzfRXcWikfhkhTpgcgXUtlVr6VNOR5Oz6oU4PBKu aIJrMbJnCPfJChzJ0OQgAIFiaTxXjiN0PfrftM3pQStoq2/Dd55EYI7CDLVES1GDFhxQ 24Lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=Au9Aqy7RcM4vk2IVBeKlROvZapYtKqf1SfpQGN05OTs=; b=Ac9tnVkJTJ35chB1DD44D/iTJZj0u8C0Vnm3TdMPL+KcX+MtKooGyGDd6myEcBrGGq iDbvwSVhVQzinJx8HlM9EwZaBQDbXAMdjpBxAOJkYkg14FDuFUbBj9TVheRNDRRZekcY +8os2im0cXil064rAHgOXPys1C1tlWiW4mrq5vTVWDFMs8kGJpCr+eFuq0U2Ty6nGjFw yvCB/AB0jsPtl5pthDyNGo1jceBZoHH5WjY+s6UCQ6d3u0JfmXLuX9aXKc3HHggRzzu5 kATH99MocEcbC4cIxO9l0Njay/R/9Tl/ip1eFqHmJt+XNeOvbT/T4GXFaIevDWFJCyUa 0JXA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k8si2387068eds.398.2021.07.08.02.51.44; Thu, 08 Jul 2021 02:52:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231357AbhGHJv5 (ORCPT + 99 others); Thu, 8 Jul 2021 05:51:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42708 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230079AbhGHJv5 (ORCPT ); Thu, 8 Jul 2021 05:51:57 -0400 Received: from plekste.mt.lv (bute.mt.lv [IPv6:2a02:610:7501:2000::195]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 63B23C061574; Thu, 8 Jul 2021 02:49:15 -0700 (PDT) Received: from [2a02:610:7501:feff:1ccf:41ff:fe50:18b9] (helo=localhost.localdomain) by plekste.mt.lv with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.89) (envelope-from ) id 1m1Qea-0000RX-Dl; Thu, 08 Jul 2021 12:49:08 +0300 From: Gatis Peisenieks To: chris.snook@gmail.com, davem@davemloft.net, kuba@kernel.org, hkallweit1@gmail.com, jesse.brandeburg@intel.com, dchickles@marvell.com, tully@mikrotik.com, eric.dumazet@gmail.com Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Gatis Peisenieks Subject: [PATCH net] atl1c: fix Mikrotik 10/25G NIC detection Date: Thu, 8 Jul 2021 12:49:04 +0300 Message-Id: <20210708094904.3613365-1-gatis@mikrotik.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Since Mikrotik 10/25G NIC MDIO op emulation is not 100% reliable, on rare occasions it can happen that some physical functions of the NIC do not get initialized due to timeouted early MDIO op. This changes the atl1c probe on Mikrotik 10/25G NIC not to depend on MDIO op emulation. Signed-off-by: Gatis Peisenieks --- drivers/net/ethernet/atheros/atl1c/atl1c_hw.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_hw.c b/drivers/net/ethernet/atheros/atl1c/atl1c_hw.c index 7dff20350865..f19370c33444 100644 --- a/drivers/net/ethernet/atheros/atl1c/atl1c_hw.c +++ b/drivers/net/ethernet/atheros/atl1c/atl1c_hw.c @@ -594,6 +594,11 @@ int atl1c_phy_init(struct atl1c_hw *hw) int ret_val; u16 mii_bmcr_data = BMCR_RESET; + if (hw->nic_type == athr_mt) { + hw->phy_configured = true; + return 0; + } + if ((atl1c_read_phy_reg(hw, MII_PHYSID1, &hw->phy_id1) != 0) || (atl1c_read_phy_reg(hw, MII_PHYSID2, &hw->phy_id2) != 0)) { dev_err(&pdev->dev, "Error get phy ID\n"); -- 2.31.1