Upon first time flash burning, the GUIDs and VPD of the device are required to be set on the flash. The sections below demonstrate two methods of burning a new device in order to set these initial settings. Subsequent firmware updates will not change these settings.
flint for OEM is required for burning Spectrum/Switch-IB 2 for the first time.
For information regarding GUIDs, MACs and VPD, please refer to Accessing Remote InfiniBand Device by Direct Route MADs.
Burning the Spectrum/Switch-IB 2 Device
Method 1: Generating Firmware with Specific GUIDs and MACs and Burning it on Device
In order to burn a new Spectrum/Switch-IB 2 device, follow the steps below:
Generate the initial image with the correct GUIDs and VPD for the specific device using the mlxburn tool. The generated image occupies full flash size.
# mlxburn -fw FW/fw-Spectrum.mlx -c FW/MCB194A-FCA_A1.ini -wrimage fw-Spectrum-MCB194A- FCA_A1.bin -base_guid 0x0002c903002ef500 -base_mac 0x02c90ef500 -vpd_r_file ./vpd_r_data.bin
Disable Write protection.
# flint -d /dev/mst/mt585_pciconf0 -override_cache_replacement hw set Flash0.WritePro- tected=Disabled
Burn the entire flash.
# flint -d /dev/mst/mt585_pciconf0 -i ./fw-Spectrum-MCB194A-FCA_A1.bin -override_cache_re- placement -ignore_dev_data -nofs -allow_psid_change -y b
Set Write protection.
# flint -d /dev/mst/mt585_pciconf0 -override_cache_replacement hw set Flash0.WriteProtected=Top,8-SubSectors
Enable flash quad SPI IO operations.
# flint -d /dev/mst/mt585_pciconf0 -override_cache_replacement hw set QuadEn=1
Method 2: Generating a Firmware Image with Blank GUIDs, Burning and Setting GUIDs on the Device
In order to burn a new Spectrum/Switch-IB 2 device, follow the steps below:
Generate the initial image VPD for the specific device using the mlxburn tool. The generated image occupies full flash size.
# mlxburn -fw FW/fw-Spectrum.mlx -c FW/MCB194A-FCA_A1.ini -wrimage fw-Spectrum-MCB194A- FCA_A1.bin -vpd_r_file ./vpd_r_data.bin
Disable Write protection.
# flint -d /dev/mst/mt585_pciconf0 -override_cache_replacement hw set Flash0.WritePro- tected=Disabled
Burn the entire flash using the flint tool.
# flint -d /dev/mst/mt585_pciconf0 -i ./fw-Spectrum-MCB194A-FCA_A1.bin -ocr -ignore_dev_data -nofs -allow_psid_change -y b
Set device manufacture GUIDs and MACs.
# flint -d /dev/mst/mt585_pciconf0 -ocr -guid 0xe41d2d0300570fc0 -mac 0x0000e41d2d570fc0 smg
Set device GUIDs and MACs.
# flint -d /dev/mst/mt585_pciconf0 -ocr -guid 0xe41d2d0300570fc0 -mac 0x0000e41d2d570fc0 sg
Set Write protection on the last sector.
# flint -d /dev/mst/mt585_pciconf0 -ocr hw set Flash0.WriteProtected=Top,8-SubSectors
Enable flash quad SPI IO operations.
# flint -d /dev/mst/mt585_pciconf0 -ocr hw set QuadEn=1
To view flash settings:
# flint -d /dev/mst/mt53000_pciconf0 -ocr hw query
To view assigned GUIDs:
# flint -d /dev/mst/mt53000_pciconf0 -ocr q
To change a GUID after the initial burn:
# flint -d /dev/mst/mt53000_pciconf0 -ocr -guid 0xe41d2d0300570fc0 sg
To change a MAC after the initial burn:
# flint -d /dev/mst/mt53000_pciconf0 -ocr -mac 0x0000e41d2d570fc0 sg
To change a GUID and derive MAC from it after the initial burn, run:
# flint -d /dev/mst/mt53000_pciconf0 -ocr -uid 0xe41d2d0300570fc0 sg