I’m working with NVIDIA ConnectX-8 adapters and observing inconsistent visiblity of the NUM_OF_PLANES_P1 configuraiton across devices that otherwise appear identical.
Setup:
- Adapter: NVIDIA ConnectX-8 (900-9X81E-00EX-ST0_Ax)
- Firmware version: 40.46.3048
- PSID: MT_0000001167
- Secure FW enabled
- OS: Linux
Observation:
I’m using the following command to list available configuration parameters:
$ sudo mlxconfig -d /dev/mst/mt4131_pciconfX q
On one of the CX8s I was able to see:
NUM_OF_PLANES_P1 1
However, on another CX8 in the same system (same FW version & PSID), this parameter was not visible.
Impact:
By default enumerates as 4 separate PCIe devices (x4 each), which I’m assuming is because the CX8 is configured in 4x200G links mode by default. I want to work in single x16 device and hence the requirement to change the NUM_OF_PLANES_P1 configuration variable to 1.
Logs:
mlxconfig dump where NUM_OF_PLANES_P1 is visible:
$ sudo flint -d /dev/mst/mt4131_pciconf0 q full
Image type: FS5
FW Version: 40.46.3048
FW Release Date: 31.8.2025
Part Number: 900-9X81E-00EX-ST0_Ax
Description: NVIDIA ConnectX-8 C8180L HHHL SuperNIC; 800Gbs XDR IB (default mode) / 2x400GbE; Single-cage OSFP; PCIe 6 x16 with x16 PCIe Socket Direct Extension option; Crypto Enabled; Secure Boot Enabled
Product Version: 40.46.3048
Rom Info: type=UEFI version=14.39.14 cpu=AMD64,AARCH64
type=PXE version=3.8.100 cpu=AMD64
Base GUID: 605e65030098afca 32
Base MAC: 605e6598afca 32
System GUID: 605e65030098afca
Node GUID: 605e65030098afca
Port GUID: 605e65030098afca
Allocated GUID: 0000000000000000
Image VSD: N/A
Device VSD: N/A
PSID: MT_0000001167
Security Attributes: secure-fw
Default Update Method: fw_ctrl
Life cycle: GA SECURED
Secure Boot Capable: Enabled
EFUSE Security Ver: 0
Image Security Ver: 0
Security Ver Program: Manually ; Disabled
Encryption: Enabled
PCIe switch mode only: Disabled
$ sudo mlxconfig -d /dev/mst/mt4131_pciconf0 q | grep PLANES
NUM_OF_PLANES_P1 1
mlxconfig dump where NUM_OF_PLANES_P1 is not visible:
$ sudo flint -d /dev/mst/mt4131_pciconf0 q full
Image type: FS4
FW Version: 40.46.3048
FW Release Date: 31.8.2025
Part Number: 900-9X81E-00EX-ST0_Ax
Description: NVIDIA ConnectX-8 C8180L HHHL SuperNIC; 800Gbs XDR IB (default mode) / 2x400GbE; Single-cage OSFP; PCIe 6 x16 with x16 PCIe Socket Direct Extension option; Crypto Enabled; Secure Boot Enabled
Product Version: 40.46.3048
Rom Info: type=UEFI version=14.39.14 cpu=AMD64,AARCH64
type=PXE version=3.8.100 cpu=AMD64
Base GUID: 605e65030098b58a 32
Base MAC: 605e6598b58a 32
System GUID: 605e65030098b58a
Node GUID: 605e65030098b58a
Port GUID: 605e65030098b58a
Allocated GUID: 0000000000000000
Image VSD: N/A
Device VSD: N/A
PSID: MT_0000001167
Security Attributes: secure-fw
Default Update Method: fw_ctrl
Life cycle: GA SECURED
Secure Boot Capable: Enabled
Encryption: Enabled
$ sudo mlxconfig -d /dev/mst/mt4131_pciconf0 q | grep PLANES
# (no output)
The only difference in the above log I see is Image Type. But I’m not sure if that will create an issue with the visiblity of a configuration.
Questions:
- What conditions determine whether
NUM_OF_PLANES_P1is exposed viamlxconfig? - What is the supported and persistent method to configure ConnectX-8 to enumerate as a single x16 PCIe endpoint?
- Are there recommended firmware images, modes, or procedures to ensure this configuration remains stable across reboots?