get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 92756,
    "url": "http://patches.dpdk.org/api/patches/92756/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20210504175500.3385811-13-matan@nvidia.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": "<20210504175500.3385811-13-matan@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210504175500.3385811-13-matan@nvidia.com",
    "date": "2021-05-04T17:54:57",
    "name": "[v3,12/15] common/mlx5: support general obj CREDENTIAL create",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "4345b4c8025756da67af536f01f1b9dba5b8771c",
    "submitter": {
        "id": 1911,
        "url": "http://patches.dpdk.org/api/people/1911/?format=api",
        "name": "Matan Azrad",
        "email": "matan@nvidia.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/20210504175500.3385811-13-matan@nvidia.com/mbox/",
    "series": [
        {
            "id": 16811,
            "url": "http://patches.dpdk.org/api/series/16811/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=16811",
            "date": "2021-05-04T17:54:45",
            "name": "mlx5 common part for crypto driver",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/16811/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/92756/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/92756/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 F1C40A0A02;\n\tTue,  4 May 2021 19:57:12 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E1903410DB;\n\tTue,  4 May 2021 19:57:12 +0200 (CEST)",
            "from NAM11-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam11on2067.outbound.protection.outlook.com [40.107.236.67])\n by mails.dpdk.org (Postfix) with ESMTP id 5A659410DB\n for <dev@dpdk.org>; Tue,  4 May 2021 19:57:11 +0200 (CEST)",
            "from DS7PR03CA0136.namprd03.prod.outlook.com (2603:10b6:5:3b4::21)\n by MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.42; Tue, 4 May\n 2021 17:57:07 +0000",
            "from DM6NAM11FT019.eop-nam11.prod.protection.outlook.com\n (2603:10b6:5:3b4:cafe::b9) by DS7PR03CA0136.outlook.office365.com\n (2603:10b6:5:3b4::21) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend\n Transport; Tue, 4 May 2021 17:57:07 +0000",
            "from mail.nvidia.com (216.228.112.34) by\n DM6NAM11FT019.mail.protection.outlook.com (10.13.172.172) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4087.27 via Frontend Transport; Tue, 4 May 2021 17:57:07 +0000",
            "from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com\n (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 4 May\n 2021 17:57:05 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=dz0Ecv1PY8qcJic9j1uCnLLUG78umcli5py4mj2VHmGl0x2N/FqZuHkNhv/ndzxrHFQtN+zUlSsYLbOffo++/zqWEQYNT04uj5krQmVxzVg7mUMr7hgWnLOJac6LPQyyrdLlL1qWpiRVShSIFW8G34FYsoIkCMWzmJZPZMvNR21lu7YHdf6WtWT9MTA4GzZL9uND/GK55JsnDG6Lsp+N6nGcZi/2qFqYGiUYyxyVN3HJkPEg9y4jn2RXiNryAL5YLcSOI36dqwkcLz2sAAhGHXXMygRaEvK41hPWIhFx62IV9d4wtWimUXo9bvkEIV/mqwT57nrl+eaBrVOyPsL1kw==",
        "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=eldTWrj598M/tCPZ6qAJ+aLJpc5tdmKvKqI2iCrZuxA=;\n b=FQiFuGuu8HNnepSqOVzCyZimjeWJeBrv85mEgtj6ZSRIGZAaBvb9U/ZIb5OVjOMzSDjeTRjflBgaxvMkheg4ZwSK6wDhqp6S0NKmyvAL9seLLpwNioO3HlhrSbobbq4elJY1tLjdy8Vh2tTPDL3NMUlrRqkyWnFWgeWZSe68xANIt/2lzOejZVB6QjhjT8bxfyTSI3rQKW9fSQxKRt+jhAfdH0YVCLWfMG809XW3soGbg7UHAPuuIkECVv9lMpo5DkScxfETmVN95I9PEuY84Dbffrd4hDbikZdbhiAOwawjrX0FefhqPYybZQ9KOb1eENceD2CXe0BdI5ly2I4NvA==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.112.34) smtp.rcpttodomain=monjalon.net smtp.mailfrom=nvidia.com;\n dmarc=pass (p=none sp=none pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=eldTWrj598M/tCPZ6qAJ+aLJpc5tdmKvKqI2iCrZuxA=;\n b=MnlkXD3J6UCllmjw/zS7BYYO1MlqtFVIiWTioWSAxUav5AdLrK+NBUet+K46PF2v9E+o9uTJ9eB5NDIJkUeLgGreAy5RWXWWQyu6SYDBSr7TY09Hje2OW/CT0XZL6gOcuMoRZhathlI5FrtstRzK27or9uMA3k3s/kYoiGUxnQfvcUv8IK/5gzBuC3gqwnwT8sQbcDwmq2LJ5ms7xJ5bNbmr3ZXcBZwZct0QTF08FAsN+aURvhFtOYFYuwRE7zw5+BBGX2koEms/PjPENRLAykR8zpyA1EUhGMzp5WPKlg9xtTmoCZdlt3Pr/ZaOPuZGcQkpDbgOdNLCgQ/o4YXclg==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.112.34)\n smtp.mailfrom=nvidia.com; monjalon.net; dkim=none (message not signed)\n header.d=none;monjalon.net; dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.112.34 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.112.34; helo=mail.nvidia.com;",
        "From": "Matan Azrad <matan@nvidia.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<matan@nvidia.com>, <gakhil@marvell.com>, <suanmingm@nvidia.com>, \"Thomas\n Monjalon\" <thomas@monjalon.net>, Dekel Peled <dekelp@nvidia.com>",
        "Date": "Tue, 4 May 2021 20:54:57 +0300",
        "Message-ID": "<20210504175500.3385811-13-matan@nvidia.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20210504175500.3385811-1-matan@nvidia.com>",
        "References": "<20210429154335.2820028-1-matan@nvidia.com>\n <20210504175500.3385811-1-matan@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[172.20.145.6]",
        "X-ClientProxiedBy": "HQMAIL111.nvidia.com (172.20.187.18) To\n HQMAIL107.nvidia.com (172.20.187.13)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "b1895579-2fd9-46ff-3c6f-08d90f26084b",
        "X-MS-TrafficTypeDiagnostic": "MW2PR12MB4666:",
        "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr",
        "X-Microsoft-Antispam-PRVS": "\n <MW2PR12MB4666D2FF9BBB1B622FE2A7ECDF5A9@MW2PR12MB4666.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:6108;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n 4W2bexXFi6vz3OtwF/no6CmX2o2EkqsnwV87nr179CeYiV3Ysg6LB2q6HiLR+uiQVZTPxEyuGnsvrEg1HAljCGvZ3uhNdu8qFcUkX2QB3kEpsW4Ct1tHSpLsIawcO+Tz3+17JrM+enHg3aPu8NhG+F/Uriopo1dDjI2DAtArJuAWC9dn6dAeoRy+Fv0XSlUnKUhVtfomu8FMy+0JNZcbNJrV/DImCZ329j79PdeRSSU8Yt85eg+FY3ZEHb6Lz8SbmG5ZfelPi6kOkZfGkLnXhNgjwyUIZbgFmIoUU/ed4rtI7UkRAiganw5d5Tj0+PCKuYS25Q5o2XVNgm6gJ2b5trSZadT87RtGTVLdwyRV6agiev600YdKpsygxzSEWcdHqtWFrAQ3GzFllD0PNhU8RhnTCkwB4w3NFoI5u2gZwzJgAh1Pbs0LAK73/pAxKkY2+PsY/KU6U/3yQNaLRK8A/3reguUg4UT1gTOQ7sUMf0QZv+APHhvZKL82Qbj5Lr8n3vlX74ugOcd62rjYV9RcMW2DO1vfc5LKQwmTtVNqJJpfS2cU8ahAAlxRhM2nxo1jvEgNrHORFACJj2ZvBKg94SzS9vkO7LDtnOuUNuedAxs/2ISHjGzWkhLt1BHhZ3fEokVi28woZ4O7QhQo2pxFDG6R7NOsDtha1PE6j7hVXZ0=",
        "X-Forefront-Antispam-Report": "CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE;\n SFS:(4636009)(346002)(376002)(136003)(396003)(39860400002)(46966006)(36840700001)(6916009)(2906002)(82310400003)(54906003)(316002)(5660300002)(6666004)(55016002)(8676002)(8936002)(36906005)(4326008)(1076003)(47076005)(426003)(7696005)(82740400003)(356005)(7636003)(86362001)(70206006)(36756003)(36860700001)(6286002)(107886003)(478600001)(16526019)(70586007)(2616005)(336012)(186003)(83380400001)(26005);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "04 May 2021 17:57:07.0808 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n b1895579-2fd9-46ff-3c6f-08d90f26084b",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n DM6NAM11FT019.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MW2PR12MB4666",
        "Subject": "[dpdk-dev] [PATCH v3 12/15] common/mlx5: support general obj\n CREDENTIAL create",
        "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": "From: Dekel Peled <dekelp@nvidia.com>\n\nCREDENTIAL object is used for any crypto operation in wrapped mode.\n\nThis patch add support of CREDENTIAL object create operation.\nAdd reading of CREDENTIAL support capability.\nAdd function to create general object type CREDENTIAL, using DevX API.\n\nSigned-off-by: Dekel Peled <dekelp@nvidia.com>\nAcked-by: Matan Azrad <matan@nvidia.com>\n---\n drivers/common/mlx5/mlx5_devx_cmds.c | 53 +++++++++++++++++++++++++++-\n drivers/common/mlx5/mlx5_devx_cmds.h | 17 +++++++--\n drivers/common/mlx5/mlx5_prm.h       | 23 ++++++++++++\n drivers/common/mlx5/version.map      |  1 +\n 4 files changed, 91 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c\nindex c0061741e8..c0a0853c3a 100644\n--- a/drivers/common/mlx5/mlx5_devx_cmds.c\n+++ b/drivers/common/mlx5/mlx5_devx_cmds.c\n@@ -754,6 +754,8 @@ mlx5_devx_cmd_query_hca_attr(void *ctx,\n \t\t       MLX5_GENERAL_OBJ_TYPES_CAP_DEK);\n \tattr->import_kek = !!(general_obj_types_supported &\n \t\t\t      MLX5_GENERAL_OBJ_TYPES_CAP_IMPORT_KEK);\n+\tattr->credential = !!(general_obj_types_supported &\n+\t\t\t      MLX5_GENERAL_OBJ_TYPES_CAP_CREDENTIAL);\n \tattr->crypto_login = !!(general_obj_types_supported &\n \t\t\t\tMLX5_GENERAL_OBJ_TYPES_CAP_CRYPTO_LOGIN);\n \t/* Add reading of other GENERAL_OBJ_TYPES_CAP bits above this line. */\n@@ -2512,6 +2514,55 @@ mlx5_devx_cmd_create_import_kek_obj(void *ctx,\n \treturn import_kek_obj;\n }\n \n+/**\n+ * Create general object of type CREDENTIAL using DevX API.\n+ *\n+ * @param[in] ctx\n+ *   Context returned from mlx5 open_device() glue function.\n+ * @param [in] attr\n+ *   Pointer to CREDENTIAL attributes structure.\n+ *\n+ * @return\n+ *   The DevX object created, NULL otherwise and rte_errno is set.\n+ */\n+struct mlx5_devx_obj *\n+mlx5_devx_cmd_create_credential_obj(void *ctx,\n+\t\t\t\t    struct mlx5_devx_credential_attr *attr)\n+{\n+\tuint32_t in[MLX5_ST_SZ_DW(create_credential_in)] = {0};\n+\tuint32_t out[MLX5_ST_SZ_DW(general_obj_out_cmd_hdr)] = {0};\n+\tstruct mlx5_devx_obj *credential_obj = NULL;\n+\tvoid *ptr = NULL, *credential_addr = NULL;\n+\n+\tcredential_obj = mlx5_malloc(MLX5_MEM_ZERO, sizeof(*credential_obj),\n+\t\t\t\t     0, SOCKET_ID_ANY);\n+\tif (credential_obj == NULL) {\n+\t\tDRV_LOG(ERR, \"Failed to allocate CREDENTIAL object data\");\n+\t\trte_errno = ENOMEM;\n+\t\treturn NULL;\n+\t}\n+\tptr = MLX5_ADDR_OF(create_credential_in, in, hdr);\n+\tMLX5_SET(general_obj_in_cmd_hdr, ptr, opcode,\n+\t\t MLX5_CMD_OP_CREATE_GENERAL_OBJECT);\n+\tMLX5_SET(general_obj_in_cmd_hdr, ptr, obj_type,\n+\t\t MLX5_GENERAL_OBJ_TYPE_CREDENTIAL);\n+\tptr = MLX5_ADDR_OF(create_credential_in, in, credential);\n+\tMLX5_SET(credential, ptr, credential_role, attr->credential_role);\n+\tcredential_addr = MLX5_ADDR_OF(credential, ptr, credential);\n+\tmemcpy(credential_addr, (void *)(attr->credential),\n+\t       MLX5_CRYPTO_CREDENTIAL_SIZE);\n+\tcredential_obj->obj = mlx5_glue->devx_obj_create(ctx, in, sizeof(in),\n+\t\t\t\t\t\t\t out, sizeof(out));\n+\tif (credential_obj->obj == NULL) {\n+\t\trte_errno = errno;\n+\t\tDRV_LOG(ERR, \"Failed to create CREDENTIAL object using DevX.\");\n+\t\tmlx5_free(credential_obj);\n+\t\treturn NULL;\n+\t}\n+\tcredential_obj->id = MLX5_GET(general_obj_out_cmd_hdr, out, obj_id);\n+\treturn credential_obj;\n+}\n+\n /**\n  * Create general object of type CRYPTO_LOGIN using DevX API.\n  *\n@@ -2551,7 +2602,7 @@ mlx5_devx_cmd_create_crypto_login_obj(void *ctx,\n \t\t attr->session_import_kek_ptr);\n \tcredential_addr = MLX5_ADDR_OF(crypto_login, ptr, credential);\n \tmemcpy(credential_addr, (void *)(attr->credential),\n-\t       MLX5_CRYPTO_LOGIN_CREDENTIAL_SIZE);\n+\t       MLX5_CRYPTO_CREDENTIAL_SIZE);\n \tcrypto_login_obj->obj = mlx5_glue->devx_obj_create(ctx, in, sizeof(in),\n \t\t\t\t\t\t\t   out, sizeof(out));\n \tif (crypto_login_obj->obj == NULL) {\ndiff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h\nindex 709e28bfba..811e7a1462 100644\n--- a/drivers/common/mlx5/mlx5_devx_cmds.h\n+++ b/drivers/common/mlx5/mlx5_devx_cmds.h\n@@ -143,6 +143,7 @@ struct mlx5_hca_attr {\n \tuint32_t aes_xts:1; /* AES-XTS crypto is supported. */\n \tuint32_t dek:1; /* General obj type DEK is supported. */\n \tuint32_t import_kek:1; /* General obj type IMPORT_KEK supported. */\n+\tuint32_t credential:1; /* General obj type CREDENTIAL supported. */\n \tuint32_t crypto_login:1; /* General obj type CRYPTO_LOGIN supported. */\n \tuint32_t regexp_num_of_engines;\n \tuint32_t log_max_ft_sampler_num:8;\n@@ -459,13 +460,20 @@ struct mlx5_devx_import_kek_attr {\n \tuint8_t key[MLX5_CRYPTO_KEY_MAX_SIZE];\n };\n \n-#define MLX5_CRYPTO_LOGIN_CREDENTIAL_SIZE\t48\n+#define MLX5_CRYPTO_CREDENTIAL_SIZE\t48\n+\n+struct mlx5_devx_credential_attr {\n+\tuint64_t modify_field_select;\n+\tuint32_t state:8;\n+\tuint32_t credential_role:8;\n+\tuint8_t credential[MLX5_CRYPTO_CREDENTIAL_SIZE];\n+};\n \n struct mlx5_devx_crypto_login_attr {\n \tuint64_t modify_field_select;\n \tuint32_t credential_pointer:24;\n \tuint32_t session_import_kek_ptr:24;\n-\tuint8_t credential[MLX5_CRYPTO_LOGIN_CREDENTIAL_SIZE];\n+\tuint8_t credential[MLX5_CRYPTO_CREDENTIAL_SIZE];\n };\n \n /* mlx5_devx_cmds.c */\n@@ -629,6 +637,11 @@ struct mlx5_devx_obj *\n mlx5_devx_cmd_create_import_kek_obj(void *ctx,\n \t\t\t\t    struct mlx5_devx_import_kek_attr *attr);\n \n+__rte_internal\n+struct mlx5_devx_obj *\n+mlx5_devx_cmd_create_credential_obj(void *ctx,\n+\t\t\t\t    struct mlx5_devx_credential_attr *attr);\n+\n __rte_internal\n struct mlx5_devx_obj *\n mlx5_devx_cmd_create_crypto_login_obj(void *ctx,\ndiff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h\nindex a9dcbfa63c..432c8fdb63 100644\n--- a/drivers/common/mlx5/mlx5_prm.h\n+++ b/drivers/common/mlx5/mlx5_prm.h\n@@ -1187,6 +1187,8 @@ enum {\n \t\t\t(1ULL << MLX5_GENERAL_OBJ_TYPE_DEK)\n #define MLX5_GENERAL_OBJ_TYPES_CAP_IMPORT_KEK \\\n \t\t\t(1ULL << MLX5_GENERAL_OBJ_TYPE_IMPORT_KEK)\n+#define MLX5_GENERAL_OBJ_TYPES_CAP_CREDENTIAL \\\n+\t\t\t(1ULL << MLX5_GENERAL_OBJ_TYPE_CREDENTIAL)\n #define MLX5_GENERAL_OBJ_TYPES_CAP_CRYPTO_LOGIN \\\n \t\t\t(1ULL << MLX5_GENERAL_OBJ_TYPE_CRYPTO_LOGIN)\n \n@@ -2490,6 +2492,7 @@ enum {\n \tMLX5_GENERAL_OBJ_TYPE_VIRTQ = 0x000d,\n \tMLX5_GENERAL_OBJ_TYPE_VIRTIO_Q_COUNTERS = 0x001c,\n \tMLX5_GENERAL_OBJ_TYPE_IMPORT_KEK = 0x001d,\n+\tMLX5_GENERAL_OBJ_TYPE_CREDENTIAL = 0x001e,\n \tMLX5_GENERAL_OBJ_TYPE_CRYPTO_LOGIN = 0x001f,\n \tMLX5_GENERAL_OBJ_TYPE_FLEX_PARSE_GRAPH = 0x0022,\n \tMLX5_GENERAL_OBJ_TYPE_FLOW_METER_ASO = 0x0024,\n@@ -2603,6 +2606,26 @@ struct mlx5_ifc_create_import_kek_in_bits {\n \tstruct mlx5_ifc_import_kek_bits import_kek;\n };\n \n+enum {\n+\tMLX5_CREDENTIAL_ROLE_OFFICER = 0x0,\n+\tMLX5_CREDENTIAL_ROLE_USER = 0x1,\n+};\n+\n+struct mlx5_ifc_credential_bits {\n+\tu8 modify_field_select[0x40];\n+\tu8 state[0x8];\n+\tu8 reserved_at_48[0x10];\n+\tu8 credential_role[0x8];\n+\tu8 reserved_at_60[0x1a0];\n+\tu8 credential[0x180];\n+\tu8 reserved_at_380[0x480];\n+};\n+\n+struct mlx5_ifc_create_credential_in_bits {\n+\tstruct mlx5_ifc_general_obj_in_cmd_hdr_bits hdr;\n+\tstruct mlx5_ifc_credential_bits credential;\n+};\n+\n struct mlx5_ifc_crypto_login_bits {\n \tu8 modify_field_select[0x40];\n \tu8 reserved_at_40[0x48];\ndiff --git a/drivers/common/mlx5/version.map b/drivers/common/mlx5/version.map\nindex 5706c6bbef..04b2179b2c 100644\n--- a/drivers/common/mlx5/version.map\n+++ b/drivers/common/mlx5/version.map\n@@ -16,6 +16,7 @@ INTERNAL {\n \n \tmlx5_devx_cmd_alloc_pd;\n \tmlx5_devx_cmd_create_cq;\n+\tmlx5_devx_cmd_create_credential_obj;\n \tmlx5_devx_cmd_create_crypto_login_obj;\n \tmlx5_devx_cmd_create_dek_obj;\n \tmlx5_devx_cmd_create_flex_parser;\n",
    "prefixes": [
        "v3",
        "12/15"
    ]
}