get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 54010,
    "url": "http://patches.dpdk.org/api/patches/54010/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20190601182030.8282-10-jerinj@marvell.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": "<20190601182030.8282-10-jerinj@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20190601182030.8282-10-jerinj@marvell.com",
    "date": "2019-06-01T18:20:30",
    "name": "[v1,9/9] raw/octeontx2_dma: add documentation",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "4e6ee603b8d33f9b7799efff881d82a8c7a44f7e",
    "submitter": {
        "id": 1188,
        "url": "http://patches.dpdk.org/api/people/1188/?format=api",
        "name": "Jerin Jacob Kollanukkaran",
        "email": "jerinj@marvell.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20190601182030.8282-10-jerinj@marvell.com/mbox/",
    "series": [
        {
            "id": 4846,
            "url": "http://patches.dpdk.org/api/series/4846/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=4846",
            "date": "2019-06-01T18:20:21",
            "name": "OCTEON TX2 DMA driver",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/4846/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/54010/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/54010/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 [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 0EBC61B99B;\n\tSat,  1 Jun 2019 20:20:48 +0200 (CEST)",
            "from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com\n\t[67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 0EC231B994\n\tfor <dev@dpdk.org>; Sat,  1 Jun 2019 20:20:45 +0200 (CEST)",
            "from pps.filterd (m0045851.ppops.net [127.0.0.1])\n\tby mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id\n\tx51IKGVa003587; Sat, 1 Jun 2019 11:20:45 -0700",
            "from sc-exch03.marvell.com ([199.233.58.183])\n\tby mx0b-0016f401.pphosted.com with ESMTP id 2survk101y-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); \n\tSat, 01 Jun 2019 11:20:45 -0700",
            "from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH03.marvell.com\n\t(10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3;\n\tSat, 1 Jun 2019 11:20:43 -0700",
            "from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com\n\t(10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend\n\tTransport; Sat, 1 Jun 2019 11:20:43 -0700",
            "from jerin-lab.marvell.com (jerin-lab.marvell.com [10.28.34.14])\n\tby maili.marvell.com (Postfix) with ESMTP id 6B1A03F703F;\n\tSat,  1 Jun 2019 11:20:42 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n\th=from : to : cc :\n\tsubject : date : message-id : in-reply-to : references : mime-version\n\t: content-transfer-encoding : content-type; s=pfpt0818;\n\tbh=xiurMNlbmxsIlneCwfXIN+U9SgHE2XgKEJpaOUxnqPk=;\n\tb=sbhVGoB9a0AgKUemzH1R0S6umGbZQPdog7XLL7OPMi5DoyB/mL9+o6GgCOZp+s2RCbS0\n\tFjaIqUuV0OZ16ra42ZE2iHt8j8dmE1LRsEhGQ10bdeeAoGx3aD6O+oPuXmBVIXruC/KZ\n\tfGahjvlTqOb7ve1vyRmULi9MxlAvaG2PeuBFZ7wZ2mf0kZ71tRJZOvqjpD3PzlHKqxEf\n\thtGlfRJgqDZPwL4vIGh8WSvu4Rv4Tu5zrlF1fPEuesvgUZIZRtxhqgMZoyiphhHTB3HA\n\tMnuQ0npvM+9lKTLNsKfNXYsgqOeTKW6vRBI6CRSnKzJ6WyoxDpqkq48bJWq+RRg7b4iW\n\tGg== ",
        "From": "<jerinj@marvell.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<skoteshwar@marvell.com>, John McNamara <john.mcnamara@intel.com>,\n\t\"Thomas Monjalon\" <thomas@monjalon.net>,\n\tVamsi Attunuru <vattunuru@marvell.com>, \n\t\"Jerin Jacob\" <jerinj@marvell.com>",
        "Date": "Sat, 1 Jun 2019 23:50:30 +0530",
        "Message-ID": "<20190601182030.8282-10-jerinj@marvell.com>",
        "X-Mailer": "git-send-email 2.21.0",
        "In-Reply-To": "<20190601182030.8282-1-jerinj@marvell.com>",
        "References": "<20190601182030.8282-1-jerinj@marvell.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:, ,\n\tdefinitions=2019-06-01_13:, , signatures=0",
        "Subject": "[dpdk-dev]  [PATCH v1 9/9] raw/octeontx2_dma: add documentation",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "From: Satha Rao <skoteshwar@marvell.com>\n\nAdd documentation and update MAINTAINERS file.\n\nCc: John McNamara <john.mcnamara@intel.com>\nCc: Thomas Monjalon <thomas@monjalon.net>\n\nSigned-off-by: Satha Rao <skoteshwar@marvell.com>\nSigned-off-by: Vamsi Attunuru <vattunuru@marvell.com>\nSigned-off-by: Jerin Jacob <jerinj@marvell.com>\n---\n MAINTAINERS                          |   6 ++\n doc/guides/platform/octeontx2.rst    |   5 ++\n doc/guides/rawdevs/index.rst         |   1 +\n doc/guides/rawdevs/octeontx2_dma.rst | 114 +++++++++++++++++++++++++++\n 4 files changed, 126 insertions(+)\n create mode 100644 doc/guides/rawdevs/octeontx2_dma.rst",
    "diff": "diff --git a/MAINTAINERS b/MAINTAINERS\nindex 74ac6d41f..2434fc18c 100644\n--- a/MAINTAINERS\n+++ b/MAINTAINERS\n@@ -1062,6 +1062,12 @@ M: Nipun Gupta <nipun.gupta@nxp.com>\n F: drivers/raw/dpaa2_cmdif/\n F: doc/guides/rawdevs/dpaa2_cmdif.rst\n \n+Marvell OCTEON TX2 DMA\n+M: Satha Rao <skoteshwar@marvell.com>\n+M: Vamsi Attunuru <vattunuru@marvell.com>\n+F: drivers/raw/octeontx2_dma/\n+F: doc/guides/rawdevs/octeontx2_dma.rst\n+\n \n Packet processing\n -----------------\ndiff --git a/doc/guides/platform/octeontx2.rst b/doc/guides/platform/octeontx2.rst\nindex c9ea45647..e6bfa2052 100644\n--- a/doc/guides/platform/octeontx2.rst\n+++ b/doc/guides/platform/octeontx2.rst\n@@ -101,6 +101,9 @@ This section lists dataplane H/W block(s) available in OCTEON TX2 SoC.\n #. **Mempool Driver**\n    See :doc:`../mempool/octeontx2` for NPA mempool driver information.\n \n+#. **DMA Rawdev Driver**\n+   See :doc:`../rawdevs/octeontx2_dma` for DMA driver information.\n+\n Procedure to Setup Platform\n ---------------------------\n \n@@ -143,6 +146,8 @@ compatible board:\n         # Enable if netdev VF driver required\n         CONFIG_OCTEONTX2_VF=y\n         CONFIG_CRYPTO_DEV_OCTEONTX2_CPT=y\n+        # Enable if OCTEONTX2 DMA PF driver required\n+        CONFIG_OCTEONTX2_DPI_PF=n\n \n 2. **ARM64 Linux Tool Chain**\n \ndiff --git a/doc/guides/rawdevs/index.rst b/doc/guides/rawdevs/index.rst\nindex 7c3bd9586..1351d14e4 100644\n--- a/doc/guides/rawdevs/index.rst\n+++ b/doc/guides/rawdevs/index.rst\n@@ -14,3 +14,4 @@ application through rawdev API.\n     dpaa2_cmdif\n     dpaa2_qdma\n     ifpga_rawdev\n+    octeontx2_dma\ndiff --git a/doc/guides/rawdevs/octeontx2_dma.rst b/doc/guides/rawdevs/octeontx2_dma.rst\nnew file mode 100644\nindex 000000000..7409c17ab\n--- /dev/null\n+++ b/doc/guides/rawdevs/octeontx2_dma.rst\n@@ -0,0 +1,114 @@\n+..  SPDX-License-Identifier: BSD-3-Clause\n+    Copyright(c) 2019 Marvell International Ltd.\n+\n+OCTEON TX2 DMA Driver\n+=====================\n+\n+OCTEON TX2 has an internal DMA unit which can be used by applications to initiate\n+DMA transaction internally, from/to host when OCTEON TX2 operates in PCIe End\n+Point mode. The DMA PF function supports 8 VFs corresponding to 8 DMA queues.\n+Each DMA queue was exposed as a VF function when SRIOV enabled.\n+\n+Features\n+--------\n+\n+This DMA PMD supports below 3 modes of memory transfers\n+\n+#. Internal - OCTEON TX2 DRAM to DRAM without core intervention\n+\n+#. Inbound  - Host DRAM to OCTEON TX2 DRAM without host/OCTEON TX2 cores involvement\n+\n+#. Outbound - OCTEON TX2 DRAM to Host DRAM without host/OCTEON TX2 cores involvement\n+\n+Prerequisites and Compilation procedure\n+---------------------------------------\n+\n+   See :doc:`../platform/octeontx2` for setup information.\n+\n+\n+Pre-Installation Configuration\n+------------------------------\n+\n+Config File Options\n+~~~~~~~~~~~~~~~~~~~\n+\n+The following options can be modified in the ``config`` file.\n+\n+- ``CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV`` (default ``y``)\n+\n+  Toggle compilation of the ``lrte_pmd_octeontx2_dma`` driver.\n+\n+Enabling logs\n+-------------\n+\n+For enabling logs, use the following EAL parameter:\n+\n+.. code-block:: console\n+\n+   ./your_dma_application <EAL args> --log-level=pmd.raw.octeontx2.dpi,<level>\n+\n+Using ``pmd.raw.octeontx2.dpi`` as log matching criteria, all Event PMD logs\n+can be enabled which are lower than logging ``level``.\n+\n+Initialization\n+--------------\n+\n+The number of DMA VFs (queues) enabled can be controlled by setting sysfs\n+entry, `sriov_numvfs` for the corresponding PF driver.\n+\n+.. code-block:: console\n+\n+ echo <num_vfs> > /sys/bus/pci/drivers/octeontx2-dpi/0000\\:05\\:00.0/sriov_numvfs\n+\n+Once the required VFs are enabled, to be accessible from DPDK, VFs need to be\n+bound to vfio-pci driver.\n+\n+Device Setup\n+-------------\n+\n+The DPI DMA HW device will need to be bound to a user-space IO driver for use.\n+The script ``dpdk-devbind.py`` script included with DPDK can be used to view the\n+state of the devices and to bind them to a suitable DPDK-supported kernel driver.\n+When querying the status of the devices, they will appear under the category of\n+\"dma devices\", i.e. the command ``dpdk-devbind.py --status-dev dma`` can be used\n+to see the state of those devices alone.\n+\n+Device Configuration\n+--------------------\n+\n+Configuring DMA rawdev device is done using the ``rte_rawdev_configure()``\n+API, which takes the mempool as parameter. PMD uses this pool to submit DMA\n+commands to HW.\n+\n+The following code shows how the device is configured\n+\n+.. code-block:: c\n+\n+   struct dpi_rawdev_conf_s conf = {0};\n+   struct rte_rawdev_info rdev_info = {.dev_private = &conf};\n+\n+   conf.chunk_pool = (void *)rte_mempool_create_empty(...);\n+   rte_mempool_set_ops_byname(conf.chunk_pool, rte_mbuf_platform_mempool_ops(), NULL);\n+   rte_mempool_populate_default(conf.chunk_pool);\n+\n+   rte_rawdev_configure(dev_id, (rte_rawdev_obj_t)&rdev_info);\n+\n+Performing Data Transfer\n+------------------------\n+\n+To perform data transfer using OCTEON TX2 DMA rawdev devices use standard\n+``rte_rawdev_enqueue_buffers()`` and ``rte_rawdev_dequeue_buffers()`` APIs.\n+\n+Self test\n+---------\n+\n+On EAL initialization, dma devices will be probed and populated into the\n+raw devices. The rawdev ID of the device can be obtained using\n+\n+* Invoke ``rte_rawdev_get_dev_id(\"DPI:x\")`` from the application\n+  where x is the VF device's bus id specified in \"bus:device.func\" format. Use this\n+  index for further rawdev function calls.\n+\n+* This PMD supports driver self test, to test DMA internal mode from test\n+  application one can directly calls\n+  ``rte_rawdev_selftest(rte_rawdev_get_dev_id(\"DPI:x\"))``\n",
    "prefixes": [
        "v1",
        "9/9"
    ]
}