From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BBE9C282C4 for ; Mon, 4 Feb 2019 21:09:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 4920C20815 for ; Mon, 4 Feb 2019 21:09:21 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="fXNVHVC3" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729301AbfBDVJU (ORCPT ); Mon, 4 Feb 2019 16:09:20 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:53707 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728413AbfBDVJT (ORCPT ); Mon, 4 Feb 2019 16:09:19 -0500 Received: by mail-wm1-f67.google.com with SMTP id d15so1408156wmb.3 for ; Mon, 04 Feb 2019 13:09:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=e8IHMSDrgRC5gTYDh19HL5eCnOYv+LrcFnvvywtfm1Y=; b=fXNVHVC3NT1geBwCsEXF+hs7zS37yjyaINTbZ1+7txKW0rbHr2EIVxUrnQg2F6QKdy 0YTFlFB/J7iqeQCKDWoWe6HZrjLRnmN8KhRUCnE+GoUzXel77EkyIZ5hlMUw65fNLL/B u+DbXwRt6403h0sMHSApbdMA90U3wLO8u614p5b5zV0nyTf263f6u6wGIUz+61LRl/dN 7FV7ZGk49QcQ3w+b24YGrB5OBP9W6K4jRtoC43goIvzEJNqPJ8t8lYlZxOM22v2DFRAV 0onwOKdH8HrJvfNC1ZdHA/ls1CRU018LVoaO4hdX82nRRL5X7oozeCVnPe9NEfywaZiB 63Zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=e8IHMSDrgRC5gTYDh19HL5eCnOYv+LrcFnvvywtfm1Y=; b=WhYhkTRndcrx1ZWKpA6f9N0PEgToL+fL5WNZn0K/qzpn2qssO1ipj8j/x0GhZ0GzDI pNTTJMBIpdiLPW1fB8zytecX+hW5qm9wfubA/mEZ011UkaTFoyK2Ewpqwiepo+/SAH2w e8nbFAeDouSgGJ1HIGYtxho6RZFyQjymjvubnTKma8NddKRunB23Uxy3JfXPYnXhq8UN 0K9uQ5gODmesyeNlPi3j17s5smA/QB+ZRP5vLSZuzQhzjwI0k9jKEK/5Zr7XwMCvqn1i rkCHCfUkUzCEcUEN/k2TLVTC3TVh8HAeyfsQ0P00vNR57zVZEg2Tjr9tFklSvzREmnNv RliA== X-Gm-Message-State: AHQUAuarFtVkJgDX4FUNtqbFCsMYwMjmIWJ8joj+JHp8QrUwfUz25Ja6 y7AZy3eG0iDkL67980ZHEN7CSIex X-Google-Smtp-Source: AHgI3IZit1xEShwsz+1pVDLLDMpZ8/54fqua1a0wjSKEqTbeAbg6XFRRWukRC4Mf4fGG8f8PFpub8A== X-Received: by 2002:a1c:2d08:: with SMTP id t8mr992377wmt.5.1549314556353; Mon, 04 Feb 2019 13:09:16 -0800 (PST) Received: from ?IPv6:2003:ea:8bf1:e200:79d1:9f16:256f:82a8? (p200300EA8BF1E20079D19F16256F82A8.dip0.t-ipconnect.de. [2003:ea:8bf1:e200:79d1:9f16:256f:82a8]) by smtp.googlemail.com with ESMTPSA id c65sm14191307wma.24.2019.02.04.13.09.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Feb 2019 13:09:15 -0800 (PST) Subject: [PATCH 2/3 net-next] net: phy: aquantia: set interface mode in aqr_read_status From: Heiner Kallweit To: Andrew Lunn , Florian Fainelli , David Miller Cc: Nikita Yushchenko , "netdev@vger.kernel.org" References: <8e41695d-a23e-adad-ae3d-66a46d1ab077@gmail.com> Message-ID: <0876da7c-e0cf-c702-75ce-6aa37eb028b2@gmail.com> Date: Mon, 4 Feb 2019 22:07:36 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <8e41695d-a23e-adad-ae3d-66a46d1ab077@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Extend aqr_read_status to set the interface mode properly. Signed-off-by: Nikita Yushchenko Signed-off-by: Andrew Lunn Signed-off-by: Heiner Kallweit --- drivers/net/phy/aquantia.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c index 51ae3feea..281873c59 100644 --- a/drivers/net/phy/aquantia.c +++ b/drivers/net/phy/aquantia.c @@ -11,6 +11,7 @@ #include #include #include +#include #define PHY_ID_AQ1202 0x03a1b445 #define PHY_ID_AQ2104 0x03a1b460 @@ -34,6 +35,21 @@ #define MDIO_AN_TX_VEND_INT_MASK2 0xd401 #define MDIO_AN_TX_VEND_INT_MASK2_LINK BIT(0) +/* PHY XS System Interface Connection Status */ +#define MDIO_XS_SYSIF_STATUS 0xe812 +#define MDIO_XS_SYSIF_MODE_MASK GENMASK(7, 3) +#define MDIO_XS_SYSIF_MODE_BACKPLANE_KR 0 +#define MDIO_XS_SYSIF_MODE_BACKPLANE_KX 1 +#define MDIO_XS_SYSIF_MODE_XFI 2 +#define MDIO_XS_SYSIF_MODE_USXGMII 3 +#define MDIO_XS_SYSIF_MODE_XAUI 4 +#define MDIO_XS_SYSIF_MODE_XAUI_PAUSE 5 +#define MDIO_XS_SYSIF_MODE_SGMII 6 +#define MDIO_XS_SYSIF_MODE_RXAUI 7 +#define MDIO_XS_SYSIF_MODE_MAC 8 +#define MDIO_XS_SYSIF_MODE_OFF 9 +#define MDIO_XS_SYSIF_MODE_OCSGMII 10 + /* Vendor specific 1, MDIO_MMD_VEND1 */ #define VEND1_GLOBAL_INT_STD_STATUS 0xfc00 #define VEND1_GLOBAL_INT_VEND_STATUS 0xfc01 @@ -158,6 +174,27 @@ static int aqr_read_status(struct phy_device *phydev) phydev->duplex = !!(reg & MDIO_AN_TX_VEND_STATUS1_FULL_DUPLEX); + reg = phy_read_mmd(phydev, MDIO_MMD_PHYXS, MDIO_XS_SYSIF_STATUS); + + switch (FIELD_GET(MDIO_XS_SYSIF_MODE_MASK, reg)) { + case MDIO_XS_SYSIF_MODE_BACKPLANE_KR: + phydev->interface = PHY_INTERFACE_MODE_10GKR; + break; + case MDIO_XS_SYSIF_MODE_SGMII: + phydev->interface = PHY_INTERFACE_MODE_SGMII; + break; + case MDIO_XS_SYSIF_MODE_XAUI: + case MDIO_XS_SYSIF_MODE_XAUI_PAUSE: + phydev->interface = PHY_INTERFACE_MODE_XAUI; + break; + case MDIO_XS_SYSIF_MODE_RXAUI: + phydev->interface = PHY_INTERFACE_MODE_RXAUI; + break; + default: + phydev->interface = PHY_INTERFACE_MODE_NA; + break; + } + return 0; } -- 2.20.1