From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 20B8AA0C41; Thu, 30 Sep 2021 07:45:05 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E572541101; Thu, 30 Sep 2021 07:45:04 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2077.outbound.protection.outlook.com [40.107.94.77]) by mails.dpdk.org (Postfix) with ESMTP id 55BC6410FA for ; Thu, 30 Sep 2021 07:44:59 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KqjJtXulFKnPHDB+/HCQML5q4ZKc2kBn43wqn69WUoV8e24BiEt8xaNJnigul/Sot3uHzVwyyioeapHhnvTho6SxOntDqcty7puixUUSv6rd1Efn9rlOzGLPl5H6iHBTMa9FxA3K/XtGsdf4CtVKtOk43JLbrLqLbqz4C9gVE469l2i54eNdjLsUl6zbQjkGZaQBUpw8vYwm4u0s3sCVdhJEZeIecvZCG+PE9Trv0qea2WloGlQljghJzfUiLodsCtiKac825G70qqUFJbJ5SJ1GBHWhglQUfzyGDN3WCBgMawvUz+s+/RCgrWFsNXMV6RV9FOP2tCwPSN30dHIeiw== 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; bh=az4dcQDxfF/2sJZK/g0n7nY+9/ROQkNXxpPVM/L0hJo=; b=fxCKYxjyVOxIcOW+QMt0Rt0GxGTpiFdrZxIBVHffpvUsfAZn9y9+KC5TLr9kp/inc2AOx2m7FGVGGl0hphDMjcR8le2gDlbfzsqa/WEj5H8CaxZqDKtXZ9sJB0jO4eAbBySBBDkXeujnashMoJfmf86n1WN+F2UKvLAzH79vlrkkdVRCkTaHcdI8mUXpkcOOE7b44+CGYkhMI+gjyjiKe/Ww+bgPq3+FmQWcmN/X7mq7/zFS3yYo4I08p3E3ottbKWYNMhj0C6cDt3ON8WF2tfGqpl8lyZ8ohXjmZ2i6eKcN0JlrdMbQy00KCuX0CtVzgv3TRWUtK7rLPqUqUtHQUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine 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=az4dcQDxfF/2sJZK/g0n7nY+9/ROQkNXxpPVM/L0hJo=; b=Evzr8yYiI7rqfmo7jRpjtjbQO4R1IzVUvIfCai3TGyQYdiYZq8vnqR55sPrFf99sasHWMhkUqkoAdIr7eUgVZcEvNkhS+iZQecoCuZngnPm5zdx/r5wOq2UtW2vi/uFfPLHCQQFHgyKKyop/+LSp7ALJzXIi8dheNAC23Srj0Jw/uCSf7IoQU81yc1JPpJqo95epmdArXQ6pi1zKbiuv9ffCF939bBAzlnvV7Q9OfU6v3HoWRpobErNV/117/uFDpW8wJikXVQtJ0uxh/JCNEEgT0ff5UpDam4EYhsWhgFl0CcSH2/xqkwv+FI4gCNE28WQDu5e50hDA9itMQbN8Ww== Received: from CO2PR06CA0066.namprd06.prod.outlook.com (2603:10b6:104:3::24) by BN6PR1201MB0228.namprd12.prod.outlook.com (2603:10b6:405:57::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.18; Thu, 30 Sep 2021 05:44:57 +0000 Received: from CO1NAM11FT060.eop-nam11.prod.protection.outlook.com (2603:10b6:104:3:cafe::fe) by CO2PR06CA0066.outlook.office365.com (2603:10b6:104:3::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14 via Frontend Transport; Thu, 30 Sep 2021 05:44:57 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; 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 CO1NAM11FT060.mail.protection.outlook.com (10.13.175.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4566.14 via Frontend Transport; Thu, 30 Sep 2021 05:44:57 +0000 Received: from nvidia.com (172.20.187.5) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Thu, 30 Sep 2021 05:44:55 +0000 From: Raja Zidane To: Date: Thu, 30 Sep 2021 05:44:34 +0000 Message-ID: <20210930054438.5960-2-rzidane@nvidia.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210930054438.5960-1-rzidane@nvidia.com> References: <20210928121650.40181-1-rzidane@nvidia.com> <20210930054438.5960-1-rzidane@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL101.nvidia.com (172.20.187.10) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1b71bda8-5d05-46cb-6e8f-08d983d56f93 X-MS-TrafficTypeDiagnostic: BN6PR1201MB0228: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1186; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: if2Nbeq1+o18p1hVMtHuCEMlei9cGEM4h/t8cqHTtXHq73TbOZVJkVtTWQiVDfIqCPGNQj0JmJpRpeOcI5zxYEkFMAIF0j4avPAAoddSmShRJBfwMT/QYA8mN/8SQSpMIClNNsJv4ITMOjEYjgSfPUOjkbf0qg0s4AC9TH0xLo+cx3r02gxT7IwlONgCYZLrztJdagGP0Jq9OX3gr82tGP0uIrwhQQCR7rwnZiwmsq8KkwCh7gyjNhQ6huLcsmcDSrQHbfEQChczHqkyZaWrvI4I3Fv5kStSUwIFjqOhf5pzzE6WEo1V1lXXWJaktlju3WfNeeZF2n6+kI/ks+kUTfPksIH1Y35xhCPjialj9ukX7Ooa9GYZ2/nmsjtPXNFQX73HROpm7oLkl+UCzRqGjMpjRUe9eUweClcl2mD+ps8lyytqKuT4lG2p78vaeEuvguBmPwfPJ63hlZhZuTXsuGdiqr4uiMvRLciP5h1t+I6M3M+nqfqcsRqZNbq2TGHBg+Ut3RBven8M5N5iORXn0gUYkQrLmtVACZWecc8mo3qPeVtymcc/0I/BfM/BSqyy08RraWbiAtJaahE2FvMnefyfOkW63F/ZaR7m61Qg1U3/l/LBKll9iIg6kJdg6iaFL8cOKXGVtEDPNZz5ZTAEAG8F5xchaspSsTgfmqfkqOmgHO5hqJs1EHJSsJSPRzDo6ZsbtsrwHfofKbdacLLGcQ== 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)(46966006)(36840700001)(2906002)(1076003)(6286002)(316002)(7636003)(83380400001)(47076005)(86362001)(356005)(36860700001)(82310400003)(6666004)(5660300002)(26005)(36756003)(8676002)(70206006)(70586007)(426003)(336012)(55016002)(6916009)(508600001)(7696005)(2616005)(8936002)(16526019)(186003); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 05:44:57.1712 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1b71bda8-5d05-46cb-6e8f-08d983d56f93 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: CO1NAM11FT060.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1201MB0228 Subject: [dpdk-dev] [PATCH V5 1/5] common/mlx5: update new MMO HCA capabilities 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" New MMO HCA capabilities were added and others were renamed. Align hca capabilities with new prm. Add support in devx interface for changes in HCA capabilities. Signed-off-by: Raja Zidane Acked-by: Matan Azrad --- drivers/common/mlx5/mlx5_devx_cmds.c | 15 ++++++++++++--- drivers/common/mlx5/mlx5_devx_cmds.h | 11 ++++++++--- drivers/common/mlx5/mlx5_prm.h | 20 ++++++++++++++------ drivers/compress/mlx5/mlx5_compress.c | 4 ++-- 4 files changed, 36 insertions(+), 14 deletions(-) diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c index ac554cca05..00c78b1288 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.c +++ b/drivers/common/mlx5/mlx5_devx_cmds.c @@ -858,9 +858,18 @@ mlx5_devx_cmd_query_hca_attr(void *ctx, attr->log_max_srq_sz = MLX5_GET(cmd_hca_cap, hcattr, log_max_srq_sz); attr->reg_c_preserve = MLX5_GET(cmd_hca_cap, hcattr, reg_c_preserve); - attr->mmo_dma_en = MLX5_GET(cmd_hca_cap, hcattr, dma_mmo); - attr->mmo_compress_en = MLX5_GET(cmd_hca_cap, hcattr, compress); - attr->mmo_decompress_en = MLX5_GET(cmd_hca_cap, hcattr, decompress); + attr->mmo_regex_qp_en = MLX5_GET(cmd_hca_cap, hcattr, regexp_mmo_qp); + attr->mmo_regex_sq_en = MLX5_GET(cmd_hca_cap, hcattr, regexp_mmo_sq); + attr->mmo_dma_sq_en = MLX5_GET(cmd_hca_cap, hcattr, dma_mmo_sq); + attr->mmo_compress_sq_en = MLX5_GET(cmd_hca_cap, hcattr, + compress_mmo_sq); + attr->mmo_decompress_sq_en = MLX5_GET(cmd_hca_cap, hcattr, + decompress_mmo_sq); + attr->mmo_dma_qp_en = MLX5_GET(cmd_hca_cap, hcattr, dma_mmo_qp); + attr->mmo_compress_qp_en = MLX5_GET(cmd_hca_cap, hcattr, + compress_mmo_qp); + attr->mmo_decompress_qp_en = MLX5_GET(cmd_hca_cap, hcattr, + decompress_mmo_qp); attr->compress_min_block_size = MLX5_GET(cmd_hca_cap, hcattr, compress_min_block_size); attr->log_max_mmo_dma = MLX5_GET(cmd_hca_cap, hcattr, log_dma_mmo_size); diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h index c071629904..b21df0fd9b 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.h +++ b/drivers/common/mlx5/mlx5_devx_cmds.h @@ -173,9 +173,14 @@ struct mlx5_hca_attr { uint32_t log_max_srq; uint32_t log_max_srq_sz; uint32_t rss_ind_tbl_cap; - uint32_t mmo_dma_en:1; - uint32_t mmo_compress_en:1; - uint32_t mmo_decompress_en:1; + uint32_t mmo_dma_sq_en:1; + uint32_t mmo_compress_sq_en:1; + uint32_t mmo_decompress_sq_en:1; + uint32_t mmo_dma_qp_en:1; + uint32_t mmo_compress_qp_en:1; + uint32_t mmo_decompress_qp_en:1; + uint32_t mmo_regex_qp_en:1; + uint32_t mmo_regex_sq_en:1; uint32_t compress_min_block_size:4; uint32_t log_max_mmo_dma:5; uint32_t log_max_mmo_compress:5; diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h index d361bcf90e..ec5f871c61 100644 --- a/drivers/common/mlx5/mlx5_prm.h +++ b/drivers/common/mlx5/mlx5_prm.h @@ -1386,10 +1386,10 @@ struct mlx5_ifc_cmd_hca_cap_bits { u8 rtr2rts_qp_counters_set_id[0x1]; u8 rts2rts_udp_sport[0x1]; u8 rts2rts_lag_tx_port_affinity[0x1]; - u8 dma_mmo[0x1]; + u8 dma_mmo_sq[0x1]; u8 compress_min_block_size[0x4]; - u8 compress[0x1]; - u8 decompress[0x1]; + u8 compress_mmo_sq[0x1]; + u8 decompress_mmo_sq[0x1]; u8 log_max_ra_res_qp[0x6]; u8 end_pad[0x1]; u8 cc_query_allowed[0x1]; @@ -1519,7 +1519,9 @@ struct mlx5_ifc_cmd_hca_cap_bits { u8 num_lag_ports[0x4]; u8 reserved_at_280[0x10]; u8 max_wqe_sz_sq[0x10]; - u8 reserved_at_2a0[0x10]; + u8 reserved_at_2a0[0xc]; + u8 regexp_mmo_sq[0x1]; + u8 reserved_at_2b0[0x3]; u8 max_wqe_sz_rq[0x10]; u8 max_flow_counter_31_16[0x10]; u8 max_wqe_sz_sq_dc[0x10]; @@ -1632,7 +1634,12 @@ struct mlx5_ifc_cmd_hca_cap_bits { u8 num_vhca_ports[0x8]; u8 reserved_at_618[0x6]; u8 sw_owner_id[0x1]; - u8 reserved_at_61f[0x1e1]; + u8 reserved_at_61f[0x109]; + u8 dma_mmo_qp[0x1]; + u8 regexp_mmo_qp[0x1]; + u8 compress_mmo_qp[0x1]; + u8 decompress_mmo_qp[0x1]; + u8 reserved_at_624[0xd4]; }; struct mlx5_ifc_qos_cap_bits { @@ -3244,7 +3251,8 @@ struct mlx5_ifc_create_qp_in_bits { u8 uid[0x10]; u8 reserved_at_20[0x10]; u8 op_mod[0x10]; - u8 reserved_at_40[0x40]; + u8 qpc_ext[0x1]; + u8 reserved_at_41[0x3f]; u8 opt_param_mask[0x20]; u8 reserved_at_a0[0x20]; struct mlx5_ifc_qpc_bits qpc; diff --git a/drivers/compress/mlx5/mlx5_compress.c b/drivers/compress/mlx5/mlx5_compress.c index c5e0a83a8c..1e03030510 100644 --- a/drivers/compress/mlx5/mlx5_compress.c +++ b/drivers/compress/mlx5/mlx5_compress.c @@ -813,8 +813,8 @@ mlx5_compress_dev_probe(struct rte_device *dev) return -rte_errno; } if (mlx5_devx_cmd_query_hca_attr(ctx, &att) != 0 || - att.mmo_compress_en == 0 || att.mmo_decompress_en == 0 || - att.mmo_dma_en == 0) { + att.mmo_compress_sq_en == 0 || att.mmo_decompress_sq_en == 0 || + att.mmo_dma_sq_en == 0) { DRV_LOG(ERR, "Not enough capabilities to support compress " "operations, maybe old FW/OFED version?"); claim_zero(mlx5_glue->close_device(ctx)); -- 2.17.1