SPOJE.NET

Technická dokumentace

Uživatelské nástroje

Nástroje pro tento web


howto:hw:mellanox

Mellanox ETH

Upgrade firmwaru karty

Zjisteni part numberu a verze firmwaru u Mellanox karet. Potrebujeme mit nainstalovany balicek mstflint

# ethtool -i ens4f0np0
driver: mlx5_core
version: 5.5-1.0.3
firmware-version: 14.27.1016 (MT_2420110004)
expansion-rom-version: 
bus-info: 0000:10:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: yes

# lspci | grep Mella
10:00.0 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]
10:00.1 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]
81:00.0 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]
81:00.1 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]

# lspci -vv -s 10:00.0 | grep "Part number" -A 3
			[PN] Part number: MCX4121A-XCAT        
			[EC] Engineering changes: AJ
			[SN] Serial number: MT2031J10949            
			[V0] Vendor specific: PCIeGen3 x8        

# mstflint -d 10:00.0 q
Image type:            FS3
FW Version:            14.27.1016
FW Release Date:       27.2.2020
Product Version:       14.27.1016
Rom Info:              type=UEFI version=14.20.19 cpu=AMD64,AARCH64
                       type=PXE version=3.5.901 cpu=AMD64
Description:           UID                GuidsNumber
Base GUID:             0c42a10300eabd04        4
Base MAC:              0c42a1eabd04            4
Image VSD:             N/A
Device VSD:            N/A
PSID:                  MT_2420110004
Security Attributes:   N/A

Upgrade FW

Podle part number a PSID vybereme konkretni verzi FW na webu NVIDIA. V našem případě je to Part number: MCX4121A-XCAT a PSID: MT_2420110004. Vybereme tedy nasledujici firmware:

Po stazeni je dobre overit md5 prikazem md5sum a porovnat, jestli sedí s checksumem uvedeným na webu.

06adda309f41dae265387470cae6c880 fw-ConnectX4Lx-rel-14_32_1900-MCX4121A-XCA_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin.zip

A nyní můžeme po rozbalení přejít k upgradu FW:

# mstflint -d 10:00.0 -i fw-ConnectX4Lx-rel-14_32_1900-MCX4121A-XCA_Ax-UEFI-14.25.17-FlexBoot-3.6.502.bin burn

    Current FW version on flash:  14.27.1016
    New FW version:               14.32.1900

FSMST_INITIALIZE -   OK
Writing Boot image component -   OK
-I- To load new FW run mstfwreset or reboot machine.

# mstflint -d 10:00.0 v

FS3 failsafe image

     /0x00800038-0x00801e8b (0x001e54)/ (BOOT2) - OK
     /0x00802000-0x0080201f (0x000020)/ (ITOC_HEADER) - OK
     /0x00804000-0x0081472b (0x01072c)/ (IRON_PREP_CODE) - OK
     /0x00815000-0x008150ff (0x000100)/ (FS3_RESET_INFO) - OK
     /0x00816000-0x00816bff (0x000c00)/ (FW_MAIN_CFG) - OK
     /0x00817000-0x008174bf (0x0004c0)/ (FW_BOOT_CFG) - OK
     /0x00818000-0x008195ff (0x001600)/ (HW_MAIN_CFG) - OK
     /0x0081a000-0x0081a13f (0x000140)/ (HW_BOOT_CFG) - OK
     /0x0081b000-0x0081dc7f (0x002c80)/ (PHY_UC_CONSTS) - OK
     /0x0081e000-0x0081e13f (0x000140)/ (IMAGE_SIGNATURE_256) - OK
     /0x0081f000-0x0081f8ff (0x000900)/ (PUBLIC_KEYS_2048) - OK
     /0x00820000-0x0082008f (0x000090)/ (FORBIDDEN_VERSIONS) - OK
     /0x00821000-0x0082123f (0x000240)/ (IMAGE_SIGNATURE_512) - OK
     /0x00822000-0x008230ff (0x001100)/ (PUBLIC_KEYS_4096) - OK
     /0x00824000-0x00873fff (0x050000)/ (FS4_PART_TYPE_PROGRAMMABLE_HW_FW) - OK
     /0x00874000-0x00925e27 (0x0b1e28)/ (ROM_CODE) - OK
     /0x00926000-0x00935fff (0x010000)/ (CRDUMP_MASK_DATA) - OK
     /0x00936000-0x009369ff (0x000a00)/ (PHY_UC_CMD) - OK
     /0x00937000-0x0094091f (0x009920)/ (PHY_UC_CODE) - OK
     /0x00941000-0x0096c457 (0x02b458)/ (PCI_CODE) - OK
     /0x0096d000-0x00cbb8bf (0x34e8c0)/ (MAIN_CODE) - OK
     /0x00cbc000-0x00cc9cbf (0x00dcc0)/ (PCIE_LINK_CODE) - OK
     /0x00cca000-0x00ccae3f (0x000e40)/ (POST_IRON_BOOT_CODE) - OK
     /0x00ccb000-0x00ccce0f (0x001e10)/ (UPGRADE_CODE) - OK
     /0x00ccd000-0x00ccd3ff (0x000400)/ (IMAGE_INFO) - OK
     /0x00ccd400-0x00ccdb6f (0x000770)/ (DBG_FW_INI) - OK
     /0x00ccdb70-0x00ccdb77 (0x000008)/ (DBG_FW_PARAMS) - OK
     /0x00fa0000-0x00faffff (0x010000)/ (NV_DATA) - CRC IGNORED
     /0x00fb0000-0x00fbffff (0x010000)/ (NV_DATA) - CRC IGNORED
     /0x00fc0000-0x00fcffff (0x010000)/ (FW_NV_LOG) - CRC IGNORED
     /0x00fee000-0x00fee1ff (0x000200)/ (DEV_INFO) - OK
     /0x00ff8000-0x00ff813f (0x000140)/ (MFG_INFO) - OK
     /0x00ff8140-0x00ff81b7 (0x000078)/ (VPD_R0) - OK

