How to Get Mellanox NIC Details on an Ubuntu Server

How to Get Mellanox NIC Details on an Ubuntu Server

Step 1: List All Mellanox Adapters

To find all Mellanox network adapters on your system, run:
  1. lspci | grep Mellanox

Example output:

  1. 04:00.0 Ethernet controller: Mellanox Technologies MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0)

Step 2: Retrieve Detailed Information for a Specific Adapter

Once you have identified the PCI address (e.g., 04:00.0), run the following command:
  1. lspci -vv -s 04:00.0

This provides detailed information about the adapter, including:

  • Device type
  • Subsystem
  • Memory regions
  • Kernel driver in use

Example output:

  1. 04:00.0 Ethernet controller: Mellanox Technologies MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0) Subsystem: Mellanox Technologies Device 0015 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 10 IOMMU group: 21 Region 0: Memory at fc600000 (64-bit, non-prefetchable) [size=1M] Region 2: Memory at e0800000 (64-bit, prefetchable) [size=8M] Expansion ROM at fc500000 [disabled] [size=1M] Capabilities: <access denied> Kernel driver in use: mlx4_core Kernel modules: mlx4_core

Step 3: Search for Part Number and Serial Number

Some Mellanox adapters provide part number and serial number details. To check, run:
  1. lspci -vv -s 04:00.0 | grep "Part number" -A 3

If this does not return any output, the details may not be available via lspci on your specific adapter.

Step 4: Running with Sudo for Additional Details

Some additional details may be available only when running the command with sudo. Try running:
  1. sudo lspci -vv -s 63:00.0

Example output with sudo:

  1. 63:00.0 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6] Subsystem: Mellanox Technologies Device 0008 Physical Slot: 1 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 NUMA node: 0 Region 0: Memory at c4000000 (64-bit, prefetchable) [size=32M] Expansion ROM at c1c00000 [virtual] [disabled] [size=1M] Capabilities: [60] Express (v2) Endpoint, MSI 00 DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 75W DevCtl: CorrErr- NonFatalErr+ FatalErr+ UnsupReq- RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset- MaxPayload 512 bytes, MaxReadReq 4096 bytes DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend- LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM not supported ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+ LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 16GT/s, Width x16 TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Range ABC, TimeoutDis+ NROPrPrP- LTR- 10BitTagComp+ 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix- EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit- FRS- TPHComp- ExtTPHComp- AtomicOpsCap: 32bit- 64bit- 128bitCAS- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- 10BitTagReq- OBFF Disabled, AtomicOpsCtl: ReqEn+ LnkCap2: Supported Link Speeds: 2.5-16GT/s, Crosslink- Retimer+ 2Retimers+ DRS- LnkCtl2: Target Link Speed: 16GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete+ EqualizationPhase1+ EqualizationPhase2+ EqualizationPhase3+ LinkEqualizationRequest- Retimer- 2Retimers- CrosslinkRes: unsupported Capabilities: [48] Vital Product Data Product Name: ConnectX-6 VPI adapter card, 100Gb/s (HDR100, EDR IB and 100GbE), dual-port QSFP56 Read-only fields: [PN] Part number: MCX653106A-ECAT [EC] Engineering changes: AG [V2] Vendor specific: MCX653106A-ECAT [SN] Serial number: ******* [V3] Vendor specific: 9ebefcd************ [VA] Vendor specific: MLX:MN=MLNX:CSKU=V2:UUID=V3:PCI=V0:MODL=CX653106A [V0] Vendor specific: PCIeGen4 x16 [VU] Vendor specific: MT2318********* [RV] Reserved: checksum good, 1 byte(s) reserved End Capabilities: [9c] MSI-X: Enable+ Count=64 Masked- Vector table: BAR=0 offset=00002000 PBA: BAR=0 offset=00003000 Capabilities: [c0] Vendor Specific Information: Len=18 <?> Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0-,D1-,D2-,D3hot-,D3cold+) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- Capabilities: [100 v1] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CEMsk: RxErr+ BadTLP+ BadDLLP+ Rollover+ Timeout+ AdvNonFatalErr+ AERCap: First Error Pointer: 08, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn- MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap- HeaderLog: 00000000 00000000 00000000 00000000 Capabilities: [150 v1] Alternative Routing-ID Interpretation (ARI) ARICap: MFVC- ACS-, Next Function: 1 ARICtl: MFVC- ACS-, Function Group: 0 Capabilities: [1c0 v1] Secondary PCI Express LnkCtl3: LnkEquIntrruptEn- PerformEqu- LaneErrStat: 0 Capabilities: [230 v1] Access Control Services ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans- ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans- Capabilities: [320 v1] Lane Margining at the Receiver <?> Capabilities: [370 v1] Physical Layer 16.0 GT/s <?> Capabilities: [420 v1] Data Link Feature <?> Kernel driver in use: mlx5_core Kernel modules: mlx5_core

This may provide extra information, such as capabilities, device serial number, and additional hardware details.

Conclusion

Using lspci, you can list all Mellanox adapters, retrieve detailed information, and check various hardware details. Running commands with sudo may reveal additional insights about the adapter.
    • Related Articles

    • Initial steps for the troubleshooting/detecting error if NIC card is not detecting on server.

      What is NIC(Network interface Card) Card? A network interface card is a piece of hardware that allows computers to communicate with other devices on a network. It can also be called an Ethernet card, LAN card, or network adaptor. A NIC provides a ...
    • How to Remove and Reinstall NVIDIA Drivers on Ubuntu

      This article provides step by step guide to completely remove existing NVIDIA drivers and reinstall specific version of the NVIDIA driver on the Ubuntu system Prerequisites Administrative (sudo) access to the Ubuntu system. Internet access to ...
    • Setup noVNC on Ubuntu 20.04/Gnome 3.36

      VNC (Virtual Network Computing) enables you to control your Linux installation from another computer on the same network, by viewing and interacting with the desktop from the other computer. To learn more about VNC, click here noVNC allows you to ...
    • Enabling X11 Forwarding on Ubuntu 22.04 to Run qluman-qt from a Head Node

      Objective This article provides step-by-step instructions to enable X11 forwarding on a head node running Ubuntu 22.04 server edition and how to access GUI applications like qluman-qt from a login node using SSH with X11 forwarding. Edit SSH Server ...
    • Troubleshooting on Server Network Speed

      Steps to troubleshoot speed on server for 10G NIC Verify Network Configuration Network Adapter Settings: Check the settings of the Intel® Dual Port X710-T2L 10-Gigabit Ethernet Network Adapter on each server. Ensure that the adapter is configured for ...