get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/104031/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 104031,
    "url": "https://patches.dpdk.org/api/patches/104031/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20211109043910.4016824-6-g.singh@nxp.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20211109043910.4016824-6-g.singh@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20211109043910.4016824-6-g.singh@nxp.com",
    "date": "2021-11-09T04:39:10",
    "name": "[v4,5/5] dma/dpaa: support statistics",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "8d197638bc2b2620476425def3c898e17649d0a4",
    "submitter": {
        "id": 1068,
        "url": "https://patches.dpdk.org/api/people/1068/?format=api",
        "name": "Gagandeep Singh",
        "email": "g.singh@nxp.com"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20211109043910.4016824-6-g.singh@nxp.com/mbox/",
    "series": [
        {
            "id": 20408,
            "url": "https://patches.dpdk.org/api/series/20408/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=20408",
            "date": "2021-11-09T04:39:05",
            "name": "Introduce DPAA DMA driver",
            "version": 4,
            "mbox": "https://patches.dpdk.org/series/20408/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/104031/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/104031/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 8D38BA0C4B;\n\tTue,  9 Nov 2021 05:40:15 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 540AD41143;\n\tTue,  9 Nov 2021 05:39:52 +0100 (CET)",
            "from EUR03-DB5-obe.outbound.protection.outlook.com\n (mail-eopbgr40081.outbound.protection.outlook.com [40.107.4.81])\n by mails.dpdk.org (Postfix) with ESMTP id B1E3A4111D\n for <dev@dpdk.org>; Tue,  9 Nov 2021 05:39:49 +0100 (CET)",
            "from VI1PR04MB6960.eurprd04.prod.outlook.com (2603:10a6:803:12d::10)\n by VI1PR04MB5630.eurprd04.prod.outlook.com (2603:10a6:803:e6::14)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.10; Tue, 9 Nov\n 2021 04:39:48 +0000",
            "from VI1PR04MB6960.eurprd04.prod.outlook.com\n ([fe80::11d9:6f32:90e:80c1]) by VI1PR04MB6960.eurprd04.prod.outlook.com\n ([fe80::11d9:6f32:90e:80c1%7]) with mapi id 15.20.4669.016; Tue, 9 Nov 2021\n 04:39:48 +0000",
            "from lsv03457.swis.in-blr01.nxp.com (14.142.151.118) by\n SI2P153CA0002.APCP153.PROD.OUTLOOK.COM (2603:1096:4:140::16) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.4713.5 via Frontend Transport; Tue, 9 Nov 2021 04:39:47 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=h0iPP0ZyYUs25p2/SY/UMeLBf+ui1/11hjnijm6Jo9VV6rf8QHadfbCIc5y1CKXSqHggBZOxdmYJpfOyOfNblPsOj8BCIUABr/Rw9FUamTxKzsOdjdFVlYwPgmCRz1kKtvcjlhqhaPIZJzie0VtsrC+DNES8qA1N0Kh05z8sgxyQiD0D5XuTDmed8pJBep8LgZXKM4749Jekc+iRNLd181G8lp7JC6El0jrC7C7uTUY7CnpgyoX/IVtxaD4PrZmZSwDPmQMa64Um5Qbt3q+ND+G7kRPBZ8YiWpRJsOPqW+7g7hIwYb3YyPzc4sqC7cwgOP5gyvEHFHEgh2KMY/nAew==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=7qmAqj9RSk0ONRz4ZwUPmrogx2yMaXy4CY1dBk6Pr7o=;\n b=Kl9N88XHS0REtnmzFtCxlIiBo1mNJUyHogt68uHtjaJTAoyXtoIf9741/gC1xPzTlzealM3f3Mlr3DvJ58qGYVAS5s3NDGhZmctTMgbBz4WTxt2sf6jXSxtDe1IjPU5vCqkGHBv0EHF3E7VGNkkbay1qG1BqLGHQMWZ0pq19kHDDulgcLNWWEDMW0kMhiO4zfr62iwlc30wbNCNkw1W9JKNzpp8sMxx0hHGiCPZw2TPmSNdL8hOE7JQ7wyNaUOWzHbmFb0o1zs7SVTltmOTa8DJgrUPtqdziv/N35YESJFacXjia7Zg6L7cOUuEIrdGtDMnha31tmIRCA/DZZssK2g==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass\n header.d=nxp.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=7qmAqj9RSk0ONRz4ZwUPmrogx2yMaXy4CY1dBk6Pr7o=;\n b=U0aDeU6UBYYaFfIE5dyIgJZjHucEql8N03k4z0SM6AC+2yC5t1kd9uDr+oNVtSVfDv0gfYuK9AZke716I5Mj6edM07GhtazLxZ4Osdma+ShJvzCFQe+LSEyX4SV8U1+5XZIjto8NAO5oROm3m5utFZoHTw7z8GZdSVdDMmAFT9g=",
        "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nxp.com;",
        "From": "Gagandeep Singh <g.singh@nxp.com>",
        "To": "dev@dpdk.org",
        "Cc": "nipun.gupta@nxp.com, thomas@monjalon.net,\n Gagandeep Singh <g.singh@nxp.com>",
        "Date": "Tue,  9 Nov 2021 10:09:10 +0530",
        "Message-Id": "<20211109043910.4016824-6-g.singh@nxp.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20211109043910.4016824-1-g.singh@nxp.com>",
        "References": "<20211108090704.3585175-2-g.singh@nxp.com>\n <20211109043910.4016824-1-g.singh@nxp.com>",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "SI2P153CA0002.APCP153.PROD.OUTLOOK.COM\n (2603:1096:4:140::16) To VI1PR04MB6960.eurprd04.prod.outlook.com\n (2603:10a6:803:12d::10)",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "2ba02083-93d9-4b75-2849-08d9a33af64b",
        "X-MS-TrafficTypeDiagnostic": "VI1PR04MB5630:",
        "X-Microsoft-Antispam-PRVS": "\n <VI1PR04MB5630BB552CA9BE38B7370EA9E1929@VI1PR04MB5630.eurprd04.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:1751;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n mjwoAYJi+rRasdg8BgV9ssF3MOfVxDxgiIck3ROE9iqLFF2GBu9s2RDN3e36X2ia2YZ2UUtoA1pRHC2/Gm/0UOLChIrzJGLXfZ2xD5qH0wQeUGjY2r60FkqTglqF/1aA5If9QibLftIpJzcwp1EDmHh3gLriqYBie16flCABjmWgMJKq53lVrIax6UC1C/7cHoLRSDSwXjryLZy4S4M3FgYGFlkzGk4v79jb5s2WCX65zGZr027Fy/N6Nd3agihKA0Xu/3GE2h5h5vLp5Uzpb9U2RwiQa/ImU0MzsYeFLLLtgri5adZIvdQ+RRbfUS4zw6kN2TpeWXhchskh2j0gGXR0B3SJB56n0FOtW6IHpJBNFea+4IfaeH3BgCNI0d5gLVrtW2srSvx3eUGsMIhzC2iHQEgJQ14u5JV7bGMKoAtc4mcnvPJpOxmtf8ZrIYKXgdQQEcOkEiEv0SuGSsRJQLdJiQGft8UE95wVMJXZO4XCCwgY8Kuke/I1/HAa51vOaYJvRY8bDCVFIM+NlAasLfsSbzpxMZk9IzXBXZ83BmpCPxZZ19zi0Q85w8dO06f8wi1b8tSFl6G7Mja0p5pU/fYSS2fyUSf4Y+Iuajv68FFjOMESOn80zReFXSe+2wH7WPqqr354CHCPmmA0I7CfEIwoJp/Wz2ryLoHh7BH/EffIcuDFPt5hxietOGCGxCVm3Rc4ScMdOQpzqsjm1KGnDWplsEAVHR4+F/7jW6X5iBQ=",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:VI1PR04MB6960.eurprd04.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(4636009)(366004)(55236004)(1006002)(6666004)(66946007)(26005)(52116002)(7696005)(186003)(316002)(508600001)(1076003)(66556008)(2616005)(5660300002)(66476007)(8936002)(86362001)(956004)(4326008)(6916009)(2906002)(38350700002)(8676002)(36756003)(6486002)(83380400001)(38100700002)(110426009);\n DIR:OUT; SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n zUU/qiRrkGBrvh/aS0bHYh1aPkG2Fz8VeD7u5fXTOGJ+Lkau3gEeb9cJw93Z0UBCIYU10IRXBwZQ17dtagN8RYphgGC/1+oV6oVPdT+K+oH2jn0dz+jQP3V/lRkdLh7sKTK5J572wfTb12zCDoXZwFMQn/OLArCZ3lJsbW+gCGx50a9Hf9WY1+jOSFTq8f+KuZ+TSBy0IXUgxtq48pMXEsrVTNfoxksyBJPVVLrKNQhfJ8+IIgLiLMt0P2wlUNlEbgpgL2FH6BzxEqZACdW2srrWNhBHajOE+B8glCsyG0e9cZO+NVjwkpfV3qFG7y2yWLxIbOFkOjOuZn21H/C0yTuD8pUZ6GlmSHe1s0J8AL+9xuMUnEpNZEBbNjfZ4i9fwOXTfux6D0V0TI0tMV5Fmjumzx/1gbgpPpnojT59Q3tqdPKxPwdIEqDdqLwf1gekOtu9rUJgyRwljBodNW0Xgn3hoBpmwRSu6qykBClDpF2c9N69dyU4IOcBgYrWLt7+3rRcy1/RSoPLMRt85oRRb4LHPuLi+JA4XI93CEkRbjPnKbEKQ7GlzP3FwuMurDV27kpDtOWoIXy0BnQyUPMg1GM/RdCuIbh/pu9UOjyIVOVe6Tx+E4NH/mmwWeL360SQwEssv/kcH3i2iNL8xR3Co0X8lLVPcztDo/kSCv0CDyUkyLCAyA2dAQtsDtueXD+LjwCeftCOzelVILI2blU4TLszo93YKGqxG9YLYwIwNmAdmLk0VyeEzmOHsc4b3Js3/Z2rSWrwHOup0VofL17iDXYV8rXjnvatKehFuSiCNhWVFNWiqG5GDcuqAvty1CSukZHwb4atcFVrbMky9t1PjSfbnfYc6yjg7wqLZUvMmhCiaS+zt/1FPfq+HyBdVAW+2DAwr3xqP9Fw9B2X1xYGFvH/8TuCzqaBlCx4u/xDiqkUzqbAn5H0dV82LdNJJ3vza8y6bczReAf+trllXvolmvKM1X7QwjrK5wJu7HC9qdAawTWZNbnUDcYf0RJ5Y1lUQWxddGX5UumyYauVk80lUwHb7tnVimi76bFoAnCy9OcYPnYsdiK70Bk9XsddykvZAoyVXsRLUpHb25DzSGtuyNmHfqx6WHEjxouDeijbRbgbWkEufvxSM2eMiRV6+GjVYnKkyG+wzVzc58PdwZin1wc6hFAx6aNC+Yw7W+pmDhGeFxyo5sVi6RBmvaeXmgTIx28VzWCjPgX2XTuA5DygRd7zHQ8pNmwvAr0c3F/itVaFOksC6d0zlw7TyhLiaHymeAZPPeQCvW1aImIYM07Na2ncYbXSDsWNCjH29F0ABZmAo8vnTdIYhwPH3rT5qi4ARqi60cL+8iH7QWPu6vV3BKVGiySuL8t4dt7Z8OSLn/Gy16ga8HiuVU98CRAtHHLjAkEkUrjJ0V/LeQyhmJ00wOoy1Klmm+tGgkkiiRUieFCUandnb1etUZAAnurm+spl8KNi+0a/MYW0A1p2JLZvX4DliW8iGMMX8ciA5/J45juwgVQKw1b9fnkGpup6H0ZV20aDggmnkA+mXUEoYQOlHqPFmLdhGl0G931w6A2t4VM=",
        "X-OriginatorOrg": "nxp.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 2ba02083-93d9-4b75-2849-08d9a33af64b",
        "X-MS-Exchange-CrossTenant-AuthSource": "VI1PR04MB6960.eurprd04.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "09 Nov 2021 04:39:48.7626 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n ovxLciUiQrxBGUgYuHoJZ21vFOuIq7C2PsGfV16mARwhxXH/NnJ23Ku5Yy+g1Jpt",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "VI1PR04MB5630",
        "Subject": "[dpdk-dev] [PATCH v4 5/5] dma/dpaa: support statistics",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "This patch support DMA read and reset statistics\noperations\n\nSigned-off-by: Gagandeep Singh <g.singh@nxp.com>\n---\n doc/guides/dmadevs/dpaa.rst  |  1 +\n drivers/dma/dpaa/dpaa_qdma.c | 51 +++++++++++++++++++++++++++++++++++-\n drivers/dma/dpaa/dpaa_qdma.h |  1 +\n 3 files changed, 52 insertions(+), 1 deletion(-)",
    "diff": "diff --git a/doc/guides/dmadevs/dpaa.rst b/doc/guides/dmadevs/dpaa.rst\nindex 4fbd8a25fb..7d51c8c4cd 100644\n--- a/doc/guides/dmadevs/dpaa.rst\n+++ b/doc/guides/dmadevs/dpaa.rst\n@@ -57,6 +57,7 @@ The DPAA DMA implements following features in the dmadev API:\n - Supports DMA silent mode.\n - Supports issuing DMA of data within memory without hogging CPU while\n   performing DMA operation.\n+- support statistics\n \n Platform Requirement\n ~~~~~~~~~~~~~~~~~~~~\ndiff --git a/drivers/dma/dpaa/dpaa_qdma.c b/drivers/dma/dpaa/dpaa_qdma.c\nindex ebe6211f08..cb272c700f 100644\n--- a/drivers/dma/dpaa/dpaa_qdma.c\n+++ b/drivers/dma/dpaa/dpaa_qdma.c\n@@ -319,7 +319,7 @@ static struct fsl_qdma_queue\n \t\t\tqueue_temp->count = 0;\n \t\t\tqueue_temp->pending = 0;\n \t\t\tqueue_temp->virt_head = queue_temp->cq;\n-\n+\t\t\tqueue_temp->stats = (struct rte_dma_stats){0};\n \t\t}\n \t}\n \treturn queue_head;\n@@ -619,6 +619,9 @@ fsl_qdma_enqueue_desc(struct fsl_qdma_chan *fsl_chan,\n \t\treg = qdma_readl_be(block + FSL_QDMA_BCQMR(fsl_queue->id));\n \t\treg |= FSL_QDMA_BCQMR_EI_BE;\n \t\tqdma_writel_be(reg, block + FSL_QDMA_BCQMR(fsl_queue->id));\n+\t\tfsl_queue->stats.submitted++;\n+\t} else {\n+\t\tfsl_queue->pending++;\n \t}\n \treturn fsl_comp->index;\n }\n@@ -754,6 +757,7 @@ dpaa_qdma_submit(void *dev_private, uint16_t vchan)\n \t\treg |= FSL_QDMA_BCQMR_EI_BE;\n \t\tqdma_writel_be(reg, block + FSL_QDMA_BCQMR(fsl_queue->id));\n \t\tfsl_queue->pending--;\n+\t\tfsl_queue->stats.submitted++;\n \t}\n \n \treturn 0;\n@@ -793,6 +797,9 @@ dpaa_qdma_dequeue_status(void *dev_private, uint16_t vchan,\n \tvoid *block;\n \tint intr;\n \tvoid *status = fsl_qdma->status_base;\n+\tstruct fsl_qdma_chan *fsl_chan =\n+\t\t&fsl_qdma->chans[fsl_qdma->vchan_map[vchan]];\n+\tstruct fsl_qdma_queue *fsl_queue = fsl_chan->queue;\n \n \tintr = qdma_readl_be(status + FSL_QDMA_DEDR);\n \tif (intr) {\n@@ -812,6 +819,7 @@ dpaa_qdma_dequeue_status(void *dev_private, uint16_t vchan,\n \t\tqdma_writel(0xffffffff,\n \t\t\t    status + FSL_QDMA_DEDR);\n \t\tintr = qdma_readl(status + FSL_QDMA_DEDR);\n+\t\tfsl_queue->stats.errors++;\n \t}\n \n \tblock = fsl_qdma->block_base +\n@@ -819,6 +827,7 @@ dpaa_qdma_dequeue_status(void *dev_private, uint16_t vchan,\n \n \tintr = fsl_qdma_queue_transfer_complete(fsl_qdma, block, id, nb_cpls,\n \t\t\t\t\t\tlast_idx, st);\n+\tfsl_queue->stats.completed += intr;\n \n \treturn intr;\n }\n@@ -834,6 +843,9 @@ dpaa_qdma_dequeue(void *dev_private,\n \tvoid *block;\n \tint intr;\n \tvoid *status = fsl_qdma->status_base;\n+\tstruct fsl_qdma_chan *fsl_chan =\n+\t\t&fsl_qdma->chans[fsl_qdma->vchan_map[vchan]];\n+\tstruct fsl_qdma_queue *fsl_queue = fsl_chan->queue;\n \n \tintr = qdma_readl_be(status + FSL_QDMA_DEDR);\n \tif (intr) {\n@@ -854,6 +866,7 @@ dpaa_qdma_dequeue(void *dev_private,\n \t\t\t    status + FSL_QDMA_DEDR);\n \t\tintr = qdma_readl(status + FSL_QDMA_DEDR);\n \t\t*has_error = true;\n+\t\tfsl_queue->stats.errors++;\n \t}\n \n \tblock = fsl_qdma->block_base +\n@@ -861,16 +874,52 @@ dpaa_qdma_dequeue(void *dev_private,\n \n \tintr = fsl_qdma_queue_transfer_complete(fsl_qdma, block, id, nb_cpls,\n \t\t\t\t\t\tlast_idx, NULL);\n+\tfsl_queue->stats.completed += intr;\n \n \treturn intr;\n }\n \n+static int\n+dpaa_qdma_stats_get(const struct rte_dma_dev *dmadev, uint16_t vchan,\n+\t\t    struct rte_dma_stats *rte_stats, uint32_t size)\n+{\n+\tstruct fsl_qdma_engine *fsl_qdma = dmadev->data->dev_private;\n+\tstruct fsl_qdma_chan *fsl_chan =\n+\t\t&fsl_qdma->chans[fsl_qdma->vchan_map[vchan]];\n+\tstruct fsl_qdma_queue *fsl_queue = fsl_chan->queue;\n+\tstruct rte_dma_stats *stats = &fsl_queue->stats;\n+\n+\tif (size < sizeof(rte_stats))\n+\t\treturn -EINVAL;\n+\tif (rte_stats == NULL)\n+\t\treturn -EINVAL;\n+\n+\t*rte_stats = *stats;\n+\n+\treturn 0;\n+}\n+\n+static int\n+dpaa_qdma_stats_reset(struct rte_dma_dev *dmadev, uint16_t vchan)\n+{\n+\tstruct fsl_qdma_engine *fsl_qdma = dmadev->data->dev_private;\n+\tstruct fsl_qdma_chan *fsl_chan =\n+\t\t&fsl_qdma->chans[fsl_qdma->vchan_map[vchan]];\n+\tstruct fsl_qdma_queue *fsl_queue = fsl_chan->queue;\n+\n+\tfsl_queue->stats = (struct rte_dma_stats){0};\n+\n+\treturn 0;\n+}\n+\n static struct rte_dma_dev_ops dpaa_qdma_ops = {\n \t.dev_info_get\t\t  = dpaa_info_get,\n \t.dev_configure            = dpaa_qdma_configure,\n \t.dev_start                = dpaa_qdma_start,\n \t.dev_close                = dpaa_qdma_close,\n \t.vchan_setup\t\t  = dpaa_qdma_queue_setup,\n+\t.stats_get\t\t  = dpaa_qdma_stats_get,\n+\t.stats_reset\t\t  = dpaa_qdma_stats_reset,\n };\n \n static int\ndiff --git a/drivers/dma/dpaa/dpaa_qdma.h b/drivers/dma/dpaa/dpaa_qdma.h\nindex 6d0ac58317..bf49b2d5d9 100644\n--- a/drivers/dma/dpaa/dpaa_qdma.h\n+++ b/drivers/dma/dpaa/dpaa_qdma.h\n@@ -210,6 +210,7 @@ struct fsl_qdma_queue {\n \tu32\t\t\tpending;\n \tstruct fsl_qdma_format\t*cq;\n \tvoid\t\t\t*block_base;\n+\tstruct rte_dma_stats\tstats;\n };\n \n struct fsl_qdma_comp {\n",
    "prefixes": [
        "v4",
        "5/5"
    ]
}