get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 74774,
    "url": "http://patches.dpdk.org/api/patches/74774/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200724142403.6132-10-parav@mellanox.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": "<20200724142403.6132-10-parav@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200724142403.6132-10-parav@mellanox.com",
    "date": "2020-07-24T14:24:02",
    "name": "[v9,09/10] common/mlx5: register class drivers through common layer",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "d3b2dc6ccedaf60e899e014e4e1df50194a2a54e",
    "submitter": {
        "id": 1780,
        "url": "http://patches.dpdk.org/api/people/1780/?format=api",
        "name": "Parav Pandit",
        "email": "parav@mellanox.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patches.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200724142403.6132-10-parav@mellanox.com/mbox/",
    "series": [
        {
            "id": 11290,
            "url": "http://patches.dpdk.org/api/series/11290/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=11290",
            "date": "2020-07-24T14:23:54",
            "name": "Improve mlx5 PMD driver framework for multiple classes",
            "version": 9,
            "mbox": "http://patches.dpdk.org/series/11290/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/74774/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/74774/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 66C50A0526;\n\tFri, 24 Jul 2020 16:26:12 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id F19C41C0D2;\n\tFri, 24 Jul 2020 16:24:50 +0200 (CEST)",
            "from EUR02-VE1-obe.outbound.protection.outlook.com\n (mail-eopbgr20064.outbound.protection.outlook.com [40.107.2.64])\n by dpdk.org (Postfix) with ESMTP id 6F9831C07B\n for <dev@dpdk.org>; Fri, 24 Jul 2020 16:24:43 +0200 (CEST)",
            "from AM0PR05MB4866.eurprd05.prod.outlook.com (2603:10a6:208:c0::32)\n by AM4PR05MB3203.eurprd05.prod.outlook.com (2603:10a6:205:6::28) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.20; Fri, 24 Jul\n 2020 14:24:42 +0000",
            "from AM0PR05MB4866.eurprd05.prod.outlook.com\n ([fe80::eccf:72b3:bacb:f09d]) by AM0PR05MB4866.eurprd05.prod.outlook.com\n ([fe80::eccf:72b3:bacb:f09d%5]) with mapi id 15.20.3216.024; Fri, 24 Jul 2020\n 14:24:42 +0000",
            "from sw-mtx-036.mtx.labs.mlnx (208.176.44.194) by\n DM6PR02CA0136.namprd02.prod.outlook.com (2603:10b6:5:1b4::38) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.3216.21 via Frontend Transport; Fri, 24 Jul 2020 14:24:40 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=LK6cSYqdleISolUoYkG52q1amCPgA46CcrQR4I1FEY/HZdcTzC94j+PUXhDEyABO44tGEA1Kh0TeAEsFe3Hwfx8QqaI7x+YVN/LZu1KJT0zCP8EMWLhC0VimofR2rQtMy/eXN1arAuCtV+PYePoLs9FGbonwz9wITsAdrcS9rcWOKljdmUd0lPojHpxextD4XaWfE/WsnKrd7Jts5KZYQGdIpmVRXjbUJdt+hv82Ee7hRY/EvLHdgBA6N20BBopkegsAs32XeRrnTbgKkCrJKcQcFLmwxJpkwgA2JhvYWoJS8o9SGtBP4m+1zZdgdkqscrr0+0/nflD0ahi0ZPJExQ==",
        "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-SenderADCheck;\n bh=0J2ocmNlfKmOHGmI9XlwIuP2LPgxBc6IfUOfx7HUG6M=;\n b=iyhrp9AiH6X/hQRDJ2PTNKeYm1G78amaG9xUbQDfMiL1Klk2/Kf/5X5s6QiDLZ+66X+87yB68mlAlysSNVT6lgez8owfdjYH+xyvNIP6clX8eQHiii8UdcpqTqlTBrx4zW3i3rjJWKUXtS03r1OymBmBtVjDIou4Tm3NAhBV40CevN/qXP1cXAeJr7Mt9BBd/VQsggx27lY61c8+KxkPzmXv1vJ9wLm6E4wPm+6YYCv28WTS5Tah3ABGwCN7Rpf5bW/H6abeK3mW52GX1YJAyRrv40STF5rFWG5wSRYRw0m54i0K+p/dKHJ9FRe8Ye0q0QTzbAFl4QzIISgt8iuVYg==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com;\n dkim=pass header.d=mellanox.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;\n s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=0J2ocmNlfKmOHGmI9XlwIuP2LPgxBc6IfUOfx7HUG6M=;\n b=BpJf/9h06Mse8AtIMdGps8kuXv74xp9t4UQ5d2CtnBaIWLloQnPU9DZHVG4sFFUP8PdncU9onKl+imh+Upp+3tgJ+nK6rDy9rz9qcODT7XiNNjgQgHJnrGPRpwgVY9fmlebrW1It97ITVzZcFlmRlz5yEsloFGNTIy1mwCYhPHA=",
        "Authentication-Results": "dpdk.org; dkim=none (message not signed)\n header.d=none;dpdk.org; dmarc=none action=none header.from=mellanox.com;",
        "From": "Parav Pandit <parav@mellanox.com>",
        "To": "dev@dpdk.org, grive@u256.net, ferruh.yigit@intel.com, thomas@monjalon.net",
        "Cc": "rasland@mellanox.com, orika@mellanox.com, matan@mellanox.com,\n joyce.kong@arm.com, Parav Pandit <parav@mellanox.com>",
        "Date": "Fri, 24 Jul 2020 17:24:02 +0300",
        "Message-Id": "<20200724142403.6132-10-parav@mellanox.com>",
        "X-Mailer": [
            "git-send-email 2.26.2",
            "git-send-email 2.26.2"
        ],
        "In-Reply-To": "<20200724142403.6132-1-parav@mellanox.com>",
        "References": "<20200610171728.89-2-parav@mellanox.com>\n <20200724142403.6132-1-parav@mellanox.com>",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "DM6PR02CA0136.namprd02.prod.outlook.com\n (2603:10b6:5:1b4::38) To AM0PR05MB4866.eurprd05.prod.outlook.com\n (2603:10a6:208:c0::32)",
        "MIME-Version": "1.0",
        "X-MS-Exchange-MessageSentRepresentingType": "1",
        "X-Originating-IP": "[208.176.44.194]",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-MS-Office365-Filtering-Correlation-Id": "a286dc4f-f42c-4520-2ecb-08d82fdd4e34",
        "X-MS-TrafficTypeDiagnostic": "AM4PR05MB3203:",
        "X-LD-Processed": "a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtFwd,ExtAddr",
        "X-MS-Exchange-Transport-Forked": "True",
        "X-Microsoft-Antispam-PRVS": "\n <AM4PR05MB32031D9AC719A07DC171A89AD1770@AM4PR05MB3203.eurprd05.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:262;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n 7+tD1Ea9d1mQyns78rae5Kh19v4LaKu3iwK7S8rXOvfxm7xbJCWLMYV0A3xlZqc58IbZkCaddXktNPKZKMtkFjM9UjPE174azUOYWhIiYEI5A72OpV/QyNrHAUtX2sIEI/jmZotpjxqX9xo593clh4YPzB7eC7GWbyUyBDI4ZOEQdOct3jbNtUEQzoRVglrO4//CIIjIj9+GKtYTfEJ4ygkeT+SAxOucwijftngJbJVs/49RDjxOrBVvxB7vUW33kvyuZNf5gg/OTcQgloWT/yJ44urUFfmSXfMIwafZxA0GFoKmunL8HzO0bh416Dqx",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:AM0PR05MB4866.eurprd05.prod.outlook.com; PTR:; CAT:NONE;\n SFTY:;\n SFS:(4636009)(376002)(346002)(136003)(366004)(396003)(39860400002)(5660300002)(86362001)(2616005)(956004)(6512007)(2906002)(66946007)(66476007)(66556008)(316002)(6506007)(4326008)(16526019)(186003)(26005)(107886003)(8936002)(478600001)(8676002)(6666004)(52116002)(6486002)(83380400001)(1076003)(36756003);\n DIR:OUT; SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData": "\n 9Q6A09OQ8Kflmo/TSUksW90s/8A86vidWX0T/cal6zg625uur4FEczlke5icu/PdDBFWAPcab0qFm7tko7dYCC30siADqTKCKWpU2QNBiB8QIU606SizCWuWLbpN7po5ft4JfHp+g8CKd7b8gqIC3fhPwH6U4snM3MgLWrBtw7X9O//1fCcRfRrS3kgby2LM5B+aMb9Dv1xRhKMBbmBEkblyGt5v8Lmr38kz+dRIk5uEw8pnixlYddHg5/aeFPGAARQv7RxLYZIhr6KIuOV/oNup0EdyG9PNIaLBhHbbBpbW9CuWFJ+47eiVDQrUQ73CKYxniVABxEGY8T6vgQnqnZQY4vb217T6IX6Rwan12kMgnBOYAc2w22TLeOunwPs5vOCjPeDlGE+jQjssIxK0HFx3Lgy+JM41e2p+l59WPnxh3mxUaVHKGbToY3L8hNKOTYA2N4h+mQPf4hdw0njo1r30Fk9Cp7gmIc8PmBggRWvWvNVCB7nth5x9AZds3xwS",
        "X-OriginatorOrg": "Mellanox.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n a286dc4f-f42c-4520-2ecb-08d82fdd4e34",
        "X-MS-Exchange-CrossTenant-AuthSource": "AM0PR05MB4866.eurprd05.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Jul 2020 14:24:42.0714 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "a652971c-7d2e-4d9b-a6a4-d149256f461b",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n UwDDjjDl8/THfUvnyKALpbIw1BQCqUv1c7SgEPdhWftbb6sYtdzudl/ETaQEybDgW0r43DkS5Rllsg6NTdK+iw==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM4PR05MB3203",
        "Subject": "[dpdk-dev] [PATCH v9 09/10] common/mlx5: register class drivers\n\tthrough common layer",
        "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 <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": "Migrate mlx5 net, vdpa and regex PMD to start using mlx5 common class\ndriver.\n\nSigned-off-by: Parav Pandit <parav@mellanox.com>\nAcked-by: Matan Azrad <matan@mellanox.com>\n---\nChangelog:\nv8->v9:\n - Removed leftover inclusion of mlx5_pci bus include directory\n---\n drivers/common/mlx5/mlx5_common_pci.c |  6 ++----\n drivers/net/mlx5/Makefile             |  1 -\n drivers/net/mlx5/linux/mlx5_os.c      |  1 -\n drivers/net/mlx5/mlx5.c               | 24 ++++++++++++++----------\n drivers/net/mlx5/mlx5.h               |  1 -\n drivers/regex/mlx5/meson.build        |  2 +-\n drivers/regex/mlx5/mlx5_regex.c       | 21 ++++++++++++---------\n drivers/vdpa/mlx5/Makefile            |  2 +-\n drivers/vdpa/mlx5/meson.build         |  2 +-\n drivers/vdpa/mlx5/mlx5_vdpa.c         | 23 +++++++++++++----------\n 10 files changed, 44 insertions(+), 39 deletions(-)",
    "diff": "diff --git a/drivers/common/mlx5/mlx5_common_pci.c b/drivers/common/mlx5/mlx5_common_pci.c\nindex adb3f707d..b5fcc16b1 100644\n--- a/drivers/common/mlx5/mlx5_common_pci.c\n+++ b/drivers/common/mlx5/mlx5_common_pci.c\n@@ -34,10 +34,8 @@ static const unsigned int mlx5_class_combinations[] = {\n \tMLX5_CLASS_NET,\n \tMLX5_CLASS_VDPA,\n \tMLX5_CLASS_REGEX,\n-\t/* New class combination should be added here.\n-\t * For example a new multi class device combination\n-\t * can be MLX5_CLASS_FOO | MLX5_CLASS_BAR.\n-\t */\n+\tMLX5_CLASS_NET | MLX5_CLASS_REGEX,\n+\t/* New class combination should be added here. */\n };\n \n static int\ndiff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile\nindex 253faf909..568c77241 100644\n--- a/drivers/net/mlx5/Makefile\n+++ b/drivers/net/mlx5/Makefile\n@@ -55,7 +55,6 @@ LDLIBS += -lrte_common_mlx5\n LDLIBS += -lm\n LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring\n LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs\n-LDLIBS += -lrte_bus_pci\n \n # A few warnings cannot be avoided in external headers.\n CFLAGS += -Wno-error=cast-qual\ndiff --git a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c\nindex fa3b02787..97d7b0e7b 100644\n--- a/drivers/net/mlx5/linux/mlx5_os.c\n+++ b/drivers/net/mlx5/linux/mlx5_os.c\n@@ -1537,7 +1537,6 @@ mlx5_os_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,\n \t\t\tstrerror(rte_errno));\n \t\treturn -rte_errno;\n \t}\n-\tMLX5_ASSERT(pci_drv == &mlx5_driver);\n \terrno = 0;\n \tibv_list = mlx5_glue->get_device_list(&ret);\n \tif (!ibv_list) {\ndiff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c\nindex 037703d2e..1e4c695f8 100644\n--- a/drivers/net/mlx5/mlx5.c\n+++ b/drivers/net/mlx5/mlx5.c\n@@ -30,6 +30,7 @@\n #include <mlx5_common.h>\n #include <mlx5_common_os.h>\n #include <mlx5_common_mp.h>\n+#include <mlx5_common_pci.h>\n #include <mlx5_malloc.h>\n \n #include \"mlx5_defs.h\"\n@@ -2091,16 +2092,19 @@ static const struct rte_pci_id mlx5_pci_id_map[] = {\n \t}\n };\n \n-struct rte_pci_driver mlx5_driver = {\n-\t.driver = {\n-\t\t.name = MLX5_DRIVER_NAME\n+static struct mlx5_pci_driver mlx5_driver = {\n+\t.driver_class = MLX5_CLASS_NET,\n+\t.pci_driver = {\n+\t\t.driver = {\n+\t\t\t.name = MLX5_DRIVER_NAME,\n+\t\t},\n+\t\t.id_table = mlx5_pci_id_map,\n+\t\t.probe = mlx5_os_pci_probe,\n+\t\t.remove = mlx5_pci_remove,\n+\t\t.dma_map = mlx5_dma_map,\n+\t\t.dma_unmap = mlx5_dma_unmap,\n+\t\t.drv_flags = PCI_DRV_FLAGS,\n \t},\n-\t.id_table = mlx5_pci_id_map,\n-\t.probe = mlx5_os_pci_probe,\n-\t.remove = mlx5_pci_remove,\n-\t.dma_map = mlx5_dma_map,\n-\t.dma_unmap = mlx5_dma_unmap,\n-\t.drv_flags = PCI_DRV_FLAGS,\n };\n \n /* Initialize driver log type. */\n@@ -2117,7 +2121,7 @@ RTE_INIT(rte_mlx5_pmd_init)\n \tmlx5_set_cksum_table();\n \tmlx5_set_swp_types_table();\n \tif (mlx5_glue)\n-\t\trte_pci_register(&mlx5_driver);\n+\t\tmlx5_pci_driver_register(&mlx5_driver);\n }\n \n RTE_PMD_EXPORT_NAME(net_mlx5, __COUNTER__);\ndiff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h\nindex a92194d2d..78d6eb728 100644\n--- a/drivers/net/mlx5/mlx5.h\n+++ b/drivers/net/mlx5/mlx5.h\n@@ -119,7 +119,6 @@ struct mlx5_local_data {\n };\n \n extern struct mlx5_shared_data *mlx5_shared_data;\n-extern struct rte_pci_driver mlx5_driver;\n \n /* Dev ops structs */\n extern const struct eth_dev_ops mlx5_os_dev_ops;\ndiff --git a/drivers/regex/mlx5/meson.build b/drivers/regex/mlx5/meson.build\nindex 7f800f2e3..d7cb2c572 100644\n--- a/drivers/regex/mlx5/meson.build\n+++ b/drivers/regex/mlx5/meson.build\n@@ -8,7 +8,7 @@ if not is_linux\n endif\n \n fmt_name = 'mlx5_regex'\n-deps += ['common_mlx5', 'bus_pci', 'eal', 'regexdev']\n+deps += ['common_mlx5', 'eal', 'regexdev']\n sources = files(\n \t'mlx5_regex.c',\n \t'mlx5_rxp.c',\ndiff --git a/drivers/regex/mlx5/mlx5_regex.c b/drivers/regex/mlx5/mlx5_regex.c\nindex 4e0367052..ae9f00189 100644\n--- a/drivers/regex/mlx5/mlx5_regex.c\n+++ b/drivers/regex/mlx5/mlx5_regex.c\n@@ -5,12 +5,12 @@\n #include <rte_malloc.h>\n #include <rte_log.h>\n #include <rte_errno.h>\n-#include <rte_bus_pci.h>\n #include <rte_pci.h>\n #include <rte_regexdev.h>\n #include <rte_regexdev_core.h>\n #include <rte_regexdev_driver.h>\n \n+#include <mlx5_common_pci.h>\n #include <mlx5_glue.h>\n #include <mlx5_devx_cmds.h>\n #include <mlx5_prm.h>\n@@ -246,21 +246,24 @@ static const struct rte_pci_id mlx5_regex_pci_id_map[] = {\n \t}\n };\n \n-static struct rte_pci_driver mlx5_regex_driver = {\n-\t.driver = {\n-\t\t.name = \"mlx5_regex\",\n+static struct mlx5_pci_driver mlx5_regex_driver = {\n+\t.driver_class = MLX5_CLASS_REGEX,\n+\t.pci_driver = {\n+\t\t.driver = {\n+\t\t\t.name = \"mlx5_regex\",\n+\t\t},\n+\t\t.id_table = mlx5_regex_pci_id_map,\n+\t\t.probe = mlx5_regex_pci_probe,\n+\t\t.remove = mlx5_regex_pci_remove,\n+\t\t.drv_flags = 0,\n \t},\n-\t.id_table = mlx5_regex_pci_id_map,\n-\t.probe = mlx5_regex_pci_probe,\n-\t.remove = mlx5_regex_pci_remove,\n-\t.drv_flags = 0,\n };\n \n RTE_INIT(rte_mlx5_regex_init)\n {\n \tmlx5_common_init();\n \tif (mlx5_glue)\n-\t\trte_pci_register(&mlx5_regex_driver);\n+\t\tmlx5_pci_driver_register(&mlx5_regex_driver);\n }\n \n RTE_LOG_REGISTER(mlx5_regex_logtype, pmd.regex.mlx5, NOTICE)\ndiff --git a/drivers/vdpa/mlx5/Makefile b/drivers/vdpa/mlx5/Makefile\nindex 8a1c2eab5..d46699fbc 100644\n--- a/drivers/vdpa/mlx5/Makefile\n+++ b/drivers/vdpa/mlx5/Makefile\n@@ -30,7 +30,7 @@ CFLAGS += -D_XOPEN_SOURCE=600\n CFLAGS += $(WERROR_FLAGS)\n CFLAGS += -Wno-strict-prototypes\n LDLIBS += -lrte_common_mlx5\n-LDLIBS += -lrte_eal -lrte_vhost -lrte_kvargs -lrte_pci -lrte_bus_pci -lrte_sched\n+LDLIBS += -lrte_eal -lrte_vhost -lrte_kvargs -lrte_pci -lrte_sched\n LDLIBS += -pthread\n \n # A few warnings cannot be avoided in external headers.\ndiff --git a/drivers/vdpa/mlx5/meson.build b/drivers/vdpa/mlx5/meson.build\nindex 2963aad71..254a8ec14 100644\n--- a/drivers/vdpa/mlx5/meson.build\n+++ b/drivers/vdpa/mlx5/meson.build\n@@ -8,7 +8,7 @@ if not is_linux\n endif\n \n fmt_name = 'mlx5_vdpa'\n-deps += ['hash', 'common_mlx5', 'vhost', 'pci', 'bus_pci', 'eal', 'sched']\n+deps += ['hash', 'common_mlx5', 'vhost', 'pci', 'eal', 'sched']\n sources = files(\n \t'mlx5_vdpa.c',\n \t'mlx5_vdpa_mem.c',\ndiff --git a/drivers/vdpa/mlx5/mlx5_vdpa.c b/drivers/vdpa/mlx5/mlx5_vdpa.c\nindex 85dbcf956..ffe2f00ac 100644\n--- a/drivers/vdpa/mlx5/mlx5_vdpa.c\n+++ b/drivers/vdpa/mlx5/mlx5_vdpa.c\n@@ -11,12 +11,12 @@\n #include <rte_malloc.h>\n #include <rte_log.h>\n #include <rte_errno.h>\n-#include <rte_bus_pci.h>\n #include <rte_pci.h>\n #include <rte_string_fns.h>\n \n #include <mlx5_glue.h>\n #include <mlx5_common.h>\n+#include <mlx5_common_pci.h>\n #include <mlx5_devx_cmds.h>\n #include <mlx5_prm.h>\n #include <mlx5_nl.h>\n@@ -657,7 +657,7 @@ mlx5_vdpa_config_get(struct rte_devargs *devargs, struct mlx5_vdpa_priv *priv)\n }\n \n /**\n- * DPDK callback to register a PCI device.\n+ * DPDK callback to register a mlx5 PCI device.\n  *\n  * This function spawns vdpa device out of a given PCI device.\n  *\n@@ -829,14 +829,17 @@ static const struct rte_pci_id mlx5_vdpa_pci_id_map[] = {\n \t}\n };\n \n-static struct rte_pci_driver mlx5_vdpa_driver = {\n-\t.driver = {\n-\t\t.name = \"mlx5_vdpa\",\n+static struct mlx5_pci_driver mlx5_vdpa_driver = {\n+\t.driver_class = MLX5_CLASS_VDPA,\n+\t.pci_driver = {\n+\t\t.driver = {\n+\t\t\t.name = \"mlx5_vdpa\",\n+\t\t},\n+\t\t.id_table = mlx5_vdpa_pci_id_map,\n+\t\t.probe = mlx5_vdpa_pci_probe,\n+\t\t.remove = mlx5_vdpa_pci_remove,\n+\t\t.drv_flags = 0,\n \t},\n-\t.id_table = mlx5_vdpa_pci_id_map,\n-\t.probe = mlx5_vdpa_pci_probe,\n-\t.remove = mlx5_vdpa_pci_remove,\n-\t.drv_flags = 0,\n };\n \n RTE_LOG_REGISTER(mlx5_vdpa_logtype, pmd.vdpa.mlx5, NOTICE)\n@@ -848,7 +851,7 @@ RTE_INIT(rte_mlx5_vdpa_init)\n {\n \tmlx5_common_init();\n \tif (mlx5_glue)\n-\t\trte_pci_register(&mlx5_vdpa_driver);\n+\t\tmlx5_pci_driver_register(&mlx5_vdpa_driver);\n }\n \n RTE_PMD_EXPORT_NAME(net_mlx5_vdpa, __COUNTER__);\n",
    "prefixes": [
        "v9",
        "09/10"
    ]
}