get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 18181,
    "url": "http://patches.dpdk.org/api/patches/18181/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1482180853-18823-24-git-send-email-hemant.agrawal@nxp.com/",
    "project": {
        "id": 1,
        "url": "http://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": "<1482180853-18823-24-git-send-email-hemant.agrawal@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1482180853-18823-24-git-send-email-hemant.agrawal@nxp.com",
    "date": "2016-12-19T20:54:02",
    "name": "[dpdk-dev,PATCHv2,23/34] net/dpaa2: add support for l3 and l4 checksum offload",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "536bba08226eb3bbddfb3217be62088e2abf00e4",
    "submitter": {
        "id": 477,
        "url": "http://patches.dpdk.org/api/people/477/?format=api",
        "name": "Hemant Agrawal",
        "email": "hemant.agrawal@nxp.com"
    },
    "delegate": {
        "id": 319,
        "url": "http://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1482180853-18823-24-git-send-email-hemant.agrawal@nxp.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/18181/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/18181/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 61BEBFABF;\n\tMon, 19 Dec 2016 16:22:18 +0100 (CET)",
            "from NAM03-CO1-obe.outbound.protection.outlook.com\n\t(mail-co1nam03on0047.outbound.protection.outlook.com [104.47.40.47])\n\tby dpdk.org (Postfix) with ESMTP id 7A923FAC3\n\tfor <dev@dpdk.org>; Mon, 19 Dec 2016 16:21:54 +0100 (CET)",
            "from CY1PR03CA0021.namprd03.prod.outlook.com (10.174.128.31) by\n\tBN6PR03MB2465.namprd03.prod.outlook.com (10.168.223.19) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id\n\t15.1.789.14; Mon, 19 Dec 2016 15:21:52 +0000",
            "from BN1BFFO11FD031.protection.gbl (2a01:111:f400:7c10::1:112) by\n\tCY1PR03CA0021.outlook.office365.com (2603:10b6:600::31) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id\n\t15.1.789.14 via Frontend Transport; Mon, 19 Dec 2016 15:21:52 +0000",
            "from az84smr01.freescale.net (192.88.158.2) by\n\tBN1BFFO11FD031.mail.protection.outlook.com (10.58.144.94) with\n\tMicrosoft SMTP Server (version=TLS1_0,\n\tcipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.789.10\n\tvia Frontend Transport; Mon, 19 Dec 2016 15:21:51 +0000",
            "from bf-netperf1.idc ([10.232.134.28])\n\tby az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id\n\tuBJFKMhm029110; Mon, 19 Dec 2016 08:21:48 -0700"
        ],
        "Authentication-Results": "spf=fail (sender IP is 192.88.158.2)\n\tsmtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed)\n\theader.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com;\n\tnxp.com; \n\tdkim=none (message not signed) header.d=none;",
        "Received-SPF": "Fail (protection.outlook.com: domain of nxp.com does not\n\tdesignate 192.88.158.2 as permitted sender)\n\treceiver=protection.outlook.com; \n\tclient-ip=192.88.158.2; helo=az84smr01.freescale.net;",
        "From": "Hemant Agrawal <hemant.agrawal@nxp.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<thomas.monjalon@6wind.com>, <bruce.richardson@intel.com>,\n\t<shreyansh.jain@nxp.com>, <john.mcnamara@intel.com>,\n\t<ferruh.yigit@intel.com>, <jerin.jacob@caviumnetworks.com>,\n\tHemant Agrawal <hemant.agrawal@nxp.com>",
        "Date": "Tue, 20 Dec 2016 02:24:02 +0530",
        "Message-ID": "<1482180853-18823-24-git-send-email-hemant.agrawal@nxp.com>",
        "X-Mailer": "git-send-email 1.9.1",
        "In-Reply-To": "<1482180853-18823-1-git-send-email-hemant.agrawal@nxp.com>",
        "References": "<1480875447-23680-1-git-send-email-hemant.agrawal@nxp.com>\n\t<1482180853-18823-1-git-send-email-hemant.agrawal@nxp.com>",
        "X-EOPAttributedMessage": "0",
        "X-Matching-Connectors": "131266345122033802;\n\t(91ab9b29-cfa4-454e-5278-08d120cd25b8); ()",
        "X-Forefront-Antispam-Report": "CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI;\n\tSFV:NSPM;\n\tSFS:(10009020)(6009001)(7916002)(336005)(39410400002)(39380400002)(39450400003)(39400400002)(39860400002)(39850400002)(39840400002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(81166006)(5660300001)(5003940100001)(110136003)(104016004)(626004)(6666003)(2950100002)(6916009)(305945005)(47776003)(76176999)(50986999)(356003)(8666005)(2351001)(86362001)(69596002)(36756003)(92566002)(2906002)(4326007)(189998001)(106466001)(50466002)(97736004)(48376002)(8676002)(8936002)(50226002)(81156014)(33646002)(105606002)(77096006)(68736007)(38730400001)(85426001)(7059030);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR03MB2465;\n\tH:az84smr01.freescale.net; FPR:; \n\tSPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; BN1BFFO11FD031;\n\t1:qmEokkii1PWLiiEPdB1vc9bpXnO+hqIIDQQv5idTdDTN3TE37p58O2qdLuiHUTBgMSVQm6Y6CHv7QOPaWc2ATo9hQSsZbizfrOB5vJ1m/PCZp2J4m54IJxvTevBDOWiN2cJW7JGPtIL0+4WSiSLfBlBZgWpp2NjSEz2V8sChJwebzf9MQh1vW8rJZJ+J7AcvgwALkzbBVX3AQULS9PCtk00Nvo3HDHnXxvqlxzmOdizzwg6bP+pUiTEAHFBJ8SxAlQmKFsB9zK8YHm0b4nXTeyxcIlRKhbdRzXDzZR5tXmQhBK9v964dYR+CvPE6GyD1BPMtBcSSry0ccWVw0JNWGM0Ws5ViMYfwmNOGg07pi3uNL/3goFmiFMCkHL2xgQeolO1LVmeEPuB/TojaWtQKfmPFTMjbeocLCLNwJzje5tQKJ+/VcUwuPqkKhFh6tYNDM1xzfKl62czHFOGeqnG0YvYBxPF5z8a7NNkSdhhrUlcxuCpuy/9t+1T4M/GrIDsxQU5zT/s4vQDS8i1VE5o1CvVzQl7pkR/jG4ds5g9SYfyfhu9YRbcpGEWw+eU/XCvT9ePPhBHuRao6vHgnTYuenx2SC4T9EZLD2U3ihHXXzfI/zWhvFju+5HPV+UuzLZfMSlRi9dwYH7lkA6Ng8FYRAwckxR5FjCpwwf4nNGDOQIwtvQ8xxpVguqzMwDtoTgpJUvpz8NdRATDnSNnD2wtc7M1oKqY8qPc6Kj1y189daN1alBakwwHupfmx3uqhw/gkOa5SgeRDPovmPQ6Jj/yLnA==",
            "1; BN6PR03MB2465;\n\t3:PMu29iL8ej5lnuXiPzX5s1N+7MfxQXyUP/BHsh4rwzWMOLY51iHDiTK96J2MH4q2VmBneDy7a1DB87WqP1soXFw5YcxSjZh4Ra9vUkdM8tU2zRq1GTOH7qaw5ia45vVQgDUEZyQHlriCH6mFlW7oES1aJDdTGsxpKHDr7kGk0C1iRm20j+mpxH2pT7/k5L1FNls9JmrALYul6YLorA/1GQCn4+UY6DICv2Qh9u0plxnCpGyHnLVx8uN0g+LfTfvx2B2e2oVBgPN6K81z5tLPbIicpO0kR7lhaa0KbyXXCHx251TR8976KeNhoCU1q5aqPRrA498C6QFiO2zV9NQgFzizkAjJ1vHmuI/L9Sq+hS41JUyidMBo6wXMzeevuN8a",
            "1; BN6PR03MB2465;\n\t25:uqj18RhhwJZlvU7OOEWm53oUWvzBQh5YOUZGls9tA3soTgT0U1BPLDMLcjlp8cWT9SevWdQwRJIzQZcCDYZnOJ0iB9lp3a7OOZUGDtxUOxvdh8c0aj+w4vaKdAeSAWjF8bIkEVQpVTOgcSjzFv4PIrcnBAB3qy0Nyhfgh/jThve9kzoaLtzWrXYZ3hcSIGc9XkAjX8cWHL7EXrrnRKe0FFqYDSShz92GpluTkTo4iEl96tB1kZbcUG9moojuvbD2blpuAUmGA0LmVI/LM9EyhuZ49m0XqxSsLaFFpzpyvOMujEM8nUZoKac8Z//FXDJBLGoXki7uWSgeXW+JLAbVYJFJ/u/UhppdOuhb8+EEUNfr04jPPdxPsw+8Z+yPG7OwfgRYkzO332Mtu5WMiSEVAQrzzX85b8Wv19JFcWb4Qn34NL2Jrm398ZWjlFNzN9QkhcH72hWMvP9n2jJYBZkjJMRiSstZrJ3W+WgcRCOHl3kR5Z64/YGEqMo/wAjEr4CTr3Awqoq39Vozk+y/bHOFrzVazsY2VvOki1gXYAG/BDqFmVzccvDkYxFpD4hXltiHThCGyDYlMr56Ip96wlGjzLDE2mgeqg0apf0ahXVCcb9J+BmE89rw1aoc3Eempn6U87RmgqAM6Os8OCv65fiwWbly+P+thCCRSNfO8CYZgoYNr93bNz7fhB45sdzEX6aD4HzMgi+WNEKNYOxvR5zqGSVnO8maGxD0UkV01a7BRrBUT0SGSQV5I6Rj6DeYjVgSMUJjirRDMWxPalT6daY2tA==",
            "1; BN6PR03MB2465;\n\t31:8CaRvBwqbZp0Hle13S2k2uVHPE8ARO4eIs0SXMmmGU1wtUVvwQwpp8uNBRQ5ogPZU5QydOGIW9CYTm0LO8HeI0h6F9u1pmG5JqsFAZRUhCMsyuTcGswmpZ3P/Qn7XcW81E6no90pLduHwM+S1ZxJM3n3OdcDBeRHmUXSJaM5uZzoq56LiHSnTqIuato2jYuug++4bc9LhhchIFde5QSYbe0dH1q5kPo4wDaD95y5bZ/2GYOdaQKkxjSHW1/4sgLVOd+PM2IlfCE9YiSm+ltiucn8IwknKwXlXTkTqbjDZx0=",
            "1; BN6PR03MB2465;\n\t4:SSHVKq1vKbvKt4YCpQm6W1d5LQgf9A83WMguYYEvP24DRBKhlCOKUCVt/4zVWSDVEdM0kqJtaPBvDz1Uysi6LFCraRPBs0PbhnTa87mqNmYrI503ySjpWpiMzoj0ke8BbKgYo6wW4JVTX8+6RgsQ5eyVGMC7M1zlbU18/Qqur8hMLL2M6dh4i8F/wfAQSLStdm/9OhFQJ7KCkIa562RzNkP02e42izYl1jRQ6iSO9bK6idnE9MBZDH0cT5+gJgxpmM4nqQJQZ9PZ9LU98Si8XgpWAOTa/hx2jH6saA9/U8Yaoch4MYV/lIFpe+3S2K9Of8keEQ7LbZT64RVP7C0VaNoZZxPC+SwyIu/0WOJm3UvaG4bWHjfg3+OT6ZpeHdEXmNgiYKmREyi+ikpXKS361h/ScfNGlLoKZvyqVu0berywjt+wF0b8ZCRanUT+/MjcNQr1K2sw6f+cBT/pZ35Ez5HL2ziueRVu5kgSaAckQZtyeoU5gHioTwsuYZKEn06jwYLt7+AQ6KP8x1d6EVX0Z4bF0eRXxwtuWX5e3KrxGnpeAZ70tM/8AAN0fWrYcHG8R8d8+7zWjK5FsibklmnktdssEP191xw60f7iTv+FA/1v8XTA7x7ZYTNI66z0ZMgT7rSOKfO5NevDy+Vt7XDVO1Km9iozKmtyLoPELp+vpksm6Ib5J7Mt65pyY3NwGeDXX1QBIEfCgVCOMVIq9dF74jzKCf++ckQwBgW0C4JRgH1uNANZjyy6XzTM+JyRCpsD",
            "=?us-ascii?Q?1; BN6PR03MB2465;\n\t23:xDpxInvCNsMK+NVUAb7AemSmvlAF4sRodMQx/lyqB?=\n\tCuk/vnskUvterx87zZhHhH6uDck49a16UqyCpCvVpWuBdx8MSyfmynFpf8djwVhAosSKK/9nYZ3yFFHzv17q594h1D+fLWRlz/cZ6lryYeAYXe8CrjpPrxe9Fx0sUpW2M1vEpxTjMkmtKXeg36HP0OdC+TvuLszSyxleQ+Xnm6iqCR8on8rYYFj1h1/sXK9+rdy//53ELspHH6yByHNGcF5cFy7m9V71ZbZL665xaEufE8WWwCI54gNVteiHzPHGP7zek6/noSe6Q4Jiijd9H36Cr3F5avvHNaxsvB/nq0r2YoneI2eabKWvwn3HzEsVjjcvRcWFxWEaMS5zFrHABtOoKccczv7TEN1Vro/ja/oqFOis/Jb7rdlS/agnq6J/goNqYBHeoVhhEcCMfuEyqGbhOW7hLMtPFBicKTKp1JlLK8l8Cp7CwzsHVoH2C3EtWEwr4j4Pl28tKVpSEkHAZEpbk6HnhCgJd9OAr49dc/b8HzHPSvRTEdD+Tyx9cjRipmYLu/fQc4kENZurn2kUcsAothwK6cSYZus2+WEGPCSZAdbxVJg8dumDUSoMUeV9w0YaxdQtA1W79yCvwQA+i4A89EG4Llz4FN54klRxDhI+8YbXpRlWZCXL6g0dE/ZwtPn0kwUKF5YJ/8D3vKiDqwCFT2bQZzE69yB8U94hjm6ZvKJis8oEJsM857ajBx9ai1VfpzwCnBuzbTaqPOryNzCshnXHTH2vQcu7pcjJk7L6xXy8B1ehCIhqIFvSrVVfqMrpKv8dU7fVfWmyjT/PTNXCVYDoS4k8E0D8f+QzD0JJp4ori3iUHbOyh53e6/D7oDU4XM/Xi2zF0M3/ytBwGrhlzqWa9FsoIjJyNaTYRpysspqe5h1nGhIIgoii2DGgIR2fIcksZ/rJTwEz2UJV5pzZ+SYud3dJGhXB9Xe6hdoiiYvQJX4Own0Ywy0HtvMndyA1R6RXMLZ3hx6iIaFv39ujHgohHn7PYC47Vqs9hRgfZiKx1elIzRR7qs886b6nV3tbRmHIzKwgn7DZ+2QYOxw7xtdoKwoW6KbBfpUpHjlLerBMkSKQjBTfV6anlFszFzQmVFaT6bd0HJtOIlMjMPN+XZHa11xfAQIQh7Lqi+dqagKLg6KXTBF2rkGZQwxSiIFW6MkfQ5SIUDttpVJzv6hexH7g1rwJSBYEyScBSr+HN3hEQW8sfXxwAKzdi6puJBZik4DwLYYI2Av9mdcmvdsTYIhCCZJcz0iqqxqdg2Hc+hfPKi5yTCIJTHGuA+1ojM=",
            "1; BN6PR03MB2465;\n\t6:WdlBQELLjj6c9OLS3T2uaWbwS6nZtyQr7QMKg7O2cuMSk0a8vGQ66CNmtGtJfQ0MJMzG7sybB4h6OALuIvvQ1ngTUbXKSJq+1ATHc0ekabMLkD05vCNuPymd4/qShFzYoFIQgn+sjCx73MxXzUDfrIKoeFQUMBodctqkjtDGHkPzfKUQ5f3ANqfTBroE9XE68LJVHoW0roT6i7ifhoauOUTxvmxia7Trf47wOgWNdfTsztxr2iRVR05PFpmXVQpAQ9ex4uL1dPR3d8rMRrnWUKGsjLbiwhuuyXxiWFHKCWdKkNHJ5b+uPXa5GFsbB9zmGS5a7tuj+8MTrLxyiwwPbGsH6u1g2OE15486YF1yRg17A8bbxuYelqrZyHDoIJxtH2N0d9InLCHO+z0DAXmmo70tVuOiQ9yjxtsJ8P0lMRrSqbfhRTiAj2ev/IoYY6wf;\n\t5:OpUTwxvd6g1CuKw/jr4X1WCFbpkmCf7KAi93Cy8A/mJm3j/IyOqRxw8TasVNf3ulSN2swfrvkmE5fqa3x7e72hPcrMgR6vFR4hzKYk3iO1RbVOxXh26mNc3jZ63mdxNoi+d+Dlsh+Ahru0Y4dymKPLdH2ylC6yIHg2JhTjh9iIEu2BqV6jkTOAegEE6cqZ8q;\n\t24:kY7jg4Fd6+2pBP4zWdLues+DXMAPqzYHDAHJs9ha9iqHL41MDXF2dmOmVwzz9hyUQLGThrxj9QoUAYTvcOHAvclVphpvPUdlrwN8d+fh6fI=",
            "1; BN6PR03MB2465;\n\t7:QjLNVEbRU/5hhQqBl70J0lhYuS4Jsp678deWE8O/yziZnUoHS8vkIH9KFzeuzRgMkkdOpZ0qjfJVql4PCjh53ZBXNSqV45kNvpCNzjZhXP5MY5OECMguoMdM1pli9eOADlxLzvJOo2OAVLzDHczBGh/bVL84K8Kp5KMxl5Uk+QILD/2uWDc+dna4FrbndivWXqsQaWxNgvqYi4Hc1SZtruv8xjtI3UStfFQ+jzIPz11RBpMsbfEqD9peGPu8nvW/2PG2lRluw8BKjhZ1Dxaoq+NQwAnO5ZIlSg2TGVxj9n1sMpwX9tbrYNStRRb4OytfScj1STNKhkRoVEnK8eZQ580x3A2DnVA7x79sP+BA+ZtZoPdjlnKB+KTxLumRI88ec6WFoHpY0cRu29HzBO7Nww/qD0saYyZ48YKPguUWU90t8KHLTgXfHXIrxa6QMrXY0VrP/fDtjBjK/0N5S521ug=="
        ],
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-MS-Office365-Filtering-Correlation-Id": "e4434a5e-fe04-4e4b-042a-08d42822c258",
        "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0; RULEID:(22001);\n\tSRVR:BN6PR03MB2465; ",
        "X-Microsoft-Antispam-PRVS": "<BN6PR03MB24652F15F229031FEC24987489910@BN6PR03MB2465.namprd03.prod.outlook.com>",
        "X-Exchange-Antispam-Report-Test": "UriScan:(185117386973197);",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(6095060)(601004)(2401047)(8121501046)(13018025)(13015025)(13024025)(5005006)(13023025)(13017025)(3002001)(10201501046)(6055026)(6096035)(20161123565025)(20161123563025)(20161123559025)(20161123561025)(20161123556025);\n\tSRVR:BN6PR03MB2465; BCL:0; PCL:0; RULEID:(400006); SRVR:BN6PR03MB2465;",
        "X-Forefront-PRVS": "01613DFDC8",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "19 Dec 2016 15:21:51.8445\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-Id": "5afe0b00-7697-4969-b663-5eab37d5f47e",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e;\n\tIp=[192.88.158.2]; \n\tHelo=[az84smr01.freescale.net]",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BN6PR03MB2465",
        "Subject": "[dpdk-dev] [PATCHv2 23/34] net/dpaa2: add support for l3 and l4\n\tchecksum offload",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>\n---\n doc/guides/nics/features/dpaa2.ini       |  2 +\n drivers/common/dpaa2/dpio/dpaa2_hw_pvt.h |  6 +++\n drivers/net/dpaa2/dpaa2_ethdev.c         | 72 ++++++++++++++++++++++++++++++--\n 3 files changed, 76 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/doc/guides/nics/features/dpaa2.ini b/doc/guides/nics/features/dpaa2.ini\nindex 20152a0..d50c62e 100644\n--- a/doc/guides/nics/features/dpaa2.ini\n+++ b/doc/guides/nics/features/dpaa2.ini\n@@ -6,6 +6,8 @@\n [Features]\n Queue start/stop     = Y\n RSS hash             = Y\n+L3 checksum offload  = Y\n+L4 checksum offload  = Y\n Linux VFIO           = Y\n ARMv8                = Y\n Usage doc            = Y\ndiff --git a/drivers/common/dpaa2/dpio/dpaa2_hw_pvt.h b/drivers/common/dpaa2/dpio/dpaa2_hw_pvt.h\nindex 2c1ab7f..c5afaed 100644\n--- a/drivers/common/dpaa2/dpio/dpaa2_hw_pvt.h\n+++ b/drivers/common/dpaa2/dpio/dpaa2_hw_pvt.h\n@@ -37,6 +37,12 @@\n #include <mc/fsl_mc_sys.h>\n #include <fsl_qbman_portal.h>\n \n+#ifndef false\n+#define false      0\n+#endif\n+#ifndef true\n+#define true       1\n+#endif\n #define DPAA2_DQRR_RING_SIZE\t16\n \t/** <Maximum number of slots available in RX ring*/\n \ndiff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c\nindex ae04cc3..5d7add5 100644\n--- a/drivers/net/dpaa2/dpaa2_ethdev.c\n+++ b/drivers/net/dpaa2/dpaa2_ethdev.c\n@@ -69,7 +69,17 @@\n \tdev_info->min_rx_bufsize = DPAA2_MIN_RX_BUF_SIZE;\n \tdev_info->max_rx_queues = (uint16_t)priv->nb_rx_queues;\n \tdev_info->max_tx_queues = (uint16_t)priv->nb_tx_queues;\n-\n+\tdev_info->rx_offload_capa =\n+\t\tDEV_RX_OFFLOAD_IPV4_CKSUM |\n+\t\tDEV_RX_OFFLOAD_UDP_CKSUM |\n+\t\tDEV_RX_OFFLOAD_TCP_CKSUM |\n+\t\tDEV_RX_OFFLOAD_OUTER_IPV4_CKSUM;\n+\tdev_info->tx_offload_capa =\n+\t\tDEV_TX_OFFLOAD_IPV4_CKSUM |\n+\t\tDEV_TX_OFFLOAD_UDP_CKSUM |\n+\t\tDEV_TX_OFFLOAD_TCP_CKSUM |\n+\t\tDEV_TX_OFFLOAD_SCTP_CKSUM |\n+\t\tDEV_TX_OFFLOAD_OUTER_IPV4_CKSUM;\n \tdev_info->speed_capa = ETH_LINK_SPEED_1G |\n \t\t\tETH_LINK_SPEED_2_5G |\n \t\t\tETH_LINK_SPEED_10G;\n@@ -253,8 +263,13 @@\n \tmemset(&tx_conf_cfg, 0, sizeof(struct dpni_queue));\n \tmemset(&tx_flow_cfg, 0, sizeof(struct dpni_queue));\n \n-\ttc_id = 0;\n-\tflow_id = tx_queue_id;\n+\tif (priv->num_tc == 1) {\n+\t\ttc_id = 0;\n+\t\tflow_id = tx_queue_id % priv->num_dist_per_tc[tc_id];\n+\t} else {\n+\t\ttc_id = tx_queue_id;\n+\t\tflow_id = 0;\n+\t}\n \n \tret = dpni_set_queue(dpni, CMD_PRI_LOW, priv->token, DPNI_QUEUE_TX,\n \t\t\t     tc_id, flow_id, options, &tx_flow_cfg);\n@@ -303,6 +318,7 @@\n \tstruct dpaa2_dev_priv *priv = data->dev_private;\n \tstruct fsl_mc_io *dpni = (struct fsl_mc_io *)priv->hw;\n \tstruct dpni_queue cfg;\n+\tstruct dpni_error_cfg\terr_cfg;\n \tuint16_t qdid;\n \tstruct dpni_queue_id qid;\n \tstruct dpaa2_queue *dpaa2_q;\n@@ -338,6 +354,48 @@\n \t\tdpaa2_q->fqid = qid.fqid;\n \t}\n \n+\tret = dpni_set_offload(dpni, CMD_PRI_LOW, priv->token,\n+\t\t\t       DPNI_OFF_RX_L3_CSUM, true);\n+\tif (ret) {\n+\t\tPMD_INIT_LOG(ERR, \"Error to set RX l3 csum:Error = %d\\n\", ret);\n+\t\treturn ret;\n+\t}\n+\n+\tret = dpni_set_offload(dpni, CMD_PRI_LOW, priv->token,\n+\t\t\t       DPNI_OFF_RX_L4_CSUM, true);\n+\tif (ret) {\n+\t\tPMD_INIT_LOG(ERR, \"Error to get RX l4 csum:Error = %d\\n\", ret);\n+\t\treturn ret;\n+\t}\n+\n+\tret = dpni_set_offload(dpni, CMD_PRI_LOW, priv->token,\n+\t\t\t       DPNI_OFF_TX_L3_CSUM, true);\n+\tif (ret) {\n+\t\tPMD_INIT_LOG(ERR, \"Error to set TX l3 csum:Error = %d\\n\", ret);\n+\t\treturn ret;\n+\t}\n+\n+\tret = dpni_set_offload(dpni, CMD_PRI_LOW, priv->token,\n+\t\t\t       DPNI_OFF_TX_L4_CSUM, true);\n+\tif (ret) {\n+\t\tPMD_INIT_LOG(ERR, \"Error to get TX l4 csum:Error = %d\\n\", ret);\n+\t\treturn ret;\n+\t}\n+\n+\t/*checksum errors, send them to normal path and set it in annotation */\n+\terr_cfg.errors = DPNI_ERROR_L3CE | DPNI_ERROR_L4CE;\n+\n+\terr_cfg.error_action = DPNI_ERROR_ACTION_CONTINUE;\n+\terr_cfg.set_frame_annotation = true;\n+\n+\tret = dpni_set_errors_behavior(dpni, CMD_PRI_LOW,\n+\t\t\t\t       priv->token, &err_cfg);\n+\tif (ret) {\n+\t\tPMD_INIT_LOG(ERR, \"Error to dpni_set_errors_behavior:\"\n+\t\t\t     \"code = %d\\n\", ret);\n+\t\treturn ret;\n+\t}\n+\n \treturn 0;\n }\n \n@@ -454,7 +512,13 @@\n \t */\n \tpriv->nb_rx_queues = priv->num_dist_per_tc[DPAA2_DEF_TC];\n \n-\tpriv->nb_tx_queues = attr.num_queues;\n+\tif (attr.num_tcs == 1)\n+\t\tpriv->nb_tx_queues = attr.num_queues;\n+\telse\n+\t\tpriv->nb_tx_queues = attr.num_tcs;\n+\n+\tPMD_INIT_LOG(DEBUG, \"num_tc %d\", priv->num_tc);\n+\tPMD_INIT_LOG(DEBUG, \"nb_rx_queues %d\", priv->nb_rx_queues);\n \n \teth_dev->data->nb_rx_queues = priv->nb_rx_queues;\n \teth_dev->data->nb_tx_queues = priv->nb_tx_queues;\n",
    "prefixes": [
        "dpdk-dev",
        "PATCHv2",
        "23/34"
    ]
}