From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60082.outbound.protection.outlook.com [40.107.6.82]) by dpdk.org (Postfix) with ESMTP id D4FAD1B105 for ; Mon, 31 Dec 2018 13:43:49 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nmMmZQmVcqAOth7EJSABOKyPa/XsTc/UKW1R3AG2JOo=; b=YpfewcLbrcbCWpJYwsZ5hdd8Pbta60ax4zYCPocEYM458vQ8tDGFKV0SAtO2mmHjZOijUTBAXfXg0DW5ueTYzMEa3Z3+rQhO43Q33mE+12vlAlusrtKGY/ND971DTRB0Qbv3GxLsDugzTx1u5wxQL0lEvOQvqBHCLJejH3WK6Ko= Received: from AM0PR05MB6610.eurprd05.prod.outlook.com (20.178.117.75) by AM0PR05MB4994.eurprd05.prod.outlook.com (52.134.89.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1471.20; Mon, 31 Dec 2018 12:43:48 +0000 Received: from AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::3148:3550:11da:bf75]) by AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::3148:3550:11da:bf75%4]) with mapi id 15.20.1471.019; Mon, 31 Dec 2018 12:43:48 +0000 From: Wisam Monther To: Shahaf Shuler CC: "dev@dpdk.org" Thread-Topic: [PATCH v2] net/mlx5: add ConnectX-6 device IDs Thread-Index: AQHUoQZ5I6iu/GRCLECUWc4KYcCEug== Date: Mon, 31 Dec 2018 12:43:48 +0000 Message-ID: <1546260214-10064-1-git-send-email-wisamm@mellanox.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: LO2P265CA0103.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:c::19) To AM0PR05MB6610.eurprd05.prod.outlook.com (2603:10a6:208:124::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=wisamm@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [37.142.13.130] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM0PR05MB4994; 6:K3pTAaPwoPkkfyTd4l/kpP4b+tlSA+SXxnZyoSk7srlFVG1R763/vEZx7nmroKSfTv3HhfglI7vIGKObkZAXepqqSV6CiwWr1I9H1qtQ15tNH2PhJtNnsd+DhpcGA8EbAAsExUb+ZW4hAO+voyduzDT4KvcR65D/EyFNLrAURk2/dssvMXz0P2nlcJAXblWy19VhwhCdrTgty4D5zBgwU7AGAGOJcdonJpoPnlx6CRsxKod0K5gGwMB2akMyjxiU+mBqgIK7jBu8O3/7wsrVz/Gx2+K4Dx8pdI6MgcNYEpmebhXYLi9yRR4ln+/P6SHn1YkzzZSTdPcXtmBc9Y9DmwrwA3jO6ifSc8jS9KwPPOuW2sVMQLnDf0FN3aAQv/r4/0EGaqauhx4S7bda9spJFFWy4JIi+c9DE8e6dfhUyBFii2Vrqd5RFO2XuWXDCiz7yDq1Oil4v2D/rHoCeQa3lw==; 5:ChrdDFNAWFA+MR9fn+uWcjHEg3NuEJecfNE4bSFfba9xTObBYaOoS53RP7DjpkO9cVK50K3u5Ru4MGvnheCjZwnGtnqOsqwCDkMtX5PW6V20k9xSYaowiHOq9vQFamQ9xTvxaN8o2IrrmZUjxKK5rG8hJvzLzLFIhWk0ztNveIs=; 7:jE2PxEm6OL+yDIAvgv2GtGV7SFcKh7FxqqOuBrXjNtV1mD6DOtG1DPkWAl5vgsy9h0qzdZwV3derMEA+eKwJ2PIQsiiWtobx+gOx2YcRNvUT6Pa9i5iwai2UL8/dp8V9fHscbM/RkeHXglX8aDi7HQ== x-ms-office365-filtering-correlation-id: 9c5327f5-1879-44ff-a634-08d66f1d9c1a x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600109)(711020)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020); SRVR:AM0PR05MB4994; x-ms-traffictypediagnostic: AM0PR05MB4994: x-microsoft-antispam-prvs: x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(3230021)(908002)(999002)(5005026)(6040522)(8220055)(2401047)(8121501046)(3002001)(3231475)(944501520)(52105112)(10201501046)(93006095)(93001095)(6055026)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123562045)(201708071742011)(7699051)(76991095); SRVR:AM0PR05MB4994; BCL:0; PCL:0; RULEID:; SRVR:AM0PR05MB4994; x-forefront-prvs: 0903DD1D85 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(376002)(366004)(396003)(346002)(39860400002)(189003)(199004)(81166006)(8676002)(50226002)(81156014)(36756003)(14454004)(8936002)(6436002)(476003)(6636002)(6486002)(26005)(52116002)(486006)(14444005)(105586002)(106356001)(256004)(6506007)(2616005)(386003)(99286004)(25786009)(7736002)(478600001)(102836004)(5660300001)(186003)(68736007)(2906002)(71190400001)(305945005)(71200400001)(19627235002)(97736004)(316002)(6306002)(86362001)(6862004)(6116002)(4326008)(37006003)(53936002)(3846002)(6512007)(66066001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR05MB4994; H:AM0PR05MB6610.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: k1HCe8sBHZONRCXcDh02tt66UY/ZQ0GzHZcqZsCUx18gndHDknaUlLKZjK78gaWdYlXyEMp+4n5WMNTa3m28FSmaF/9mKmpYan8CS8D0fIcQEUgQleG2BWM/yBymSwlS4Fyva4JIdJX9dX/6nzW/MTFR6QNCAjkv291c6ee86dMAtlah3I6m4nCcdrFeFlVdQKFGlIRyDx8xQ7/Vocnr1KCA27kmIwSCIZivL3PNHYOEID+WK+aLLpdMGhH54T5rn89WL6IlyZpUnwfBNoBTzbDIQUbotqvqGxJWUvmf4EfAG49hKFnwEzcZIFJBY/ki spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9c5327f5-1879-44ff-a634-08d66f1d9c1a X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Dec 2018 12:43:48.6355 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR05MB4994 Subject: [dpdk-dev] [PATCH v2] net/mlx5: add ConnectX-6 device IDs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2018 12:43:50 -0000 This commit includes the add of: - ConnectX-6 device ID - ConnectX-6 SRIOV device ID Signed-off-by: Wisam Jaddo --- Changes in v2: - Updated mlx5 docs to include ConnectX-6 product. - Add ConnectX-6 virtual function device as well. config/common_base | 4 ++-- doc/guides/nics/mlx5.rst | 32 +++++++++++++++++--------------- drivers/net/mlx5/mlx5.c | 8 ++++++++ drivers/net/mlx5/mlx5.h | 2 ++ 4 files changed, 29 insertions(+), 17 deletions(-) diff --git a/config/common_base b/config/common_base index 0e3f900..964a695 100644 --- a/config/common_base +++ b/config/common_base @@ -323,8 +323,8 @@ CONFIG_RTE_LIBRTE_MLX4_DEBUG=3Dn CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS=3Dn =20 # -# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5 & Bluefield -# (MLX5) PMD +# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5, +# ConnectX-6 & Bluefield (MLX5) PMD # CONFIG_RTE_LIBRTE_MLX5_PMD=3Dn CONFIG_RTE_LIBRTE_MLX5_DEBUG=3Dn diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index 2c516fe..add8bc1 100644 --- a/doc/guides/nics/mlx5.rst +++ b/doc/guides/nics/mlx5.rst @@ -7,8 +7,9 @@ MLX5 poll mode driver =20 The MLX5 poll mode driver library (**librte_pmd_mlx5**) provides support for **Mellanox ConnectX-4**, **Mellanox ConnectX-4 Lx** , **Mellanox -ConnectX-5** and **Mellanox Bluefield** families of 10/25/40/50/100 Gb/s -adapters as well as their virtual functions (VF) in SR-IOV context. +ConnectX-5**, **Mellanox ConnectX-6** and **Mellanox Bluefield** families +of 10/25/40/50/100/200 Gb/s adapters as well as their virtual functions (V= F) +in SR-IOV context. =20 Information and documentation about these adapters can be found on the `Mellanox website `__. Help is also provided by t= he @@ -274,8 +275,8 @@ Run-time configuration =20 Supported on: =20 - - x86_64 with ConnectX-4, ConnectX-4 LX, ConnectX-5 and Bluefield. - - POWER8 and ARMv8 with ConnectX-4 LX, ConnectX-5 and Bluefield. + - x86_64 with ConnectX-4, ConnectX-4 LX, ConnectX-5, ConnectX-6 and Blue= field. + - POWER8 and ARMv8 with ConnectX-4 LX, ConnectX-5, ConnectX-6 and Bluefi= eld. =20 - ``rxq_cqe_pad_en`` parameter [int] =20 @@ -359,13 +360,13 @@ Run-time configuration =20 This option should be used in combination with ``txq_inline`` above. =20 - On ConnectX-4, ConnectX-4 LX, ConnectX-5 and Bluefield without + On ConnectX-4, ConnectX-4 LX, ConnectX-5, ConnectX-6 and Bluefield witho= ut Enhanced MPW: =20 - Disabled by default. - In case ``txq_inline`` is set recommendation is 4. =20 - On ConnectX-5 and Bluefield with Enhanced MPW: + On ConnectX-5, ConnectX-6 and Bluefield with Enhanced MPW: =20 - Set to 8 by default. =20 @@ -386,7 +387,7 @@ Run-time configuration - ``txq_mpw_en`` parameter [int] =20 A nonzero value enables multi-packet send (MPS) for ConnectX-4 Lx and - enhanced multi-packet send (Enhanced MPS) for ConnectX-5 and Bluefield. + enhanced multi-packet send (Enhanced MPS) for ConnectX-5, ConnectX-6 and= Bluefield. MPS allows the TX burst function to pack up multiple packets in a single descriptor session in order to save PCI bandwidth and improve performance at the cost of a slightly higher CPU usage. When @@ -401,13 +402,13 @@ Run-time configuration DEV_TX_OFFLOAD_VXLAN_TNL_TSO, DEV_TX_OFFLOAD_GRE_TNL_TSO, DEV_TX_OFFLOAD= _VLAN_INSERT``. When those offloads are requested the MPS send function will not be used= . =20 - It is currently only supported on the ConnectX-4 Lx, ConnectX-5 and Blue= field + It is currently only supported on the ConnectX-4 Lx, ConnectX-5, Connect= X-6 and Bluefield families of adapters. On ConnectX-4 Lx the MPW is considered un-secure hence disabled by defau= lt. Users which enable the MPW should be aware that application which provid= es incorrect mbuf descriptors in the Tx burst can lead to serious errors in the host = including, on some cases, NIC to get stuck. - On ConnectX-5 and Bluefield the MPW is secure and enabled by default. + On ConnectX-5, ConnectX-6 and Bluefield the MPW is secure and enabled by= default. =20 - ``txq_mpw_hdr_dseg_en`` parameter [int] =20 @@ -427,14 +428,14 @@ Run-time configuration =20 - ``tx_vec_en`` parameter [int] =20 - A nonzero value enables Tx vector on ConnectX-5 and Bluefield NICs if th= e number of + A nonzero value enables Tx vector on ConnectX-5, ConnectX-6 and Bluefiel= d NICs if the number of global Tx queues on the port is less than ``txqs_max_vec``. =20 This option cannot be used with certain offloads such as ``DEV_TX_OFFLOA= D_TCP_TSO, DEV_TX_OFFLOAD_VXLAN_TNL_TSO, DEV_TX_OFFLOAD_GRE_TNL_TSO, DEV_TX_OFFLOAD= _VLAN_INSERT``. When those offloads are requested the MPS send function will not be used= . =20 - Enabled by default on ConnectX-5 and Bluefield. + Enabled by default on ConnectX-5, ConnectX-6 and Bluefield. =20 - ``rx_vec_en`` parameter [int] =20 @@ -518,7 +519,7 @@ DPDK and must be installed separately: - **libmlx5** =20 Low-level user space driver library for Mellanox - ConnectX-4/ConnectX-5/Bluefield devices, it is automatically loaded + ConnectX-4/ConnectX-5/ConnectX-6/Bluefield devices, it is automatically = loaded by libibverbs. =20 This library basically implements send/receive calls to the hardware @@ -540,7 +541,7 @@ DPDK and must be installed separately: their devices: =20 - mlx5_core: hardware driver managing Mellanox - ConnectX-4/ConnectX-5/Bluefield devices and related Ethernet kernel + ConnectX-4/ConnectX-5/ConnectX-6/Bluefield devices and related Etherne= t kernel network devices. - mlx5_ib: InifiniBand device driver. - ib_uverbs: user space driver for Verbs (entry point for libibverbs). @@ -548,7 +549,7 @@ DPDK and must be installed separately: - **Firmware update** =20 Mellanox OFED releases include firmware updates for - ConnectX-4/ConnectX-5/Bluefield adapters. + ConnectX-4/ConnectX-5/ConnectX-6/Bluefield adapters. =20 Because each release provides new features, these updates must be applie= d to match the kernel modules and libraries they come with. @@ -589,6 +590,7 @@ Mellanox OFED - ConnectX-4 Lx: **14.21.1000** and above. - ConnectX-5: **16.21.1000** and above. - ConnectX-5 Ex: **16.21.1000** and above. + - ConnectX-6: **20.99.5374** and above. - Bluefield: **18.99.3950** and above. =20 While these libraries and kernel modules are available on OpenFabrics @@ -820,7 +822,7 @@ Usage example ------------- =20 This section demonstrates how to launch **testpmd** with Mellanox -ConnectX-4/ConnectX-5/Bluefield devices managed by librte_pmd_mlx5. +ConnectX-4/ConnectX-5/ConnectX-6/Bluefield devices managed by librte_pmd_m= lx5. =20 #. Load the kernel modules: =20 diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c index 9e5cab1..4521045 100644 --- a/drivers/net/mlx5/mlx5.c +++ b/drivers/net/mlx5/mlx5.c @@ -1586,6 +1586,14 @@ static const struct rte_pci_id mlx5_pci_id_map[] =3D= { PCI_DEVICE_ID_MELLANOX_CONNECTX5BFVF) }, { + RTE_PCI_DEVICE(PCI_VENDOR_ID_MELLANOX, + PCI_DEVICE_ID_MELLANOX_CONNECTX6) + }, + { + RTE_PCI_DEVICE(PCI_VENDOR_ID_MELLANOX, + PCI_DEVICE_ID_MELLANOX_CONNECTX6VF) + }, + { .vendor_id =3D 0 } }; diff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h index b2fe5cb..b48cd94 100644 --- a/drivers/net/mlx5/mlx5.h +++ b/drivers/net/mlx5/mlx5.h @@ -52,6 +52,8 @@ enum { PCI_DEVICE_ID_MELLANOX_CONNECTX5EXVF =3D 0x101a, PCI_DEVICE_ID_MELLANOX_CONNECTX5BF =3D 0xa2d2, PCI_DEVICE_ID_MELLANOX_CONNECTX5BFVF =3D 0xa2d3, + PCI_DEVICE_ID_MELLANOX_CONNECTX6 =3D 0x101b, + PCI_DEVICE_ID_MELLANOX_CONNECTX6VF =3D 0x101c, }; =20 /** Switch information returned by mlx5_nl_switch_info(). */ --=20 2.7.4