From patchwork Thu Aug 9 20:54:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Manlunas, Felix" X-Patchwork-Id: 955788 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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="Rwug47dL"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41mgV51GNpz9s4v for ; Fri, 10 Aug 2018 06:54:21 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727156AbeHIXUw (ORCPT ); Thu, 9 Aug 2018 19:20:52 -0400 Received: from mail-eopbgr730062.outbound.protection.outlook.com ([40.107.73.62]:39967 "EHLO NAM05-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726744AbeHIXUv (ORCPT ); Thu, 9 Aug 2018 19:20: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:X-MS-Exchange-SenderADCheck; bh=oDgPQuJMYBygtO2kmJOP4Ka7nhU6wXiQgJcAbZlJpOs=; b=Rwug47dLE8EONzht2aPu5swf/2Q3FYHE6pc52O7lWCMOrHCtOCMKOa1ji7xl+oCgEwU2+6KeUVenX7ej7o1z/3Dv/jqAFWJzOYpG7dye+jI+lTr3OdZcj7Qk7F6XSDMZ6YQm03czVuXJN74Y9QJWTXGL/Qbski21VEH2qnFPUEw= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Felix.Manlunas@cavium.com; Received: from localhost (50.233.148.155) by DM5PR07MB2828.namprd07.prod.outlook.com (2603:10b6:3:7::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1038.23; Thu, 9 Aug 2018 20:54:15 +0000 Date: Thu, 9 Aug 2018 13:54:12 -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 Subject: [PATCH net-next] liquidio: copperhead LED identification Message-ID: <20180809205412.GA1163@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.155] X-ClientProxiedBy: BYAPR07CA0029.namprd07.prod.outlook.com (2603:10b6:a02:bc::42) To DM5PR07MB2828.namprd07.prod.outlook.com (2603:10b6:3:7::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: be423cde-54b2-4cd2-fe3e-08d5fe3a4469 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:DM5PR07MB2828; X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB2828; 3:0fr91GiFCxuqL7bmKaRxmKGazv7/k1T3xEEanVU01Y4LAgviLKQYsxP4KOQcIM0L2Q1vE3fRaUIKs15DNh7NusSlcPMfygOUnXqyvDysbT19Wx2L7S9SUzh5tEBetWGTDrL+27IJsU9/lMfiJHfmvkbMAOvD3m31iJOSP0cvTY6Oa5xloGVLjEEam/rN5fAUkHzV3TQmMNeAlgpvt61QS2zIBM+bk60l66Ryovt/L+H/Byd7+/OmhqA4IabO+VDO; 25:joAxljRbJ/ch+koQVh929KygMrRvsrCZcWT3eWKLItMUjHpeiiV57y6fI4ZI6xSAHQ1xghJmbj8r36RCZg7Wpjx8QYH5MwqEDEHfgLGgQNQynw/sRqo3VoRIsgUQsUclVUK02Xi7I1W9osm1C+Hm6u5V+Q3yJpMpt6/VRDat8h4A6bK2FTAfvE7GoyEd7MijJTuUHX7bGuGEjS+sbz7RXIZOhAVDoJ0Iixvo91unNfMVTrgcl+gujkbmbBneOk3BKH1uI1denhNisxp0/gbZqPMsyi7vPdX7Y7rCvEDVvG/Wkv1j8OUk9sNG7ifFdpIQAL5wp/yMEDwSuz8TgBsYaQ==; 31:fmQjr4xY0njFfzXuo7i8eejhXR/N9aAmVnDfpzlZp+K+J2C1I5VKJP1ZnVNbjH66TA/FRf1lqpbmLgHdo16P3hAMSYyMxslM/t5PA9c5crfv5W11nAxaT+7u8A/aSEsfjDje/QDiuXnNq/Uz+T6pkwlCZD4A87IFSP6Oed5B+S3qFMWVuxLMk8hyRP2koV4zptxVWuqUyP85ZvlX0X3fRzT4D8ObfOHcTX17CATRhpo= X-MS-TrafficTypeDiagnostic: DM5PR07MB2828: X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB2828; 20:lsfB254H5z9A+xc6eq5hKfznq2PKOC0CXbF01I3Tpef6Dtenq1+LAI0QIyYxnVoePyIPhNCbpjvTYfhE4rvJDLwBMVj10RJWwnjA/X+SljWtZcH2TP6BiuHa5feG/stStR4eLYRoZX7omYgnB8AGyMG1en0deQnP9/ahzeu6jjKViaIQe1SSEbCWSVuk1Bybq/RkBu2B/oSWoN7Ypmfzw/RXkbxYYx756IKl7sAbutcr50c4FsbrtT2Byyf7JDUjY1n54o+kxKh17xyDbgTYFdd8obrBDEIXqQ5HiHOPh0ba8iXsD9Rj0njsEM4hoGLcB2cvv17wD+Bw4pjRW8rONlkOyojCQMsBOiWOU7ZNaHXM4JDVT0w4gNx4YZEdqMujMspaL3kYE7puijZXIksk5O2DAK2EhCoFTk16hSHhOGW16KtNi1LLpMXX5ZMGVXRwMCZSpAkacopryBzdPdocoRMJKxVY9mnC2rZfcoil83Pdnb31X1LwPj2r0D9LfHB6; 4:y7qtJChVR0Su8Khi8tR9rVtdmwAMZW0vB/sG5XEY9+pstTkZ8EgaDCtwCIF/6FhT6MXeWuUxjb2QGe188Z5kCCYTiwYpy478hzmH9oLoGkjFEAv2iotOYmNh5xjwXpxOy3ihLe/LCo94el83ELsRGHxV1IL11sSrQ4SvXNU1d92EIlX+Wnn6DWQNBqeFw6pNlE062xeDp3yF42xpkmQdmrDNXViFRaXHDdL7LHMrKtWpzOBTU451OwA1GSvaikhkXJiM6JjIPEVklFMyXXUsSQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231311)(944501410)(52105095)(3002001)(10201501046)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:DM5PR07MB2828; BCL:0; PCL:0; RULEID:; SRVR:DM5PR07MB2828; X-Forefront-PRVS: 0759F7A50A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6069001)(396003)(39860400002)(136003)(346002)(376002)(366004)(189003)(199004)(106356001)(2351001)(6486002)(6496006)(105586002)(305945005)(7736002)(2361001)(86362001)(52116002)(47776003)(68736007)(1076002)(5660300001)(8936002)(53936002)(76506005)(3846002)(23726003)(6116002)(6666003)(2906002)(81156014)(14444005)(81166006)(58126008)(44832011)(16586007)(386003)(316002)(26005)(186003)(16526019)(97736004)(6916009)(50466002)(476003)(25786009)(4326008)(107886003)(66066001)(33656002)(8676002)(956004)(72206003)(478600001)(486006)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR07MB2828; H:localhost; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB2828; 23:VtLD29DUuAxXIAln5Tk8wwsGG1SYbkNUk57awSvO23L/vXBokDcicL3r+ZkTKaq72tvFHUeSYJUvPlVk8VosXUlyqLRtgvdmwyf8Cqy7qGuO3jOSEXvrky1dWd4oB+dohAZg3DI2oB6BbYGI85DKQ9ouoFs7qTtAOIwEREWDv1sWlcK51KBznfFOZ2ojwt69MAvXPrY1DkTbT2OVO/HEfIFsQ1IUtMVBWNJx6e9Dv7d67sx2ldGICwa20YRwvmpxduxAAblGIRTz7K5VSaaVbOAKLQLXFW35tJqtT/PHk5XmaG+UijqS2gO/EEVojV4d0lSXrOBBFjcYhzZc/zAFkzSicTumxHVgpaAHpW0ZXn8XIJV/JyrSmlwoh1PkCxJ7roMK1vuuWtupPeTTr100DKpebxC0VK9wkM3Rnr7En/Tato2XgkPENA9Co4wk6n4Rt9idupMtDeXHL5yoHe81InvZCYefMtRQw44wDXam9NL6Wdi3ZL9PFHCpT27MXUfzXPTjZxvNUQ671lWCqM/2u1Rtr/i+cJh+ycP7YKqQ7L62NXGEV6J4cPSNkVkI3U7FziLRhHMYNrQjy+klwglRCQ1kRPlJC3tIqZQPq86gHABjV+zBTBTCBuZ639wG5QbNWhpkPJ9s33pI8g3p9bRUldNYMnEj8qkHMUHB1lJiSjBPS34cJddKkuFFdiBhj+TOfR/tibnptT2lKt0gqBiZGeA+AutG+yypwQrwkE3KNxf70gVSH0y3PxZK9Z+1t40cU5lnJrBalyBsgi/Jrk+hcnq6q4z0O+wRXSjRxBkg71MWHH7nK/9RrH5mfvFd6gETQFtyo1+aL9KgHQ/ba1Rc2rex/ua0PcmXvVPenlw/KpJtXmhWMcnU9X1mI5HcqIqwTDTEDTI5qxjqq4GHhL2CU2TmrLs1RKJvILmDJYz6fPPOauyJm+VL3J0Juu05d1CsS4tgjgO6sQ44KPLQcWshUVo7RdKFVOC2vDEEAPXvunl66dBDTqO8GQBIFSnJl/JENjCCSi3ej9AHTSWfUCVuJqTrMiSy9fNz79+JGEIddEnE2q1g1JzSnL1boUtwjtvV0DsqGemCCfxwXOtAtD8OHwT/+6Ty8ZCWp0m7zVGs82Cr6SW72z5f1KM3abpmPnetwgKvl3flaCN4cMNmFNKpKeMtF1xggi9TxjsPnecgiL18QhuUriIuMEhpFkcjFaeMpqwNFZEQEbR+Cfd8DXOZIv2U1/8CL5IOOIEBs0chsXk= X-Microsoft-Antispam-Message-Info: wv2M4RiZvXDYpBSWGDEleb5OhfseRUmeCGktdRW/Loq8IcW5PC6C5ZtYvAzW2bhdUl/pDzMvYb6Ys5JbcS3Uk1ThGx7qSEXlvWHeSzlG1cIlSOzfQdHFUQ9A9Tg6U44MiT+Hd0dgwhRvXzVfKrgBnClb1VDHWGCc2sUOJBoNrMB4HukpbcvD3/m+4Ycz8niWOlANXlXqXZyXNVldQ1zlarXQxPthVz771+eQS+mTxFQPD4gDIPlCiH9o3gmrl34lAJJWcsE35Nfk//+1cdCw3jM/cLTGdlgxuxvsvERuLkkudb465+sWl1KJDovl+4HA+jXXi6vPkswY6tAe7pU2sg58unvV7qe+9JBKhFqH66A= X-Microsoft-Exchange-Diagnostics: 1; DM5PR07MB2828; 6:3YisJvM7YO4JsjMKXvjQE/9v7+I/WfYI0vsdhNqb8tiupyM51DM5MYqYeGtKJxVqOVrFFDrgsYM6VJVnBuHwN1dfFW/5CGfs7cyP525g4FuGau/tCJyPCVP8/+TD+toKaybsqYFR6dqOYSZMTIXJcrp+ck3jIG8F3GAP0p2s0ka/tWL1rQXnabEA1oGxTFyMwqArgXI1FJ8x872bf/C4X7Y/ldDWbXA9QMjsG8M/p9sO1w/8edbQbCTJeERvPQmNFj3AncB92d4K26jJ26FBOaPBYchjx112e0W4md52NyURf3EmpDW3OXKZtioLNeM9MOtK9t+ibGbjyU5I4nRNpn5K09c8SZVBEP69Vnyf/lrLizFCsdPSyiitCFYqdtmR8k499KvI0Z9a/yt8Qx+ObASvI/ff1eVjxb94EQGIrV/+aMY760yLp+V9amcn/dl7PNZixJiBA65nAZ/OvQUMWA==; 5:PnQepE5cXqC5GVMC9yYpM1Xb8ArLa9/RkAWgrDXZHxGbE1tpPtkg2gV6IH6MMFFkC1Q5KfRq34cKtFQn+TDk7qYfM4Y3syq5GU/EwQfyNC5+vl9apjX98i1ogGbNtlBveHUe9iYaKQNUHsiyogIS+CnGitiV14ucnJ17QTYJS+4=; 7:JVe6oDv3lYMYnCfVDkG6Fm6G6XqlZwt/gHnL6iRc8w6jvt9Iy6UIga0JRqmiwkoTJ/gxBLg/mlCe1h43LVA56uJPHwaA8aYEaCv1uig0vIKNv0x84EXBw8hse68tALXDRm/iWxNtVU8o78CivTgRDFB/ZDXdvpSFKWH2LfbTxMcogelW+GCR4pjA5tGvVSLNLcChXdurmr2ZxKf3Obl7jxd74aRKJKnEfvg8KBAzowEgrlAlX1AbmjAXbPFvmF/a SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Aug 2018 20:54:15.0742 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: be423cde-54b2-4cd2-fe3e-08d5fe3a4469 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR07MB2828 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Raghu Vatsavayi Add LED identification support for liquidio TP copperhead cards. Signed-off-by: Raghu Vatsavayi Acked-by: Derek Chickles Signed-off-by: Felix Manlunas --- drivers/net/ethernet/cavium/liquidio/lio_ethtool.c | 27 ++++++++++++++++++---- .../net/ethernet/cavium/liquidio/liquidio_common.h | 1 + 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c index 06f7449..807ea2c 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c @@ -857,7 +857,14 @@ static int lio_set_phys_id(struct net_device *netdev, { struct lio *lio = GET_LIO(netdev); struct octeon_device *oct = lio->oct_dev; + struct oct_link_info *linfo; int value, ret; + u32 cur_ver; + + linfo = &lio->linfo; + cur_ver = OCT_FW_VER(oct->fw_info.ver.maj, + oct->fw_info.ver.min, + oct->fw_info.ver.rev); switch (state) { case ETHTOOL_ID_ACTIVE: @@ -896,16 +903,22 @@ static int lio_set_phys_id(struct net_device *netdev, return ret; } else if (oct->chip_id == OCTEON_CN23XX_PF_VID) { octnet_id_active(netdev, LED_IDENTIFICATION_ON); - - /* returns 0 since updates are asynchronous */ - return 0; + if (linfo->link.s.phy_type == LIO_PHY_PORT_TP && + cur_ver > OCT_FW_VER(1, 7, 2)) + return 2; + else + return 0; } else { return -EINVAL; } break; case ETHTOOL_ID_ON: - if (oct->chip_id == OCTEON_CN66XX) + if (oct->chip_id == OCTEON_CN23XX_PF_VID && + linfo->link.s.phy_type == LIO_PHY_PORT_TP && + cur_ver > OCT_FW_VER(1, 7, 2)) + octnet_id_active(netdev, LED_IDENTIFICATION_ON); + else if (oct->chip_id == OCTEON_CN66XX) octnet_gpio_access(netdev, VITESSE_PHY_GPIO_CFG, VITESSE_PHY_GPIO_HIGH); else @@ -914,7 +927,11 @@ static int lio_set_phys_id(struct net_device *netdev, break; case ETHTOOL_ID_OFF: - if (oct->chip_id == OCTEON_CN66XX) + if (oct->chip_id == OCTEON_CN23XX_PF_VID && + linfo->link.s.phy_type == LIO_PHY_PORT_TP && + cur_ver > OCT_FW_VER(1, 7, 2)) + octnet_id_active(netdev, LED_IDENTIFICATION_OFF); + else if (oct->chip_id == OCTEON_CN66XX) octnet_gpio_access(netdev, VITESSE_PHY_GPIO_CFG, VITESSE_PHY_GPIO_LOW); else diff --git a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h index 690424b..7407fcd 100644 --- a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h +++ b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h @@ -907,6 +907,7 @@ static inline int opcode_slow_path(union octeon_rh *rh) #define VITESSE_PHY_GPIO_LOW 0x3 #define LED_IDENTIFICATION_ON 0x1 #define LED_IDENTIFICATION_OFF 0x0 +#define LIO23XX_COPPERHEAD_LED_GPIO 0x2 struct oct_mdio_cmd { u64 op;