From patchwork Wed Mar 14 05:04:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Manlunas, Felix" X-Patchwork-Id: 885613 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=cavium.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=CAVIUMNETWORKS.onmicrosoft.com header.i=@CAVIUMNETWORKS.onmicrosoft.com header.b="e6JonmKt"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 401KQw2PNBz9sDQ for ; Wed, 14 Mar 2018 16:04:56 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753240AbeCNFEx (ORCPT ); Wed, 14 Mar 2018 01:04:53 -0400 Received: from mail-cys01nam02on0088.outbound.protection.outlook.com ([104.47.37.88]:51520 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750902AbeCNFEv (ORCPT ); Wed, 14 Mar 2018 01:04:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=FzroiNslq1imV3fdAokQdUQVB/KI1SikuMueqzOQg1o=; b=e6JonmKtzx3TicEwaMm64yhfL7H2Bl1R5n7gW1BG7JUyevbO8zrlu8G5QFpe59tFPgvYK/80nsQITbTXfEx9jhgDF+wD4xzV+CKRp070FUZAGibjfuzljA8iHadEc5cS7PhWMfiAghPhZFh6TdRa//6cMabNEYbBioAu/bekRPc= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Felix.Manlunas@cavium.com; Received: from localhost (50.233.148.156) by BN7PR07MB4212.namprd07.prod.outlook.com (2603:10b6:406:b2::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.567.14; Wed, 14 Mar 2018 05:04:48 +0000 Date: Tue, 13 Mar 2018 22:04:45 -0700 From: Felix Manlunas To: davem@davemloft.net Cc: netdev@vger.kernel.org, raghu.vatsavayi@cavium.com, derek.chickles@cavium.com, satananda.burla@cavium.com, felix.manlunas@cavium.com, veerasenareddy.burru@cavium.com Subject: [PATCH net-next] liquidio: Add support for liquidio 10GBase-T NIC Message-ID: <20180314050445.GA8221@felix-thinkpad.cavium.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.6.1 (2016-04-27) X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: BYAPR07CA0010.namprd07.prod.outlook.com (2603:10b6:a02:bc::23) To BN7PR07MB4212.namprd07.prod.outlook.com (2603:10b6:406:b2::16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3cba0c9f-8c62-4e1b-1916-08d589691c95 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:BN7PR07MB4212; X-Microsoft-Exchange-Diagnostics: 1; BN7PR07MB4212; 3:9vq+79kItob6H2B8IqGN+/gwm1iDMYN2Zkp3aTsrYTlf1O+oDcUGkviHCm4QM8skQkK55gKqLmWQjd7CsPO2bfLnmaC/W0q+6HRq3LxVOOCRNNGdcFq3DX102CT9SB5DQh0RT2xzgUOXnn4LH7JU8OrUvAlJih7/3UoIVal5mhUIXoCaoWU0VuCtstFHXp0BZ9KsxP5Ky57tsm4CmzCLVffbLIATy3F4cFbpV17zC85py53VdZziWCj+LvfOrv50; 25:n+KZ7oqHMQtGU1y1lqeOSN0f8WHjr4ytHVu0NKmSa26DpsLdFUQ2zr3fhuzVATMl99ipOWMlvpBD3hz0zA+bzLM3Zy51iPkro2TYZcLdfkb65Ppjp85e0tQishrqAeR41EWSXa7sNFng5wyy0U3RnbIVsTvnlZu/Zwj5oTjbw4jQ+7lgOt6Z3x4E1P3yV//xgB3nG2BFrwpktiUNTKDsRq5BdVooXLRaEcYfNzGD+8vTJNBV+awPqd3LkexhxrxI3aHlFxRSSvjmzFDQ3s39Q4aSFa+8hwSc4bfkE0MVoEFTFKv4FujSZrdwuJrIEEo0d93rbNuthGjTmc57ZC43jg==; 31:CriR2j7iC11/goluTC4VhyNHPVWobs07QP01P9GlR0Zxp5kh2bguOS6n0MPWULchLodYO8Zg4zyBbW2GRolmdCkyqif1A/k4iKgmpHJws5Pdm4KtlWRJBnYfmM5bbz1jPE8qOCQrNHqOLLLXjF7SyGjjMNQyxsCJaRtQKXogcq/5YlPwNbNNizJE+Mz9AApfQ8gcLn75EAZumErrZ4/gZMZkM4PcCUFqyFX32LuSP6U= X-MS-TrafficTypeDiagnostic: BN7PR07MB4212: X-Microsoft-Exchange-Diagnostics: 1; BN7PR07MB4212; 20:BYC1xhMHweEawYZfA9q7sj/pI5Jgpg2NMzVMJwxYk0o+GkYIf2Iad8x4RM6EQkn+ktLgCOnevkPTzAXXVow26FaRLzBlNXkID99K25if6+WEWXI5ApvKKBO45FjslDlhxW/90bAVqLKDu3CfMIP+fKlsehtKHxk/ScxeHALm6tlJhy2sBwBZF6c3XjtNiV2RTjx4i6WpMCgLCS7v2k04uRlv3dHIbAzjqlhTHOZpv9hnvO55exFuo7wmHJXWi9N3IBapxUlSaVTX1T8sI2ahRwxutbR2KmnsrikcW3zjGBQ4Xs8KcOGhOgrm7/dbTdNxG6n66h50pK0ycXxBuvecbshmm5pr0eAaQHKQ3VVjb1TBD3szgegvC6YiA8oZdK9dyu3RhmD4AAgIbSr4xY97/BuHhBEBVBY7DfqA+oFS3RBQcxa+QuvAdtmVMjsh1JnaeVF8QU8Zxm45jRfaGXGLkAp7CNOkMJFQ3UPFDDpgYgLrseZcbaaFtPqBE2wHxVsL; 4:PlOP19ga77DuCekG4vX4X/f2/WEFapE9IRwTfNUL3Sk4T1mwWqjuvb7/53SSLaCI7lx3M4XiexpwlDC65HksDPQtaB1v8Ito2TqdSLAFDSPBcS0iSEAZe6iFFRqJ4Q8k6hQ1UiRrdCURogtIDSD1YWZJrS1GZgFfsSyo6NvPS9yFcjp4fh5l4sGlEMRXqrs6n8oJa/oMnYv8X8Roc3HLp+kmFmVD+CyT8wbYozzA1DPTqQQqCmxPtZ7A+drI5wziFP0mF4eLeBPom1ZBbAN7CA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231221)(944501244)(52105095)(93006095)(93001095)(3002001)(10201501046)(6041310)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:BN7PR07MB4212; BCL:0; PCL:0; RULEID:; SRVR:BN7PR07MB4212; X-Forefront-PRVS: 0611A21987 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6069001)(376002)(366004)(346002)(39860400002)(396003)(39380400002)(189003)(199004)(3846002)(6666003)(7736002)(97736004)(52116002)(50466002)(6486002)(81166006)(8936002)(86362001)(2351001)(5660300001)(58126008)(6496006)(53936002)(81156014)(8676002)(106356001)(6916009)(107886003)(2361001)(68736007)(25786009)(105586002)(478600001)(66066001)(316002)(23726003)(4326008)(6116002)(33656002)(386003)(16526019)(47776003)(305945005)(72206003)(186003)(2906002)(26005)(76506005)(1076002)(16586007)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN7PR07MB4212; H:localhost; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; BN7PR07MB4212; 23:TMbUWaAiZbDfbxkRf/iQFVY6tvCWwnDxKjHcDJGN051uvxuDwZhoJKz56seo/oYJhyMgad3v8gQYrYTKIAE8VLoxKOTyXX59xgZa7+W8376ibaUpMiiKQ4u8Qv3iEgGxC9FuyOSDMduWeP+fG8Nq4Pshr8LJgN+GFAae48OJRTGJrwOMNhhPgV0uNfMOKbLL/B5n2HmHbtYcXrxNzxHRYUvqs6n23hlu6z6O4t/aiujML5ee522DvOzmFwxvhX5iBw824lnIlae3M9UQ+hA11fY+WDfASDORJzrx22u0ZAyWDSXq9EmzrxB2KwsKbKK9IeM16/XO0kp7h3DW0KAI8mP7RlpCWKJQpRQxeVkm4idMBKxhw/7NFvIDggAqOEIFEl4mGDSPJpg9m3ZFgQgZiXHqnAVOkLixPiAh7H1q7pDWYcP4xG6bVH4SF2umAx9KdeeFofOI6eBkaaORbozUl97XktdYNFNsHtpXY83nLZXJqyXehSlXt8eT0LD+oDHQlWKh970n8YeXdELvKrxDzdKJ8hZ3HS6pn6Y6du1T3O/ovriscN9+hdVtIS/WKagAlaZXvi7lOWyDNqFp23DT9uQYJNz9+EtK5lF2+V+Vwy5NBU19Y12Z5W7P8+oX1yb7SK8OESz94HsuUbiU/sxhKU7YDdDA8e6WmtbG0BwxCXAO0AEed76gRC0LLZaxtIGOXA2GKYAVAYRXrqZ9jFwFKDZ4CG8OaCKJFdQFdQBfjbprlwtJ2N7b0EKMUKmP5tqvg+WGjh8hM78Q5aIPn/FZFsSQg+/k1RfcOkKsuM2z1TSFYTE9jM5H7AEHejX3ikW5UwN0xaY1XPhXaNEq3GPKdKLSvbMmTODzjnFheqM1trYdYa/ut1hslIN3xAtsPtQWM139fCS3wpgTSKzpFHcBoKIl8+BdSq4gbd5d0NI/aB/noHYf4WvOpR0dkIxWHokrnr0+dL8A+u3BilRmfkXVmvXmFWZ0XnzVHPQ6fULwkXQFa5R0vndTA7mjxSQybBtgxViuLWQ+xbz0i5IKHE55aH9iUTnHaH6DreRSALwb0T/NRMjLaWuPYYikGylI2SPkMIgZ1Cp+qeJkC++gGXC6JikX5G0zR6ZnhmYcNAuRKKLtE4kWgGWnz/bPhFlvj0E9t178AjGZTim03kTdgJX+8bRjc4T/9ErXNbI5AU/fu80= X-Microsoft-Antispam-Message-Info: oShsMjKUV2hhbmhbKrk7WzqROv3ipxosNqGFebBLZkTszqaJoPrXxQ+54ykTasbO6YdmuRe0hBzBzwlUzJuDZt5WyV7P8DFq22TlDk8zYgQ3Z86SEzs8cSIjLdOhUP9C7RGTL1QUbAoh5VDlZTfUOdn4PdWD27OPQBJinApWEej2D9f9TwLdMIxHMwlyhKy4 X-Microsoft-Exchange-Diagnostics: 1; BN7PR07MB4212; 6:jZxqHU54wpvRdMiWXZCuCNgOeB2n3e2dObDp/Sb4oc9dc1fdhVHTJIIHwTOTGHUdySSAOsjw608t3wx8j41LOugx6r1Sy+i00IbtU2K3+AnqH+UJpZkP5IIcC6Uvb+TdPwGUbQCveriMWST8oEbw51k8bcHwu+DOk2fDqZUhpgomoPyM5QCy2f8tIDXBSRxu9S7wdkoCsiF2bcQwtbcM8TVaARw0kT60t2G6Hst9xfBdqVVaTUN0xiEL2hXGUWp9299wYU4vuh5GWuadsIGcGXTPeVNqXTBfIxXYXSoF2gLmLy5f8ELeRRVvqrmgrfvOr/V72V2gJmpmKaNigsgrJugQIfOKs52xTd+BqO1ksx8=; 5:WlR07KCoS8urcG+cvxM94CGMGAn1mVrFqIHGHwkONq37rJTSwCr5/I2TLnvPqJkOTt2uvZ7H3XbHNj+yLiklh9/C//UI3aTUDrZNfWmBOdNcuTQ2QRsbPBP7FhDzZH34tMHx66hYhTOsR9CBs6HrJb0e6jp4vCm3wMepA40qt5Q=; 24:9ve4g4Oa4phfPKrEA3V6d0B9n2xYwhwxHGvl86S0n+4uhjYe7VTXTCuL4Xo4VBdWATGo0gxM1vDNPJ3fZjcW/4muou5Ml/My/OZjRP+E8JE=; 7:nwE9x4gPWtiepK9Qe31M3usdCmwKFW4PPl8ZWz/V2wBbHmDOgiGel75SqmQ82+0A/xt/DahVyZB2+YkvFLUDot6PDsXy4lr9krQ7Uyt6VdCy2Y9WcP/t8vMpq1Xv4/+Hac1oZi2sUtWNZIB8VLBv37O6RiugPZriQz8Aau0SMrQU7sLLE+DwL3eeR7ZwLAxrPXluE05xswjk+fu63UW6tGcU3aYxBa32Sw3wBk+XpfCeUwg/qBiGiOuBvqvwC2Bh SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2018 05:04:48.5179 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3cba0c9f-8c62-4e1b-1916-08d589691c95 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR07MB4212 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Veerasenareddy Burru Added ethtool changes to show port type as TP (Twisted Pair) for 10GBASE-T ports. Same driver and firmware works for liquidio NIC with SFP+ ports or TP ports. Signed-off-by: Veerasenareddy Burru Signed-off-by: Felix Manlunas --- drivers/net/ethernet/cavium/liquidio/lio_ethtool.c | 24 ++++++++++++++++------ .../net/ethernet/cavium/liquidio/liquidio_common.h | 12 +++++++++-- 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c index a63ddf0..550ac29 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c @@ -232,10 +232,16 @@ static int lio_get_link_ksettings(struct net_device *netdev, linfo = &lio->linfo; - if (linfo->link.s.if_mode == INTERFACE_MODE_XAUI || - linfo->link.s.if_mode == INTERFACE_MODE_RXAUI || - linfo->link.s.if_mode == INTERFACE_MODE_XLAUI || - linfo->link.s.if_mode == INTERFACE_MODE_XFI) { + switch (linfo->link.s.phy_type) { + case LIO_PHY_PORT_TP: + ecmd->base.port = PORT_TP; + supported = (SUPPORTED_10000baseT_Full | + SUPPORTED_TP | SUPPORTED_Pause); + advertising = (ADVERTISED_10000baseT_Full | ADVERTISED_Pause); + ecmd->base.autoneg = AUTONEG_DISABLE; + break; + + case LIO_PHY_PORT_FIBRE: ecmd->base.port = PORT_FIBRE; if (linfo->link.s.speed == SPEED_10000) { @@ -245,12 +251,18 @@ static int lio_get_link_ksettings(struct net_device *netdev, supported |= SUPPORTED_FIBRE | SUPPORTED_Pause; advertising |= ADVERTISED_Pause; + ecmd->base.autoneg = AUTONEG_DISABLE; + break; + } + + if (linfo->link.s.if_mode == INTERFACE_MODE_XAUI || + linfo->link.s.if_mode == INTERFACE_MODE_RXAUI || + linfo->link.s.if_mode == INTERFACE_MODE_XLAUI || + linfo->link.s.if_mode == INTERFACE_MODE_XFI) { ethtool_convert_legacy_u32_to_link_mode( ecmd->link_modes.supported, supported); ethtool_convert_legacy_u32_to_link_mode( ecmd->link_modes.advertising, advertising); - ecmd->base.autoneg = AUTONEG_DISABLE; - } else { dev_err(&oct->pci_dev->dev, "Unknown link interface reported %d\n", linfo->link.s.if_mode); diff --git a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h index 522dcc4..ae8566c 100644 --- a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h +++ b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h @@ -675,9 +675,11 @@ struct octeon_instr_rdp { u64 if_mode:5; u64 pause:1; u64 flashing:1; - u64 reserved:15; + u64 phy_type:5; + u64 reserved:10; #else - u64 reserved:15; + u64 reserved:10; + u64 phy_type:5; u64 flashing:1; u64 pause:1; u64 if_mode:5; @@ -690,6 +692,12 @@ struct octeon_instr_rdp { } s; }; +enum lio_phy_type { + LIO_PHY_PORT_TP = 0x0, + LIO_PHY_PORT_FIBRE = 0x1, + LIO_PHY_PORT_UNKNOWN, +}; + /** The txpciq info passed to host from the firmware */ union oct_txpciq {