From patchwork Thu Apr 29 15:43:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matan Azrad X-Patchwork-Id: 92420 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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]) by inbox.dpdk.org (Postfix) with ESMTP id A0D3AA0547; Thu, 29 Apr 2021 17:44:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CAB004123F; Thu, 29 Apr 2021 17:44:42 +0200 (CEST) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-eopbgr770052.outbound.protection.outlook.com [40.107.77.52]) by mails.dpdk.org (Postfix) with ESMTP id AD6CD411E5 for ; Thu, 29 Apr 2021 17:44:34 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OD0yrpKOoliw2srevrXuEuwcXeCBMflzNB8mwFSsP/YfXL3uzi/EceAedv+SgEh3KAR9sBPucTQgvEnRzcswhkFu7i1bE1+lwLDtxze+V/AjvUlJGW5IENg0f39LLD/m++J+6PYnEgxd8+rvxFtljVE+auehr89/DO7bq8qWHUYngNFV0zLQzbqZdYJiDdu2LsVY1E0l+ZTVgZfOMQ/lv1l1yuM2Ex+HjM1cQjloQwYJX14ni7wnFzxmKiA/zPnGlSR52xsP2B+X1RWBZyCBIVhyQhJ6BMZkKkX60P9R7JFXP9UqWE1DjzgYfsaOYvPW7wWXaNgtUJwFduiZ84Q+Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bLt3mgH6B6z1aAR8ZD1pTS/zTgiEQTnozLbPUHKVsRI=; b=VHKdCbSC8LCIRtiqTyrQnyJYou5xGFjJglQ9k6hBluqjZnRbTNaR2jidB9whEQJoQOrUyOPF2Xy/lqnMsVdmhhNswGjxdJ6cknfLdKQA4qVZNRRWgRC4OUgq+PTQeIwumtn3T8bKP5pjeUOyMpJ3rwOTwM4IRyuN8NwvAGTOH2/ATVaRHYGe73FZF/xFosa5NcJqR6U2Lh8LRnWi1umrWsiJ32Xtf8J3OjBTXxhmaxsmSiV3EpvRJEWss2Y4UIBZkWljb1mqV9Hy2SG6/68UlzbicWZL+ajdvaVKUFRQ/6YrHBX9hr+T6v+N5Hu/I/ZY9DhYSSQilUACU+xqHhjKqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=marvell.com smtp.mailfrom=nvidia.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bLt3mgH6B6z1aAR8ZD1pTS/zTgiEQTnozLbPUHKVsRI=; b=dgHC6P96LaBiQ8UD2WR27MxbYwqqh6zj35wFvHytafND9/m0z33QyfMHl3XxWEySIDCbSkAV/QdvDL8J9JQkfeTxABeSviQcwkJBH/jr+6gh7lzSEHmXV58BdIFdtVI0eKIUCfsnlWYlFpUpgF0U97TLpOhZ41Pr7wmCT8QX8z0ZcJJh5llklsn7+y7lCNp3gt3a/JRISzxUaXluIusP74PDg1q8NsssPZVEVMho2HGIilM1XcNFyvi9AB1cGugtRzJDDOJKQMTh6wEEfJofHKonLd/5RUDgFzqtc9sZ4VOpbeRXMJ96PqnXSuxF5mWahcUy0+lvv1qp8aH+Ju8nKQ== Received: from CO2PR04CA0101.namprd04.prod.outlook.com (2603:10b6:104:6::27) by MN2PR12MB4831.namprd12.prod.outlook.com (2603:10b6:208:1b9::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Thu, 29 Apr 2021 15:44:33 +0000 Received: from CO1NAM11FT006.eop-nam11.prod.protection.outlook.com (2603:10b6:104:6:cafe::48) by CO2PR04CA0101.outlook.office365.com (2603:10b6:104:6::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 15:44:32 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; marvell.com; dkim=none (message not signed) header.d=none;marvell.com; dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.34 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.34; helo=mail.nvidia.com; Received: from mail.nvidia.com (216.228.112.34) by CO1NAM11FT006.mail.protection.outlook.com (10.13.174.246) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 15:44:32 +0000 Received: from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 29 Apr 2021 15:44:29 +0000 From: Matan Azrad To: CC: , , , "Dekel Peled" Date: Thu, 29 Apr 2021 18:43:25 +0300 Message-ID: <20210429154335.2820028-7-matan@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210429154335.2820028-1-matan@nvidia.com> References: <20210408204849.9543-1-shirik@nvidia.com> <20210429154335.2820028-1-matan@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.145.6] X-ClientProxiedBy: HQMAIL107.nvidia.com (172.20.187.13) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ae591d2a-7584-4c0b-d4cd-08d90b25af09 X-MS-TrafficTypeDiagnostic: MN2PR12MB4831: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5516; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mRoI8Fu3xy7hHBY3EiRyu47bkbuGGvqwMXEtnftmraKibAc1kpQR7WViti7QRCFiFR/gLR9KrZaVti2v7MpAIBYlZqfYiVFPjk/J5lCTmoe/YXlxcEL0QuAjF4xXe9EI6KEoHrfzDUDyNsS++/LtmvHlupqxYODp/njs7hP/sKjTV+kxygNf3LXD81bUm1VcCpsP41LdboYoTApACRS/WhBGqNHyUbq5TfPPhSA0neLf4ATBTPhOMTO7Zrdzgc4pmwrWZp2Ei4Zf/wtQRXEqugtgVlhvi33hpy55iKLJns3GIIwdbUCPwgDRWR3+ilBqpk+mqsCxqMJAoUrkw02kfr2LqE81llWaBLd628Ui1GYinrew/4xi9izi0Hs9AUImoTC/nVWzB6/t9HlFDxydgOTfdth034+yWJSIPa151awYIr2el2RILPyzLMyuoT2Kf6KPheue9btdE3J9RndvzD9qGpdy56Hp6jV4XxKCMkJpDGyDuHo+DdKq4mmHn8/bOYGzjOGVMbyoZ6k5vYLbBklx+ftDW4q0ZfC0SASmCWXpZ8Jm/O4AeiGnUM/2A2Uyfe/7ZWhocb5WHHKhkm/yoV8nB9+Q1UKg+jI1pDpDnr2Ji6hQHbevNkgYONqAk8nq1ntPCpttFdlxlEWgQZespAQUKCajZ8q+SCmQg6PJ+VE= X-Forefront-Antispam-Report: CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE; SFS:(4636009)(136003)(396003)(376002)(39860400002)(346002)(36840700001)(46966006)(107886003)(83380400001)(478600001)(6666004)(47076005)(16526019)(36756003)(36860700001)(6286002)(4326008)(2906002)(426003)(82310400003)(5660300002)(86362001)(70586007)(70206006)(2616005)(186003)(7636003)(82740400003)(8936002)(8676002)(36906005)(54906003)(336012)(7696005)(356005)(316002)(55016002)(6916009)(1076003)(26005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 15:44:32.7009 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ae591d2a-7584-4c0b-d4cd-08d90b25af09 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT006.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4831 Subject: [dpdk-dev] [PATCH v2 06/16] common/mlx5: adjust DevX MKEY fields for crypto X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Dekel Peled MKEY that will be used for crypto purposes must be created with crypto_en and remote access attributes. This patch adds support for them in the DevX MKEY context. Signed-off-by: Dekel Peled Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_devx_cmds.c | 5 +++++ drivers/common/mlx5/mlx5_devx_cmds.h | 2 ++ drivers/common/mlx5/mlx5_prm.h | 10 +++++++++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c index 742c82cca4..68a10b149a 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.c +++ b/drivers/common/mlx5/mlx5_devx_cmds.c @@ -263,6 +263,10 @@ mlx5_devx_cmd_mkey_create(void *ctx, MLX5_SET(create_mkey_in, in, pg_access, attr->pg_access); MLX5_SET(mkc, mkc, lw, 0x1); MLX5_SET(mkc, mkc, lr, 0x1); + if (attr->set_remote_rw) { + MLX5_SET(mkc, mkc, rw, 0x1); + MLX5_SET(mkc, mkc, rr, 0x1); + } MLX5_SET(mkc, mkc, qpn, 0xffffff); MLX5_SET(mkc, mkc, pd, attr->pd); MLX5_SET(mkc, mkc, mkey_7_0, attr->umem_id & 0xFF); @@ -273,6 +277,7 @@ mlx5_devx_cmd_mkey_create(void *ctx, MLX5_SET(mkc, mkc, relaxed_ordering_read, attr->relaxed_ordering_read); MLX5_SET64(mkc, mkc, start_addr, attr->addr); MLX5_SET64(mkc, mkc, len, attr->size); + MLX5_SET(mkc, mkc, crypto_en, attr->crypto_en); mkey->obj = mlx5_glue->devx_obj_create(ctx, in, in_size_dw * 4, out, sizeof(out)); if (!mkey->obj) { diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h index b9ff7ab87d..600577f18a 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.h +++ b/drivers/common/mlx5/mlx5_devx_cmds.h @@ -32,6 +32,8 @@ struct mlx5_devx_mkey_attr { uint32_t relaxed_ordering_write:1; uint32_t relaxed_ordering_read:1; uint32_t umr_en:1; + uint32_t crypto_en:2; + uint32_t set_remote_rw:1; struct mlx5_klm *klm_array; int klm_num; }; diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h index bc9f58ad03..25f6f8ff00 100644 --- a/drivers/common/mlx5/mlx5_prm.h +++ b/drivers/common/mlx5/mlx5_prm.h @@ -1059,7 +1059,15 @@ struct mlx5_ifc_mkc_bits { u8 relaxed_ordering_read[0x1]; u8 reserved_at_1da[0x1]; u8 log_page_size[0x5]; - u8 reserved_at_1e0[0x20]; + u8 reserved_at_1e0[0x3]; + u8 crypto_en[0x2]; + u8 reserved_at_1e5[0x1b]; +}; + +/* Range of values for MKEY context crypto_en field. */ +enum { + MLX5_MKEY_CRYPTO_DISABLED = 0x0, + MLX5_MKEY_CRYPTO_ENABLED = 0x1, }; struct mlx5_ifc_create_mkey_out_bits {