get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 93663,
    "url": "http://patches.dpdk.org/api/patches/93663/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20210531214142.30167-25-tduszynski@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": "<20210531214142.30167-25-tduszynski@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210531214142.30167-25-tduszynski@marvell.com",
    "date": "2021-05-31T21:41:38",
    "name": "[24/28] raw/cnxk_bphy: add support for interrupt init and cleanup",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "d9bbe60d728d0592da548b67c825bd6db68470a0",
    "submitter": {
        "id": 2215,
        "url": "http://patches.dpdk.org/api/people/2215/?format=api",
        "name": "Tomasz Duszynski",
        "email": "tduszynski@marvell.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20210531214142.30167-25-tduszynski@marvell.com/mbox/",
    "series": [
        {
            "id": 17173,
            "url": "http://patches.dpdk.org/api/series/17173/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=17173",
            "date": "2021-05-31T21:41:14",
            "name": "add support for baseband phy",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/17173/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/93663/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/93663/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 5E8C4A0524;\n\tMon, 31 May 2021 23:44:18 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E08F440E46;\n\tMon, 31 May 2021 23:42:54 +0200 (CEST)",
            "from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com\n [67.231.148.174])\n by mails.dpdk.org (Postfix) with ESMTP id 2CF1240DFF\n for <dev@dpdk.org>; Mon, 31 May 2021 23:42:53 +0200 (CEST)",
            "from pps.filterd (m0045849.ppops.net [127.0.0.1])\n by mx0a-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id\n 14VLdks6025644; Mon, 31 May 2021 14:42:50 -0700",
            "from dc5-exch01.marvell.com ([199.233.59.181])\n by mx0a-0016f401.pphosted.com with ESMTP id 38vjqj33a7-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);\n Mon, 31 May 2021 14:42:50 -0700",
            "from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com\n (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2;\n Mon, 31 May 2021 14:42:49 -0700",
            "from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com\n (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.2 via Frontend\n Transport; Mon, 31 May 2021 14:42:49 -0700",
            "from EH-LT0048.marvell.com (unknown [10.193.32.52])\n by maili.marvell.com (Postfix) with ESMTP id 814EB3F703F;\n Mon, 31 May 2021 14:42:47 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n h=from : to : cc :\n subject : date : message-id : in-reply-to : references : mime-version :\n content-transfer-encoding : content-type; s=pfpt0220;\n bh=15ZfkhCfRM1TZBo+/8QAxdbpUKhhxQbT1WF6de/DJTk=;\n b=WxlCkzW8IQWBXK3VmB35ebLoVGJZiRwuWTvGwGySxN3XkVdMP3gwsOgfplVoxra7MzyE\n xBg9oiAER3+iTDNb+QCPIzrd6V6LWxFYkhZjMyihE1NFmxqePNTh10px/G7lm6QjL8Kd\n gPspAgyPU7NvHOJunleVauoC7xvpStd686P7qsrxthBJ6ARH9TD1KbWq9HkJnsIg4vz1\n EbX1Lsy0+lZWtaPZdAZlfdGESwrOeZmUfYrZqfF98AQlWs8KJ9Xvw0IB2TKsyNU4hLpJ\n oGeFfozOAuyYgnzZksLK7LdK4GAkdn5994bdM2+fsCmV7uFmnm4ZUCNwjv5TBnyQQq6d hw==",
        "From": "Tomasz Duszynski <tduszynski@marvell.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<jpalider@marvell.com>, <jerinj@marvell.com>, Tomasz Duszynski\n <tduszynski@marvell.com>, Ray Kinsella <mdr@ashroe.eu>, Neil Horman\n <nhorman@tuxdriver.com>",
        "Date": "Mon, 31 May 2021 23:41:38 +0200",
        "Message-ID": "<20210531214142.30167-25-tduszynski@marvell.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20210531214142.30167-1-tduszynski@marvell.com>",
        "References": "<20210531214142.30167-1-tduszynski@marvell.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Proofpoint-GUID": "cxy5Fy0N30NeF30MjC13xg02u3pmxV_I",
        "X-Proofpoint-ORIG-GUID": "cxy5Fy0N30NeF30MjC13xg02u3pmxV_I",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:6.0.391, 18.0.761\n definitions=2021-05-31_15:2021-05-31,\n 2021-05-31 signatures=0",
        "Subject": "[dpdk-dev] [PATCH 24/28] raw/cnxk_bphy: add support for interrupt\n init and cleanup",
        "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": "Add support for interrupt initialization and cleanup. Internally\ninterrupt initialization performs low level setup that allows\ncustom interrupt handler registration later on.\n\nInterrupt initialization and cleanup are related hence they\nare in the same patch.\n\nSigned-off-by: Jakub Palider <jpalider@marvell.com>\nSigned-off-by: Tomasz Duszynski <tduszynski@marvell.com>\n---\n drivers/raw/cnxk_bphy/cnxk_bphy.c     | 13 ++++++++\n drivers/raw/cnxk_bphy/cnxk_bphy_irq.c | 47 +++++++++++++++++++++++++++\n drivers/raw/cnxk_bphy/cnxk_bphy_irq.h |  5 +++\n drivers/raw/cnxk_bphy/meson.build     |  1 +\n drivers/raw/cnxk_bphy/rte_pmd_bphy.h  |  7 ++++\n drivers/raw/cnxk_bphy/version.map     | 12 +++++++\n 6 files changed, 85 insertions(+)\n create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_irq.c",
    "diff": "diff --git a/drivers/raw/cnxk_bphy/cnxk_bphy.c b/drivers/raw/cnxk_bphy/cnxk_bphy.c\nindex 51affed78..e3a065b30 100644\n--- a/drivers/raw/cnxk_bphy/cnxk_bphy.c\n+++ b/drivers/raw/cnxk_bphy/cnxk_bphy.c\n@@ -13,6 +13,7 @@\n #include <roc_api.h>\n \n #include \"cnxk_bphy_irq.h\"\n+#include \"rte_pmd_bphy.h\"\n \n static const struct rte_pci_id pci_bphy_map[] = {\n \t{RTE_PCI_DEVICE(PCI_VENDOR_ID_CAVIUM, PCI_DEVID_CNXK_BPHY)},\n@@ -21,6 +22,18 @@ static const struct rte_pci_id pci_bphy_map[] = {\n \t},\n };\n \n+int\n+rte_pmd_bphy_intr_init(uint16_t dev_id)\n+{\n+\treturn cnxk_bphy_intr_init(dev_id);\n+}\n+\n+void\n+rte_pmd_bphy_intr_fini(uint16_t dev_id)\n+{\n+\treturn cnxk_bphy_intr_fini(dev_id);\n+}\n+\n static const struct rte_rawdev_ops bphy_rawdev_ops = {\n };\n \ndiff --git a/drivers/raw/cnxk_bphy/cnxk_bphy_irq.c b/drivers/raw/cnxk_bphy/cnxk_bphy_irq.c\nnew file mode 100644\nindex 000000000..5d47840d6\n--- /dev/null\n+++ b/drivers/raw/cnxk_bphy/cnxk_bphy_irq.c\n@@ -0,0 +1,47 @@\n+/* SPDX-License-Identifier: BSD-3-Clause\n+ * Copyright(C) 2021 Marvell International Ltd.\n+ */\n+#include <rte_bus_pci.h>\n+#include <rte_pci.h>\n+#include <rte_rawdev.h>\n+#include <rte_rawdev_pmd.h>\n+\n+#include <roc_api.h>\n+#include <roc_bphy_irq.h>\n+\n+#include \"cnxk_bphy_irq.h\"\n+\n+static struct bphy_device *\n+cnxk_bphy_get_bphy_dev_by_dev_id(uint16_t dev_id)\n+{\n+\tstruct rte_rawdev *rawdev;\n+\n+\tif (!rte_rawdev_pmd_is_valid_dev(dev_id))\n+\t\treturn NULL;\n+\n+\trawdev = &rte_rawdevs[dev_id];\n+\n+\treturn (struct bphy_device *)rawdev->dev_private;\n+}\n+\n+int\n+cnxk_bphy_intr_init(uint16_t dev_id)\n+{\n+\tstruct bphy_device *bphy_dev = cnxk_bphy_get_bphy_dev_by_dev_id(dev_id);\n+\n+\tbphy_dev->irq_chip = roc_bphy_intr_init();\n+\tif (bphy_dev->irq_chip == NULL)\n+\t\treturn -ENOMEM;\n+\n+\treturn 0;\n+}\n+\n+void\n+cnxk_bphy_intr_fini(uint16_t dev_id)\n+{\n+\tstruct bphy_device *bphy_dev = cnxk_bphy_get_bphy_dev_by_dev_id(dev_id);\n+\tstruct roc_bphy_irq_chip *irq_chip = bphy_dev->irq_chip;\n+\n+\troc_bphy_intr_fini(irq_chip);\n+\tbphy_dev->irq_chip = NULL;\n+}\ndiff --git a/drivers/raw/cnxk_bphy/cnxk_bphy_irq.h b/drivers/raw/cnxk_bphy/cnxk_bphy_irq.h\nindex 77169b1b7..6e3d77768 100644\n--- a/drivers/raw/cnxk_bphy/cnxk_bphy_irq.h\n+++ b/drivers/raw/cnxk_bphy/cnxk_bphy_irq.h\n@@ -20,4 +20,9 @@ struct bphy_device {\n \tstruct bphy_mem mem;\n };\n \n+__rte_internal\n+int cnxk_bphy_intr_init(uint16_t dev_id);\n+__rte_internal\n+void cnxk_bphy_intr_fini(uint16_t dev_id);\n+\n #endif /* _CNXK_BPHY_IRQ_ */\ndiff --git a/drivers/raw/cnxk_bphy/meson.build b/drivers/raw/cnxk_bphy/meson.build\nindex 23d46f11d..1c3e6c1b7 100644\n--- a/drivers/raw/cnxk_bphy/meson.build\n+++ b/drivers/raw/cnxk_bphy/meson.build\n@@ -6,6 +6,7 @@ deps += ['bus_pci', 'common_cnxk', 'rawdev']\n sources = files(\n     'cnxk_bphy.c',\n     'cnxk_bphy_cgx.c',\n+    'cnxk_bphy_irq.c',\n     'cnxk_bphy_cgx_test.c'\n )\n headers = files('rte_pmd_bphy.h')\ndiff --git a/drivers/raw/cnxk_bphy/rte_pmd_bphy.h b/drivers/raw/cnxk_bphy/rte_pmd_bphy.h\nindex 84176ff22..edc146685 100644\n--- a/drivers/raw/cnxk_bphy/rte_pmd_bphy.h\n+++ b/drivers/raw/cnxk_bphy/rte_pmd_bphy.h\n@@ -5,6 +5,8 @@\n #ifndef _CNXK_BPHY_H_\n #define _CNXK_BPHY_H_\n \n+#include \"cnxk_bphy_irq.h\"\n+\n enum cnxk_bphy_cgx_msg_type {\n \tCNXK_BPHY_CGX_MSG_TYPE_GET_LINKINFO,\n \tCNXK_BPHY_CGX_MSG_TYPE_INTLBK_DISABLE,\n@@ -101,4 +103,9 @@ struct cnxk_bphy_cgx_msg {\n \tvoid *data;\n };\n \n+__rte_experimental\n+int rte_pmd_bphy_intr_init(uint16_t dev_id);\n+__rte_experimental\n+void rte_pmd_bphy_intr_fini(uint16_t dev_id);\n+\n #endif /* _CNXK_BPHY_H_ */\ndiff --git a/drivers/raw/cnxk_bphy/version.map b/drivers/raw/cnxk_bphy/version.map\nindex 4a76d1d52..e087cd39b 100644\n--- a/drivers/raw/cnxk_bphy/version.map\n+++ b/drivers/raw/cnxk_bphy/version.map\n@@ -1,3 +1,15 @@\n DPDK_21 {\n \tlocal: *;\n };\n+INTERNAL {\n+\tglobal:\n+\n+\tcnxk_bphy_intr_init;\n+\tcnxk_bphy_intr_fini;\n+};\n+EXPERIMENTAL {\n+\tglobal:\n+\n+\trte_pmd_bphy_intr_fini;\n+\trte_pmd_bphy_intr_init;\n+};\n",
    "prefixes": [
        "24/28"
    ]
}