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 B6F88A0C45; Mon, 19 Jul 2021 04:54:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3AC4A4069D; Mon, 19 Jul 2021 04:54:54 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2070.outbound.protection.outlook.com [40.107.236.70]) by mails.dpdk.org (Postfix) with ESMTP id 11B664067A for ; Mon, 19 Jul 2021 04:54:53 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WC60fs5ip8go5H/1OXC7v5ysnBLd/s5ixwL9f0NKwAGeqryih9yT4hZDkjC8MxiHKic69bKCeHC7DJsq/+iZIqUbpKlgv7gwvqqCjRsjMzHqkXnWMSw/AXiKadutVC039h4uZFwbGwmCivx4lw8OOzrq1F775CTn3hEOvqHsIropD5/na3FHjIUXX0jZahNM76sgnGAEmWNu8sJE0vyPX4Ltc4gRa+unNK3FR3nKjOeCAsD6nWCoLxPkhJgQQrMx5+jvsXICPgV/BJ1cG68bukYYFSnYorFPJIcpbMiWR0xHiSHu8vqjdKQ9HCBDTXI1TsoNwYhGaAtAtUAxLm4alA== 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=SBbgm4c2l1lBlfdf9+oOM0eqUZ5AAqdQ6FYdDiXXyRo=; b=lEtgSsrY7GQLFHtzoP8Z4uNFDzh3eTPNj5qfcggXUKHF0wDOCxGDrY1fnGRpBjmg6ra0uVoOtWi4oeWA3Lr+w+OZH7/BXNnMZGMAVgJQI5CrPahzdjlS4L3fUko8/a1tHIs+LURjd+KD0X6ijD802Ip5pD8XSBmECT2awRjnUi8AMKPU5/tr38NFbSIUqOMLfWImKwmJb3EPlqtUAgBTg4RlepWzaxTDs1cCKw0jh7zvnSvm/OHfa7lcKjbCn1aewj3OH4aFTqeUvvv6ccvNqayMq+H+WP9irHn09hfm/NmE+f1nmwI/zdSgHe9JqKS13hfipWckXz4rQYz2eY2lbA== 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=SBbgm4c2l1lBlfdf9+oOM0eqUZ5AAqdQ6FYdDiXXyRo=; b=Q32aS+z6yhI2LvbW0LoXk98Tco3BAVUju5/rN+4KFATDS7woxvwkAVPFSYyL3Q599cyQOpUFNYxWVl2dVq+kuFrYPb1savEyRRwDuhh7PVuPRhFpKwguzFeaIbEt3qSFmaLWeQoohy8OAPwr9HkPeLIIq8dpQLQ4ckglNQut4V2i1gzY1oe8jEU2pQBeaVVTvzOzxq6pPiEzG1PU6OHR5aQnnp9xALdhW207amByuCqV7SXEsgT8/EQow/KSUtPYDdDIXnrjrTDam8HaYlhSh4C8yZWEccMrWcdlOc4f70PCrc9jBbUck17nH8zKvWuubcHjUDV7nHxagrBrPN3aQg== Received: from CO2PR04CA0130.namprd04.prod.outlook.com (2603:10b6:104:7::32) by MN2PR12MB3293.namprd12.prod.outlook.com (2603:10b6:208:106::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.26; Mon, 19 Jul 2021 02:54:51 +0000 Received: from CO1NAM11FT056.eop-nam11.prod.protection.outlook.com (2603:10b6:104:7:cafe::76) by CO2PR04CA0130.outlook.office365.com (2603:10b6:104:7::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21 via Frontend Transport; Mon, 19 Jul 2021 02:54:51 +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 CO1NAM11FT056.mail.protection.outlook.com (10.13.175.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4331.21 via Frontend Transport; Mon, 19 Jul 2021 02:54:50 +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.2; Mon, 19 Jul 2021 02:54:49 +0000 From: Xueming Li To: Viacheslav Ovsiienko CC: , Date: Mon, 19 Jul 2021 10:53:55 +0800 Message-ID: <20210719025410.15483-1-xuemingl@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210713131437.30170-2-xuemingl@nvidia.com> References: <20210713131437.30170-2-xuemingl@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL105.nvidia.com (172.20.187.12) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c449f022-2218-44e4-9d16-08d94a6093f8 X-MS-TrafficTypeDiagnostic: MN2PR12MB3293: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JEWATyLZgdix0JLozdJnuK2qDpJVIIJgGYBWD4axMQomusyWxxwueDax6HJjSvUWebvEhCNv4f0HvFm2GMMe3YW4YCnOzOM8CRISJEa9h40ySGHzrCy5LPwSoeAUzzSKdAAkWOuHMYUa9AzZQK8Crf/L8ne2yDVsnLFqTuMUu3NByhr/X5iJdWj3cYzxVCMoFKpcXHjDmfPcxUreK7+2I4PGSVbOnm/wsLyfSMG515DAtrfeRAq/sX/gZHtWBfQ6YDOry3OJSRqOVQ65IFmDYbMrTda+1/rS0qdSNPYsgma3tTwYHnSKSqUFLHcLLGNSx7ZmEBPwHmwZ9H0kaEGohKoCixOZNqnGlF/ZRHnoDpPYzPhRnOAJ/dnLj87z4z5yZQVWKvi1iM57IcdLWckB+C6n7r9/TDnjcGAwHcXnM/n8kq+RfU9kQD93w4/YHxrn8urFqaBP2w0cF4JGhrHqY8EInzPoqr6cSTwGDNYt5UFjYjQNGI7Ed8ncHbjLvyHrWvVJk64H2e/By5AoJIH72BjzpUvtZCG7sP8QEz/H4kFBL9YLlRBPV726p8LaOx1lT9MgCMDTS2E2dk2SDHx9fnzJUQguRCAiDUE//kazia3A8AyrcrdpEvInzwv2J9VUOgNAagN9vcfda/ioPW/GD4ZCWdEkfoghSETD080YNfQPkjOjfo7Khersp/5IjT1+QOyQxY+JgzybQYrXlgHdjL6o2hSxEvktNKiDnx+1ObGKgnrhHjAMYUDbtK/INAZ/jEj6VGXeqdjuvPlOkNvJHuCMQVrzvtOGB8ZbM0VzDMxBC9DeIMUt6ZQneVRbUTwi00LE/0b/lQbEX8v9m48Iww== 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)(376002)(136003)(396003)(346002)(39860400002)(46966006)(36840700001)(4326008)(2906002)(82310400003)(6862004)(478600001)(5660300002)(966005)(54906003)(36906005)(336012)(107886003)(316002)(82740400003)(55016002)(47076005)(8936002)(70586007)(70206006)(37006003)(86362001)(8676002)(356005)(7636003)(26005)(2616005)(16526019)(1076003)(6636002)(83380400001)(36860700001)(186003)(426003)(6666004)(36756003)(6286002)(7696005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jul 2021 02:54:50.8396 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c449f022-2218-44e4-9d16-08d94a6093f8 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: CO1NAM11FT056.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB3293 Subject: [dpdk-dev] [PATCH v3 00/15] net/mlx5: support Sub-Function 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" Sub-Function [1] is a portion of the PCI device, a SF netdev has its own dedicated queues(txq, rxq). A SF shares PCI level resources with other SFs and/or with its parent PCI function. Auxiliary bus is the fundamental of SF. This patch set introduces Sub-Function support for mlx5 PMD driver including class net, regex, vdpa and compress. Version history: RFC: initial version V1: rebased on latest upstream code V2: init sh->numa_node earlier other bug fixes V3: split first patch and fix compilation issue [1] SubFunction in kernel: https://lore.kernel.org/netdev/20201112192424.2742-1-parav@nvidia.com/ [2] Auxiliary bus: http://patchwork.dpdk.org/project/dpdk/patch/20210510134732.2174-1-xuemingl@nvidia.com/ Thomas Monjalon (5): common/mlx5: move description of PCI sysfs functions common/mlx5: get PCI device address from any bus vdpa/mlx5: define driver name as macro vdpa/mlx5: remove PCI specifics vdpa/mlx5: support SubFunction Xueming Li (10): common/mlx5: rename eth device class name common/mlx5: add common device driver common/mlx5: support auxiliary bus net/mlx5: remove PCI dependency net/mlx5: migrate to bus-agnostic common driver net/mlx5: support SubFunction net/mlx5: check max Verbs port number regex/mlx5: migrate to common driver compress/mlx5: migrate to common driver common/mlx5: clean up legacy PCI bus driver doc/guides/nics/mlx5.rst | 54 +- doc/guides/rel_notes/release_21_08.rst | 5 + doc/guides/vdpadevs/mlx5.rst | 10 + drivers/common/mlx5/linux/meson.build | 3 + .../common/mlx5/linux/mlx5_common_auxiliary.c | 192 +++++++ drivers/common/mlx5/linux/mlx5_common_os.c | 29 +- drivers/common/mlx5/linux/mlx5_common_os.h | 6 +- drivers/common/mlx5/linux/mlx5_common_verbs.c | 24 +- drivers/common/mlx5/meson.build | 2 +- drivers/common/mlx5/mlx5_common.c | 389 ++++++++++++- drivers/common/mlx5/mlx5_common.h | 179 +++++- drivers/common/mlx5/mlx5_common_pci.c | 526 ++++-------------- drivers/common/mlx5/mlx5_common_pci.h | 77 --- drivers/common/mlx5/mlx5_common_private.h | 50 ++ drivers/common/mlx5/mlx5_common_utils.h | 2 + drivers/common/mlx5/version.map | 12 +- drivers/compress/mlx5/mlx5_compress.c | 71 +-- drivers/net/mlx5/linux/mlx5_ethdev_os.c | 14 +- drivers/net/mlx5/linux/mlx5_os.c | 203 +++++-- drivers/net/mlx5/linux/mlx5_os.h | 5 +- drivers/net/mlx5/mlx5.c | 116 ++-- drivers/net/mlx5/mlx5.h | 14 +- drivers/net/mlx5/mlx5_ethdev.c | 2 +- drivers/net/mlx5/mlx5_mac.c | 2 +- drivers/net/mlx5/mlx5_mr.c | 48 +- drivers/net/mlx5/mlx5_rxmode.c | 8 +- drivers/net/mlx5/mlx5_rxtx.h | 9 +- drivers/net/mlx5/mlx5_trigger.c | 14 +- drivers/net/mlx5/mlx5_txq.c | 3 +- drivers/net/mlx5/windows/mlx5_os.c | 15 +- drivers/regex/mlx5/mlx5_regex.c | 49 +- drivers/regex/mlx5/mlx5_regex.h | 1 - drivers/vdpa/mlx5/mlx5_vdpa.c | 128 ++--- drivers/vdpa/mlx5/mlx5_vdpa.h | 1 - 34 files changed, 1363 insertions(+), 900 deletions(-) create mode 100644 drivers/common/mlx5/linux/mlx5_common_auxiliary.c delete mode 100644 drivers/common/mlx5/mlx5_common_pci.h create mode 100644 drivers/common/mlx5/mlx5_common_private.h -- 2.25.1