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 _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general