-I- FW image verification succeeded. Image is bootable.

# mstflint -d 10:00.0 q full
Image type:            FS3
FW Version:            14.32.1900
FW Version(Running):   14.27.1016
FW Release Date:       25.8.2024
Part Number:           MCX4121A-XCA_Ax
Description:           ConnectX-4 Lx EN network interface card; 10GbE dual-port SFP28; PCIe3.0 x8; ROHS R6
Product Version:       14.27.1016
Rom Info:              type=UEFI version=14.20.19 cpu=AMD64,AARCH64
                       type=PXE version=3.5.901 cpu=AMD64
Description:           UID                GuidsNumber
Base GUID:             0c42a10300eabd04        4
Base MAC:              0c42a1eabd04            4
Image VSD:             N/A
Device VSD:            N/A
PSID:                  MT_2420110004
Security Attributes:   N/A
Default Update Method: fw_ctrl

Nakonec provedeme reboot stroje.

Image type:            FS3
FW Version:            14.32.1900
FW Release Date:       25.8.2024
Product Version:       14.32.1900
Rom Info:              type=UEFI version=14.25.17 cpu=AMD64,AARCH64
                       type=PXE version=3.6.502 cpu=AMD64
Description:           UID                GuidsNumber
Base GUID:             0c42a10300eabd04        4
Base MAC:              0c42a1eabd04            4
Image VSD:             N/A
Device VSD:            N/A
PSID:                  MT_2420110004
Security Attributes:   N/A

Cerpano odtud:

Upgrade ovladacu v jadre

  1. Ovladace je mozne stahnout z teto stránky
  2. Doporučuje se stáhnout vždy zdrojový balíček pro příslušnou nejbližší verzi OS
  3. Před instalací modulu jádra potřebujeme aktuální zdrojové kody spuštěného jádra systému. V debianu toho docílíme instalací balíčku linux-headers-amd64
  4. Po rozbaleni archivu do adresáře /usr/src spustíme příkaz /install.pl --force-dkms
  5. Tímto způsobem zajistíme kompilaci kodulu pomocí dkms avygenerování pčíslušných instalčních balíčků, které se sami i nainstalují.
  6. Po úspěšném dokončení restartujeme system.

Následně můžeme ověřit příkazem ethool instalaci nového modulu jádra

# ethtool -i eth2
driver: mlx5_core
version: 5.8-6.0.4
firmware-version: 14.32.1900 (MT_2420110004)
expansion-rom-version: 
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: yes

Instalace řes DKMS zajistí, že se modul překompije pro aktuální verzi kernelu v případě že v budoucnu dojde k upgradu jádra systému.

Po instalaci nových ovladačů bjude potřeba asi doinstalovat znovu balíček mstflint, protože instalační skript preventivně před instalací nové verze modulu odinstaluje všchny stávající balíčky týkající se mellanox karet.

howto/hw/mellanox.txt · Poslední úprava: 2025/02/07 19:00 autor: gandalf