From patchwork Mon Jan 23 11:59:58 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 19899 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 4660EF97F; Mon, 23 Jan 2017 13:02:28 +0100 (CET) Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0064.outbound.protection.outlook.com [104.47.33.64]) by dpdk.org (Postfix) with ESMTP id 252F7FA47 for ; Mon, 23 Jan 2017 13:01:45 +0100 (CET) Received: from BN3PR03CA0105.namprd03.prod.outlook.com (10.174.66.23) by BN6PR03MB2466.namprd03.prod.outlook.com (10.168.223.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.13; Mon, 23 Jan 2017 12:01:44 +0000 Received: from BL2FFO11FD020.protection.gbl (2a01:111:f400:7c09::135) by BN3PR03CA0105.outlook.office365.com (2603:10b6:400:4::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.13 via Frontend Transport; Mon, 23 Jan 2017 12:01:43 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BL2FFO11FD020.mail.protection.outlook.com (10.173.161.38) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.803.8 via Frontend Transport; Mon, 23 Jan 2017 12:01:43 +0000 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v0NC07eq019311; Mon, 23 Jan 2017 05:01:40 -0700 From: Hemant Agrawal To: CC: , , , , , , Hemant Agrawal Date: Mon, 23 Jan 2017 17:29:58 +0530 Message-ID: <1485172803-17288-29-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1485172803-17288-1-git-send-email-hemant.agrawal@nxp.com> References: <1484832240-2048-1-git-send-email-hemant.agrawal@nxp.com> <1485172803-17288-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131296465039341657; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(7916002)(39850400002)(39380400002)(39860400002)(39400400002)(39450400003)(39410400002)(39840400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(77096006)(189998001)(5660300001)(97736004)(626004)(85426001)(110136003)(6916009)(38730400001)(6666003)(48376002)(2950100002)(92566002)(8656002)(54906002)(86362001)(53936002)(50466002)(68736007)(47776003)(104016004)(81156014)(8936002)(8676002)(5003940100001)(81166006)(4326007)(36756003)(2906002)(50986999)(76176999)(105606002)(2351001)(33646002)(305945005)(106466001)(356003)(50226002); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR03MB2466; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD020; 1:Y4H/cvgdKWoiUqQ6WAGZeWLBJWBebiPGYss2ywlDymU4VAnuFOun3wc8O6NdRsbhunCqPpkyyZYOJq04i4U1rzRUudwc5QrNLmdQYbWMRckxqndkXyTgKuCRjPTlHGc04qv5YqQ+I093hcFesO93ytVsNUcf59eyEaE29qUDg578GZPsgRjvsQRwrzTpB/gQV9PBDyOOAgBbbH8hNl1FZTZS3h75JtYIRnaEegOTXz0Cet07aleMzNbqAxsR/K5SisWB7pOILyxQvRruRVAt/JuLI89pyCZ3mFYOJfTFZFKwSUBVCppVCw3BMKoXBxgtWxUle1KZTQV0oLFQhCN9jc5D7j9ULfjxrkO+uqdslWF+M3aE3amNLCZlrABofC1AWUY82PTmrUfaMqP3E6G9ymQOUfRepqsHH+SSHN/Fa2SNZz7EYZvZfyMJeyVabaJXkfIT9k2LeU0cjUnM1N5Eg4tBrOzZIMAvB2S6T/lN1+PdpQOTfs6BcgepNrWz10AtpDj2/EZObCZMzfYYAPU/dqL+E8amnpyISlKNVc0vftNHNNv2pVpqATMQUC59GBiER70wO3bUkbd+jsUHfviBi54rYTJBOrlLEQII5D74g66YkMtXqc5do/SI+7V7Uy08AUqKAEtWwQzdyR9ceXd08xIJNo1pfDvU29TJ+prnsxKoMkF/WwV1h/2/RRE5RNJpXtBbyP85eXUo95TM3wjcnYl8p7W94Q9zLugYFTKM/rgfIY49Tf8Bf1hyMTMJuL6/ MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: f0101773-be9d-4a30-d6fa-08d443879963 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN6PR03MB2466; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 3:656zmBKugRha6aADywAo0XCKBbl/dYr8r8XuNYba9bdE9jNtnloF6LGQ2Aei3UNvGU0NYOnPzU3nuiWAEKx21309uZR639W7pMRe0esSchkUQjj/cZEGdoqCVGWz2JINHijymb8rU3XzNTBnb+S0BN6Q/bqxfLucPw521LDPoKXD8pOnWk/toXWznQhimkAGCCX9aC98C/CnOOz4xohZnao8i3m27tKETRayGuFqhkfzZMNALF29Lj1NH0dn+KHPF2KHMsN3bTKoYcjYI8TZF7ch9w8vdfODGGBp/AqSVwVcxeCSAG+s1PtbqPQZo8WVKRgMvfR9sKlAklWaHSMOTmOOR8EHDjPHpARedraol2ZBCyIlKggqLQLOWBxlyFiS X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 25:bMweweNTRcwOlb1xF1r78TRHtMRrivDA8lK77Zv5zVZ48jmSilh5zpDF6CKO146PKLivB9BIt/KgUH9pcHfzHDWr6RBtiJt6TNZBTP6n6HIQhjDcK+j529ix3jMN8rJnEvzN0P9qf+sb+5rR7blBEuODIouM09wyioZ1rxVR0PsOhsvMAUNIuwZ46OlMXqETINTqLBQjEYsSWYkYX+7vdRAJ2+VFvbMBe0OjJ2HZ6ggSC4pt6PEPwBQ90aPMYJQ37v4IWmfxU7T87sG4mBoZBX/SoE88cPUDeVYjuxVa+WHq8qRFSxLEd6b1GBGj6Pad4vj6L7Q6C/AQ0cHrgdO/R8bxka/lT7URdzhfiYy56RyMo7IHIql4GMzTZxVGLomnQ+Dv1N1flNFxdqt8KwVgA+Gy9DLU6MOrYy90v93vIQfQpoAGwWt6yFKcvSRiItEa57OBuHNP9VF46N96opGIkv+7jUpb4tdTmtaV3M2Eiq4xtukBk403OUTYh9zneVO60lf9KmyzFU8Am/x3DevvDsD+iu/f9C9fH4Pj1IKx+0kX7L9WWYplSYs30W2q5qFZmnXhhXIOLbf/AqaEQfGC7DUMnoGae6SOlhHqrmblbREYSBo9qNP27IdYj16XV6Js04kNQDr6U8+ntelPnEuA5oQnxHFzITOfSTtN+lmS8g+nlIfhGUpov1OSi93iJ7nlEQ0FJAChjcvyVk+gScyPTIXS6ctwMzVsPcbGsNc5C3bEvobmu8ZzzYEsdRJnLp+KcdcaUUY9+/IAFX+aHXZarQ== X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 31:ljFAKMBc/gUF465qybpR/VIVOug++KlMFHbdw3fMy/8HI37Tcikt6UarVPs2F572kUXH0A7u8CJtCQSvfYmnAAAl3ucuYKOQMLREXR6UfttUEl++uLHDBQ8ufFD0HnH7MU1fNkZq5WEk/iaLWnRilRFhFkV3zXBwOvRpBdLiKl79FRC0u4jV//qhSFLiBHVOib4nSdMiQHDwLljj+js0vdA2zM6hMnCp/UY1A10Yst5H9JUlENaaUfwB5XtrnZr8DnWVJWvw+7nfX/K/X8TBiQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13023025)(13017025)(13015025)(13024025)(13018025)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6096035)(20161123561025)(20161123559025)(20161123556025)(20161123563025)(20161123565025); SRVR:BN6PR03MB2466; BCL:0; PCL:0; RULEID:(400006); SRVR:BN6PR03MB2466; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 4:D1uWUbwAyEgL3gb93Hf83kdLREexMkEb6Ss9Sma5CaElWXDu+2hRwSXlbTTtHzM+roDZhJZyOJUynmLS5t0FpwnmwD/kjf6iFGmg477mevuEGlx2LK3uJHfetJqOsLkySyTWiE6j3E782rtUJxySgj2DnqX+0izX2IzApAeq/hAg37AGeUoG5hRWe/6XHFhf+ELFR50RdYYzOr+1ed+DNF0YHsUXGR1BwRXCoDGeZDa6yfXzRM2b1LLFj0wlTLhY+BdCPql+JwwOa0OWMSUViSbCfLo7MBXP0dHfe4uSbK5EI1+FCzPMH3BZQqGEjv8Bmf/GhFz2fqg+Pg9qnVHaPccX/HI5gXTWlyK2q+zxDp6eW80J9zqjiHEb6VFSRHEA07Ne8qS6cle+ZjRgAxD/SNCvLZSIu1Rv23sh5uac99z8MmdcmIgcS57t9iKexXbg4gOJ9cfIHSVN6CmVAzzzMP0HbTC8UQ1G9gu1u5lpTIffS3FUXJYlfUYMVV4mK+ZiucS/3kRrBRHHOX2l7ubjkbJKmsvzEVodrHHaJJjvhCE1bCg8aDWndkfe+nHcoraVsvkuqdvlMVaVVfV4Hkkw7Jf0Eifym94hojpPjChPxIBjmCJzJNVPKxc016y/E9thlZMyj/bAdl/H7WJ2oP7Femwjaa9a47W225UVTXTwEWYkxsMyGhTGjyivgUhsTd2v5SJBvkLrn3gH0tAXjpBaXrixp1QRUhdBDsN3hPuvcqHoamitrgTcEkZ9qOWPz0SG X-Forefront-PRVS: 0196A226D1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN6PR03MB2466; 23:wDtpl0HV2i59sOjPw0+5x3XoiWoBR5C7nKh8/RYUO?= dVjFO7gy3e2gLRMAar8xc41jOspllPFXjjvEaRVznlNiSOfhCMS6hGtXOq73Ugjku+QINCFE07bEl+OJvGZHOx08H2bwdeS9fZny3+xbGhcpBzSTft3B8QhnEKmW+yrA0Noo24ZqV8VTC4ENHmrsDGSyrKUSPOFkZ9WVW5GYoy+efukaOMJC19R92QK7nhMPrejqgcF3u51TKR72W1sbqtzyXVgyj2W/4ViKWLEsDz2IQRnqWCogvq6ODbZrmFTRjo/Ae2SuCV2+vhlqwNFThULZrde/zwd9kGnyDCrzkvym28wMR5ra4OmsvjO3QgfT+L6hKXfhI7IdjxQztFFyiMO4pT9B5WKgKI+rkW7l9N4ZhSft47T9nPeun3NV3WCqVucQA8P5fr2KSYhB0qSYOk6jncZDCaS+bQAYCAM3R13SqC1+oUPAfwCq+AX6dBBcqa91CB/1dA12cupYw3Kquw747SRn3XQByr2lqCP8xhyA4H2/BuWQrEWoPK1uw4t0UUlpXKpn85Kr2xmXFg8NzFbmtjpNPOJh/Qo3UK2z+JFlrRqSrmWzN6hItReeGuyX2e3S1Ya67yOkri/VvVm/GgI5jBAPa6u56v7yoDtPrgoiAybIKFKJAsArE73MX7wiM3tQ1cwyqed5tz3e3tA/fQFeEu6c3pxCAkOuQq17M8/+yD4dyRqvWTPeTcm9Gp436XEiJMCxGo619OxhzUDKigZ/g7fyFmQ/JFqXjcrWKcsL/wKVorTH+Wg95EUwqYlEdqhQTMaqQ3kTBfKFvacWleFm5kkTnFSprtQCAHQ0sHKVEUBOySNjRlX2HCyPUae8Zdp7cBF2pInyo79P2Rn9CvSOjlJv5xMXywULYCjOEFW7qBbWg6WPe7zKl69UyelW2UHraXVTo1T1CpACg2B3qFK8tgaOm9SHmu6nd+z4CyJWjS2ZlRZrL/TkeE4fjIWoKccOLljWmIlU1NFobtbr+IlBOHkNIwF2B3cOg5m2/C6kiirbwY6EDOPYvHomHHGSfzYY5yr7LN4//xmebY/m3+xgBupamsN4DI3QvAeodGkb2MNVPS9yvpUy/BAe/Np1YOlKQ2lOgzTNXLJE4YFDg8/N9kwQBOjkT/AZ9kSVYGBk6AaUXW+Wckwcmqd6Uvw5n5WMkJbBO6TLqAtKQcascKTXhC7iGgnqFxCysxUD243sOxO9i28rWuOfnKBIWbAoYGyECATgx6nWinx0EAdy4xn/VsZCg7bEchBHU75LbYbPu7JP8UDthOjtlS5uNv6Dkw= X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 6:Ys74ZjQCSChzsAP07vo7vd0k7hM1NDp4aZbBuGxyon/ubSUfUx4++JIHQmGuctg0fJ+4ggBOULOWyqt0gHFQkqc/nESdPyRTi8mOGPtp457d5Ts9ms+yjflgk5PL6F6l+8UGLU1ZL0AnSHBs85A3wlwK/31rr2t7gHCXy/2Bwk1LOVxh9c06oJdRtf2HwrzSY0oeJrWKazBOQA/n0vWhAGIxwDpsNdvOOCeM6AOD6FbC/4Sc3t6DsDBkNNfOBi30c0UjuirihGQwFLr0HFjkMcHBasIaq4oaZDF01Q2d8xgjNWak7SYHAn76+kCA0COfkxabTIp2dRiGA6UxHiHs9MoEXnj6boz9MmNVeXneJYkqpT00o5tOWjp++tlYY/12pMDjDAt8cftpEed57EAJ4fP+X7+VKnSDozXveJ9k7jUefsQkoQd1DJR3IHzFBPjb; 5:x3yPJCMhAscCzs8tfvJqkgimWOFEMd8+vo3jIWBabvdZIalBcErl25xc6pHfskkBhhH1+lCbIzXusBWYotebwjN2GzRIy1xLdaJ2WmvzaQKCfGWe/aovkNTPkgedaFHznudNMlO9WwTK0WuCfF396uldCxOrJJmrxM3w3X6plgTJKiwLDJes7chyZzaKhvof; 24:aWznBTIlCPXfpX6Vk6gWOlVpzDiT9d6P/SgkzAKQYviZOv7XrhdvYBANijylyQaGl0pRPTYAaKmFzzmbCdbMITkKlR5dUdOebRMPweQD6d0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2466; 7:IXVdbOOji8iN32gHk8kxGXKyEeyGfCNcRY+la2lvjwfC+HLhlp1+VQz58nOCT0aXJxSLFO2O4E5HjCP3dHQR/cCQ0aVMS1rnQDvUT3kEn//9IJViwiz7MueoEpwzKNtothFyc4JGUYip0qwhUa6fIHYrlJsDhYpHx9MX1luYF1UEacBhC4UEYCdG3s9q8P68UM7gh2CjG1ULjFuxDb3MUKJqIIzZ33OHwoIGlqS4W79hqgwF8jjuGQ3pEu8XHG5KfxmGAFsTBjyurB1DU6K2l5EdTKxqzNiDMDGKFk3gpXl/P5wjF4+aFHGOBjb/LlxyoB/wYUBJxe2KyyfrYjSGSWnXLapVa5imQDciF1lCQUx3pnR9H/kvSQ+kg/Tn3unubvmeA9I0wsKdxvXlN+I8ZkmZEgBUvgGfV4rU0a8pzTC0lh5SAKATdcpxthhwWWcvP4nIoy7CTlr1WTp7xCgfsg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jan 2017 12:01:43.7469 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2466 Subject: [dpdk-dev] [PATCHv6 28/33] net/dpaa2: basic stats support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Signed-off-by: Hemant Agrawal --- doc/guides/nics/features/dpaa2.ini | 1 + drivers/net/dpaa2/dpaa2_ethdev.c | 86 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+) diff --git a/doc/guides/nics/features/dpaa2.ini b/doc/guides/nics/features/dpaa2.ini index 0660cab..d43f404 100644 --- a/doc/guides/nics/features/dpaa2.ini +++ b/doc/guides/nics/features/dpaa2.ini @@ -12,6 +12,7 @@ RSS hash = Y L3 checksum offload = Y L4 checksum offload = Y Packet type parsing = Y +Basic stats = Y Linux VFIO = Y ARMv8 = Y Usage doc = Y diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c index 4e08096..eed0136 100644 --- a/drivers/net/dpaa2/dpaa2_ethdev.c +++ b/drivers/net/dpaa2/dpaa2_ethdev.c @@ -588,6 +588,90 @@ return 0; } +static +void dpaa2_dev_stats_get(struct rte_eth_dev *dev, + struct rte_eth_stats *stats) +{ + struct dpaa2_dev_priv *priv = dev->data->dev_private; + struct fsl_mc_io *dpni = (struct fsl_mc_io *)priv->hw; + int32_t retcode; + uint8_t page0 = 0, page1 = 1, page2 = 2; + union dpni_statistics value; + + memset(&value, 0, sizeof(union dpni_statistics)); + + PMD_INIT_FUNC_TRACE(); + + if (!dpni) { + RTE_LOG(ERR, PMD, "dpni is NULL"); + return; + } + + if (!stats) { + RTE_LOG(ERR, PMD, "stats is NULL"); + return; + } + + /*Get Counters from page_0*/ + retcode = dpni_get_statistics(dpni, CMD_PRI_LOW, priv->token, + page0, &value); + if (retcode) + goto err; + + stats->ipackets = value.page_0.ingress_all_frames; + stats->ibytes = value.page_0.ingress_all_bytes; + + /*Get Counters from page_1*/ + retcode = dpni_get_statistics(dpni, CMD_PRI_LOW, priv->token, + page1, &value); + if (retcode) + goto err; + + stats->opackets = value.page_1.egress_all_frames; + stats->obytes = value.page_1.egress_all_bytes; + + /*Get Counters from page_2*/ + retcode = dpni_get_statistics(dpni, CMD_PRI_LOW, priv->token, + page2, &value); + if (retcode) + goto err; + + stats->ierrors = value.page_2.ingress_discarded_frames; + stats->oerrors = value.page_2.egress_discarded_frames; + stats->imissed = value.page_2.ingress_nobuffer_discards; + + return; + +err: + RTE_LOG(ERR, PMD, "Operation not completed:Error Code = %d\n", retcode); + return; +}; + +static +void dpaa2_dev_stats_reset(struct rte_eth_dev *dev) +{ + struct dpaa2_dev_priv *priv = dev->data->dev_private; + struct fsl_mc_io *dpni = (struct fsl_mc_io *)priv->hw; + int32_t retcode; + + PMD_INIT_FUNC_TRACE(); + + if (dpni == NULL) { + RTE_LOG(ERR, PMD, "dpni is NULL"); + return; + } + + retcode = dpni_reset_statistics(dpni, CMD_PRI_LOW, priv->token); + if (retcode) + goto error; + + return; + +error: + RTE_LOG(ERR, PMD, "Operation not completed:Error Code = %d\n", retcode); + return; +}; + /* return 0 means link status changed, -1 means not changed */ static int dpaa2_dev_link_update(struct rte_eth_dev *dev, @@ -645,6 +729,8 @@ .promiscuous_enable = dpaa2_dev_promiscuous_enable, .promiscuous_disable = dpaa2_dev_promiscuous_disable, .link_update = dpaa2_dev_link_update, + .stats_get = dpaa2_dev_stats_get, + .stats_reset = dpaa2_dev_stats_reset, .dev_infos_get = dpaa2_dev_info_get, .dev_supported_ptypes_get = dpaa2_supported_ptypes_get, .mtu_set = dpaa2_dev_mtu_set,