From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0089.outbound.protection.outlook.com [104.47.32.89]) by dpdk.org (Postfix) with ESMTP id 06C47D333 for ; Tue, 11 Apr 2017 15:50:42 +0200 (CEST) Received: from BY2PR03CA045.namprd03.prod.outlook.com (10.141.249.18) by SN2PR03MB2287.namprd03.prod.outlook.com (10.166.210.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1019.17; Tue, 11 Apr 2017 13:50:40 +0000 Received: from BN1AFFO11FD023.protection.gbl (2a01:111:f400:7c10::133) by BY2PR03CA045.outlook.office365.com (2a01:111:e400:2c5d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1034.10 via Frontend Transport; Tue, 11 Apr 2017 13:50:40 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; caviumnetworks.com; dkim=none (message not signed) header.d=none; caviumnetworks.com; dmarc=fail action=none header.from=nxp.com; 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 BN1AFFO11FD023.mail.protection.outlook.com (10.58.52.83) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1019.14 via Frontend Transport; Tue, 11 Apr 2017 13:50:40 +0000 Received: from bf-netperf1.ap.freescale.net (bf-netperf1.ap.freescale.net [10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v3BDnjG5000706; Tue, 11 Apr 2017 06:50:37 -0700 From: Hemant Agrawal To: CC: , , , , , Date: Tue, 11 Apr 2017 19:19:32 +0530 Message-ID: <1491918578-4902-17-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1491918578-4902-1-git-send-email-hemant.agrawal@nxp.com> References: <1491725483-6619-1-git-send-email-hemant.agrawal@nxp.com> <1491918578-4902-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131363922403970625; (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)(39450400003)(39380400002)(39410400002)(39400400002)(39850400002)(39860400002)(39840400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(9170700003)(189998001)(105606002)(38730400002)(110136004)(106466001)(5660300001)(33646002)(2351001)(356003)(6666003)(85426001)(50466002)(2906002)(36756003)(6916009)(2950100002)(48376002)(305945005)(50986999)(104016004)(5003940100001)(8656002)(76176999)(97736004)(53936002)(54906002)(4326008)(81166006)(47776003)(77096006)(8936002)(50226002)(86362001)(575784001)(8676002); DIR:OUT; SFP:1101; SCL:1; SRVR:SN2PR03MB2287; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD023; 1:SbKxdScys3uIUhEFa+VAgPHu8Mi0P/NynH/mU9FZKNbXYI8AzihO35AsvT0R3ySD0LDfIf+NTc5PmQpY0aDBdNCN2QoqCR8P/Mu/6+PE/B+iRb5m1qLL4kos25I/XV+8ay2rVIlWv8WdjQeGbfr2SwNHgSnk9ty4582SNX519yCRQyHitV/kKR/hPy0C6DvIPFNNoKbG5OOm0xY13wP83inxaW09mWdCGaEaRR+Zv/0q1A219eFhNMGti6bCBtFwqyC1gg0RKnjg512D3Q0qJWaxfzAUV3vmXTRxTpa59IPJuPlDKdeDYVh6NXGAfc56WYriAtVjyiTTFTlvteHw3V5NNt4l43B6eoPfV8i1gnQnlz41b2TM8ifKZf+a4EPtP5x/wF4iWLE5RPiv5AKv6f/FtogFXz6L36TYj5HDfWQzIsVvZCVW9NtqNpI4+GZDEoySHVvjmYfWVAwU2vJL7BIDnumVDcCx8ljI9m4axGOsDJP1vhOnFOlIKjqd2fOR9fvc1gItOMsJ85QkUzXwsGQlS6TBNh1WQMt8ZMDhw3y/QolWqllU60vsSH8oTL3KbWh5eakXKLFNj7bcbu0VEQxZJD0axs3i9kyoixMHiJolIN+xlPRzWzKlQ3cl5XGuaUYWOppgYV1zJgdk+C/rysbiupkuh4a4X/tM/yCK0Oc= MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 80a4d880-d7e6-4790-6ce0-08d480e1bda5 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030255120)(201703131430075)(201703131517081); SRVR:SN2PR03MB2287; X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2287; 3:8XuCWIULYkIjcuUkoeu6xIRXIyNT+o+tpvbu1COAaGHrxltTMVkLjh67h3ACxJXLqjDowVm3mWsQbqLSTWM0ltGMuG7y+2CWFTasMY26x2UVX1qvU0GWUVIb6HwuaZXsfSgtgrBcUyVm3fNI9usGCXpgy0y3GnADwUjCZ2b4JiIrrnRnOvP84jQzbTLy3bBLZTgIpBtQiGtgetTF1D/wLNopyFTTPegbskMa+BzTrxBSFSGsLlxkLbbN8lgj5VnYLTjBRihulaYt4tWdwGsXFqKXxRPLLgacyGr+zZpv5Tw+6nDlYMNbm4jn4q3L2kW85jkeYAr6bt+kIcsTIpu2aV+gM9IX8IXH/J9y0N9M+FA6Pjd2azU153kga8VAE3rw/O6u9CNMCe33OTLG99MaJ3NY8lxV1zNgKnPBDr4ZEZ1Zsg4I04dCMXTZHKuTMI2zScwfcjAEwOsZk+wOuTWCuQ==; 25:eZQygjgtOl1kVvZAV1yA8CD6BFUIF6tHTSUUtySUynMgfuS5g58dJZhZrUOFjU4jTM1HOwws/QbR+3W414Ii7tKHNz51G9WSerVp9YTNV89qF1ihN0+pAAuUUlAF1AEklKUqMWmgVhKUdNjsrW75leCtNda+T/FQ3PctD61VbFZ9i+2Fv/aiXO6dBeSl3LH0eR4opxjdMNuhFo/VC/Aj6/+Poe9qyW/cxmZzhw7roglgliIAwbBH7Ml/i+tc65aCeooT6ugX3O8rHVYR2P27oLp20qSdx6pYfa505ZIKHhDNiHiStsiFW9AN+vbOx4ir3pOiFK3mDyjpKuhASQ2GGmDhv6u6J4dcwaVjJbHdOJI3TiLQM/KXHAf70GxYFOnPrC5AJPr5sOe0afcx7CnL557/ucJneFrA2wEeVWDi40gWvHWzUBNqnP1WVBi7aC3Vr+B46sGyiIdj1boC9P7eFQ== X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2287; 31:dghLa+8XXIEi/hZ8wbfBEn9CLyzKwUazVJ1P0LCfhBU19WrgjJRCPVylptRWi0NmjUgu+w7sHhIzWQ6mWkn7tqBD05eKd2QiPGGtWA6Vnb1YkCG5Fhwo3xV2TEGYHtcSsLnxuV3+KaXi4qTkfx85eA9Km4hC3sK4UJxCvC0QsOAEPAc6NhlWExCMzQPuQmxtn6kwBWWfRtc7srlCz1aG2LXSfZyjph4e+gq1MWFR8s94NKsqWnj5XinC8znj/ql4 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(601004)(2401047)(8121501046)(5005006)(13015025)(13024025)(13017025)(13023025)(13018025)(93006095)(93001095)(10201501046)(3002001)(6055026)(6096035)(20161123563025)(20161123561025)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259075)(20161123556025)(20161123565025); SRVR:SN2PR03MB2287; BCL:0; PCL:0; RULEID:(400006); SRVR:SN2PR03MB2287; X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2287; 4:oGJUrBHwjO3U8ensYOFlHYvfPVsKvsSYDgSd7YJtijrXkXsoqxPi+XgYYbm10BA2hxjNd1auHN3fdkke4w8C0DfM3sOHoNe4NYp6lw9AJ0bmAMjpDO9BOKdDQ0JT+6dj+setpxyb24RCIUjaSIPcVWbJ9SXiTJluINqnQVqzYhyDT1sWQ/O3JoaJ82iy4lyl73LgiJ6MA8y2s0HV3awZDLTxAwcpWdvxxjQXX9pX65ToubXPTD7Rgi3X2HBC3cfb+3Lsp8CoTKJejzUWoRH9btCl+oFZZu+Cyolqx0kBb9tfPDgLfZcacGmjN8qpDAw3EbS66BdSZQyZgKher0F5Wv/LfkQeE4UrLXnK5buht5lLbdyileKeNIt3dy7LxAMP6htdd2kVixhwf2wmOpZi5MBA54l9JoigbJseIgtsK2EJTumRcMEk/AL/N/ikTx1F1W3Prkw46fPkiEulMst0uz23eVcdUvnxLBrkW7Fe0cvsJXOpfhAMyrGSrEBTfqocZmE93Bdl87wB3iXCErJzGNEpPzrDJyvvbJ4IToXCERj/7BSKPn5k2Nm1mJy/QoVeNB6hMisJP6kp7xb9nKZWoBd4CZTKPa94vFbr3r8IPGZ2iIHZK4TixZAOzQN1OKQQymo66IBz6UDk0EMZldOyOeB0QduYg+h9SVmtboU5nORxn1btqWgksnu/hYqOa2WGtgr2KLPc+A8qjmnMe7Zq8S3BQH4KW3LlnGpShFtdZh2BDqhdt3E6+SoVmKgchwMMOZJxHxJAt28tkrE0L5R+NzkKaiVr8IopD13EgK+Uc1hzyPxjC9fgIP/nO6aHHQbmYKDP8f+chL/Z5AJEunKHGsCV792QhXb96507Q4yBfU0Z2T/0tQiFqy2O3f6BwlgRgKnL0c2qBz9TzaFc+a4Lo7Mw7QjW0Jjws0IUFWNMfuo= X-Forefront-PRVS: 0274272F87 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN2PR03MB2287; 23:PthjVhqLP65pJFTL3/jCTRFmzOzWcXq17g6pLUyI5?= =?us-ascii?Q?nE4l+5RHQTh7hDQCG/HXTuHBrC+eVPUur3v2tRlwhaVD8fY4FJPKh2plqNb7?= =?us-ascii?Q?Ooq+JP87E2BbeUoUj/OHv4irfNc4FqfttUpEb1xXU+XCOFBxrfxvovP9+bYd?= =?us-ascii?Q?DBqimaAayOfAFMRmDHQH+EjlHIIIVcCruHAZwmiGPIQnYloZJLKPrCb2qc5B?= =?us-ascii?Q?U/9XcRvJBdJd/X6Kh6MoGiWfzpJw5TriktOtskWf3f1+hIeqLSU6TJ6AG1MM?= =?us-ascii?Q?3QZdLFSkFoQuPxeRPREEGzah9nVkUt3/i982ek5BmDcGfYuDbk2bJ4e86VlD?= =?us-ascii?Q?A2r+M0AKFIdltdbeLDsUjkCRQXmENhGEqgT9fmxC5pdYP1la2ZZrcBbV8Iac?= =?us-ascii?Q?YLiK5HcbqMd24nc+Nuevh/YCRE65rTZWKjzbRNK1Jk8oNUqBZCkau6vQaytp?= =?us-ascii?Q?CXmLiS33tS6uOuhLnbrrEF7qEIQDfrPxWV87rKkT8dkj9hgQet0JtmwxfcPR?= =?us-ascii?Q?Tsw7TCw6S6GAKfbVOoorimuB8fbMwNE2meHEJlDlDXaoxFuwbwxHyA6uQgCb?= =?us-ascii?Q?TzUm0JOcKsE1zHPzCX17vvDnQzC1BfAkmjmp+XhoI9aw4Ps8ZAJN4fuK39QU?= =?us-ascii?Q?xXF31PEcbnPhu0L+3pVBDmFY4Q3gqzjxuwO/e51ctee4mVRw58++KFQWW63y?= =?us-ascii?Q?qi6oD5iQw3vtdg/HCc4IRSnKmBkn24WmEmbgScQl2Wlv2ui0+ffzsQ3eT26G?= =?us-ascii?Q?f8Rc/aDzgq0DzaKYVFRQk4QdMEReO6bK4hBoYkDDSshLRmiJ/tihqvZJeSyy?= =?us-ascii?Q?xMpaQxo+H1aQwr82cw5pUHtimKeq3sjP1L1OXcEIuzvp8oM5Jl9X0ZMSXB/d?= =?us-ascii?Q?mtff583XHK06V/ZBiGX4Ydj68ZIh/hXSUZrDGrAIowKpH24dme1R49BfF+JJ?= =?us-ascii?Q?Ex88nkMSPaZ6mjSOW1DsskJUbaAxiPo5O/bdvsAokRfM0qyBf4mtSJ0l2Q/D?= =?us-ascii?Q?xpRdJftnhuMT9WxO/kThXlQCci5yzSnit2fP8w/XxNbQYBM3qptU2bTt7Ll3?= =?us-ascii?Q?9d+6o93MJKzxVSjYuc9QiUeCEEdkKSvsCmorMvlnmpiAyTmN9ngfdfn8mF37?= =?us-ascii?Q?IZ3IB3D/ZtsoQ22Umjlz2sspF6tx1VmpQ1CAVW2BFUlO7xtrN/aBUWFl2O8A?= =?us-ascii?Q?Gs1v7LgL9W7oYUnahRTZcBkaggZXuyjpnmiyA4V51Iokjr0npImNEgI6plNL?= =?us-ascii?Q?w5P6zTIVobg/cWoUYXrw87+EN76mqEDI0Z0Zdxj?= X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2287; 6:41APTOD4du0DD/x2J7eocSKTlRGLSCp+dGyCGutPP1/blU3h1Ky+FzMUtk+WmWGZLejQUEJAYay6siFrpHuY6eTYwN8zfAk5P18rAvIPbe1L2LDcousZk2u/KVfqRNn1rfwHgAJ4OeGWO+k4WDm9tXlDLxX2P69y0fyk6Ue4+/SrQEInmbtCtYHLWlVS12BbN2NeNt1QwbYWaYixd2zpOEXW800aM1lKLdQxsMJVYMvFZfEbNJsTI8hT+Zi0itvh9eSpwugajtgE9P6gwZ1mR+ZpHm7cehC8WmzvbHYhaJKY7qfYz7C4E1kihwZYl9XwTFP9X4jmIdmNHsaedIqVgMwkcVEE72h0qEyqCKd38Sv12pDxJ+xA/P678lvhAbKSdz34KMxKncqxrMNRlD9UWP7egXSjBRCYQpM1rUq/QZbOrqlWJBl7kVM2i29nQX9/nyhpKDQ54McDugWwFDQbGHgn8wrtMFYetoOTwR9N6yR5BbOWGi1/agu9vo9IrqmS; 5:jcGMyH8uI674oojnFr/GDJd50FZ/bNXIlOxCUEMeCOhsY2Sf+75/F8kG0dr4kHNfoX0Ra1By529N0YdwKXLBmc83Iflhb4Y5Gb3mNcKTQO4re/3Q5fqIUg38B0PYe+eGqpvx94/3at/REKbyKfnqL0i7vleB1U6m8yMgkv4LACldZ+LRhfNnuUYx4/u4zZEf; 24:IR0bl0PO8ZGsEnkSkGu9ScEnrfX4d7D87r3KnxBNPd2Q+VaptRFm/6ti29u/Z2CH5wbRbI2BE+eu7DF93kjlEdN93E3IFtREj1XDvEVMkx0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2287; 7:9nnPbUsYLdgiCsFUx7wT8ZtmVw2l4tdpBu2eg4KMN/v3S1A4cosrLpcB4L1rvbqVYAS5m2+w8PdWP16XNP101wSnjEvH1gi47mHW1Z3xHKiNThqdBbZkl7G/Ydb/yCabFvgiDvTnpOH0/iH0BOPcSXiYcMIyQ51TzjF323lzqP8Ybr16BmxcJujWSffyojm4HBldpHYzxhJWDvjrh4gfwYD4TA30+9pWQ6by0ZBkl5Z3UvVhjN9tRcSYLEBSX4ypHmwaVsHcU78C6z+7OPFF0m9EEEFJ8e612ftubgBs2UlZIFsF3P+8bafIies4nyTquiu5nT16STQAmrgrEmgfYQ== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Apr 2017 13:50:40.1942 (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: SN2PR03MB2287 Subject: [dpdk-dev] [PATCH v12 16/22] 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: , X-List-Received-Date: Tue, 11 Apr 2017 13:50:42 -0000 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 03d0e8c..157a2d0 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, -- 1.9.1