[openib-general] ANNOUNCE: mstflint update

Michael S. Tsirkin mst at mellanox.co.il
Mon Jan 23 09:16:32 PST 2006


Hi!
I have updated mstflint tool with code from mellanox MFT 1.0.1 package.
mstflint is a stand-alone firmware burning tool for Mellanox manufactured HCA
cards. Some success has been reported with cards from Topspin/Cisco.
See the README file under src/userspace/mstflint for more info.

Changes:
* bug fixes
* more flash types supported
* new flag -skip_is to allow safe firmware updates even if
  new firmware includes initial sector update (by updating
  all firmware except the IS)
* portability cleanups: use stdio instead of low level file descriptor
  operations

This code has been tested on x86 and x86_64, on PCI-X and PCI-Express cards.
I'd appreciate feedback and testing on other platforms.

You can help by testing this tool even if you dont have IB cards, or if you
dont want to burn firmware, as described below.

Thanks,
MST

-----------------------------------------------------------------------

To build:
cd src/userspace/mstflint
make

-----------------------------------------------------------------------
Ways to test the tool (without accessing device):

# ./mstflint -i ~/fw-25218-5_1_0-rc22-lion-cub.bin q
Image type:      Failsafe
I.S. Version:    1
Chip Revision:   A0
GUID Des:        Node             Port1            Port2            Sys image
GUIDs:           0002c9000100d050 0002c9000100d051 0002c9000100d052 0002c9000100d050
Board ID:         (MT_0140000001)
VSD:
PSID:            MT_0140000001

# ./mstflint -i ~/fw-25218-5_1_0-rc22-lion-cub.bin v

Failsafe image:

Invariant       /0x00000028-0x0000095f (0x000938)/ (BOOT2) - OK

Primary   Image /0x00010000-0x00010107 (0x000108)/ (Pointer Sector)- OK
                /0x00030028-0x000308af (0x000888)/ (BOOT2) - OK
                /0x000308b0-0x00035ae7 (0x005238)/ (BOOT2) - OK
                /0x00035ae8-0x000380cf (0x0025e8)/ (Configuration) - OK
                /0x000380d0-0x00038103 (0x000034)/ (GUID) - OK
                /0x00038104-0x00046b87 (0x00ea84)/ (DDR) - OK
                /0x00046b88-0x0004fb1b (0x008f94)/ (DDR) - OK
                /0x0004fb1c-0x00067ca3 (0x018188)/ (DDR) - OK
                /0x00067ca4-0x0007fc53 (0x017fb0)/ (DDR) - OK
                /0x0007fc54-0x0008245b (0x002808)/ (DDR) - OK
                /0x0008245c-0x000839c3 (0x001568)/ (DDR) - OK
                /0x000839c4-0x000839d7 (0x000014)/ (Configuration) - OK
                /0x000839d8-0x00083a1b (0x000044)/ (Jump addresses) - OK
                /0x00083a1c-0x0008e1cb (0x00a7b0)/ (EMT Service) - OK

Secondary Image /0x00020000-0x00020107 (0x000108)/ (Pointer Sector)- OK
                /0x00090028-0x000908af (0x000888)/ (BOOT2) - OK
                /0x000908b0-0x00095ae7 (0x005238)/ (BOOT2) - OK
                /0x00095ae8-0x000980cf (0x0025e8)/ (Configuration) - OK
                /0x000980d0-0x00098103 (0x000034)/ (GUID) - OK
                /0x00098104-0x000a6b87 (0x00ea84)/ (DDR) - OK
                /0x000a6b88-0x000afb1b (0x008f94)/ (DDR) - OK
                /0x000afb1c-0x000c7ca3 (0x018188)/ (DDR) - OK
                /0x000c7ca4-0x000dfc53 (0x017fb0)/ (DDR) - OK
                /0x000dfc54-0x000e245b (0x002808)/ (DDR) - OK
                /0x000e245c-0x000e39c3 (0x001568)/ (DDR) - OK
                /0x000e39c4-0x000e39d7 (0x000014)/ (Configuration) - OK
                /0x000e39d8-0x000e3a1b (0x000044)/ (Jump addresses) - OK
                /0x000e3a1c-0x000ee1cb (0x00a7b0)/ (EMT Service) - OK

FW Image verification succeeded. Image is OK.

------------------------------------------------------------------------

More ways to test the tool (read flash but do not burn anything to the device):

# ./mstflint -d /sys/class/infiniband/mthca0/device/resource0 q
Image type:      Failsafe
I.S. Version:    1
Chip Revision:   A0
GUID Des:        Node             Port1            Port2            Sys image
GUIDs:           0a66b4900002c901 0a66b4910002c901 0a66b4920002c901 0a66b4930002c901
Board ID:         (MT_00A0000001)
VSD:
PSID:            MT_00A0000001

# ./mstflint -d /sys/class/infiniband/mthca0/device/resource0 v

Failsafe image:

Invariant       /0x00000028-0x0000095f (0x000938)/ (BOOT2) - OK

Primary   Image /0x00010000-0x00010107 (0x000108)/ (Pointer Sector)- OK
                /0x00030028-0x000308af (0x000888)/ (BOOT2) - OK
                /0x000308b0-0x00034baf (0x004300)/ (BOOT2) - OK
                /0x00034bb0-0x00035a93 (0x000ee4)/ (Configuration) - OK
                /0x00035a94-0x00035ac7 (0x000034)/ (GUID) - OK
                /0x00035ac8-0x0003e2bb (0x0087f4)/ (DDR) - OK
                /0x0003e2bc-0x0004c2e3 (0x00e028)/ (DDR) - OK
                /0x0004c2e4-0x0004f213 (0x002f30)/ (DDR) - OK
                /0x0004f214-0x00050907 (0x0016f4)/ (DDR) - OK
                /0x00050908-0x000693e7 (0x018ae0)/ (DDR) - OK
                /0x000693e8-0x0007d307 (0x013f20)/ (DDR) - OK
                /0x0007d308-0x0007d31b (0x000014)/ (Configuration) - OK
                /0x0007d31c-0x0007d35f (0x000044)/ (Jump addresses) - OK
                /0x0007d360-0x0007d3eb (0x00008c)/ (FW Configuration) - OK

Secondary Pointer Sector /0x00020000/ - invalid signature (00000000)

FW Image verification succeeded. Image is OK.




-- 
MST



More information about the general mailing list