Utility that allows dumping and flashing the SPI Flash Non-Volatile Memory of the FM10000 family of cards.
Go to file
DataHoarder 233cdfcaa3
All checks were successful
continuous-integration/drone/push Build is passing
Some libraries on clang come from gcc, and it does not depend on it
2020-12-29 21:20:27 +01:00
src General reformat commit to make Sora happy again 2020-12-23 02:24:04 +01:00
.drone.jsonnet Some libraries on clang come from gcc, and it does not depend on it 2020-12-29 21:20:27 +01:00
.gitignore New tool fm10k-flash (#1) 2020-12-21 05:11:23 +00:00
COPYING New tool fm10k-flash (#1) 2020-12-21 05:11:23 +00:00
Makefile Added -Wno-unknown-pragmas to Makefile 2020-12-29 18:53:50 +01:00
README.md Direct PCIe resource access without depending on fm10k driver 2020-12-23 02:01:57 +01:00

fm10k-dump & fm10k-flash

Utility that allows dumping/flashing the SPI Flash Non-Volatile Memory of the FM10000 family of cards.

Requirements

  • GCC >= 4.4.0 or clang
  • make
  • Only one FM10K device installed on hardware.
    • A management resource (BAR4) must be exposed, check bifurcation settings if needed.
    • Usually FM10K cards use two 8x PCIe groups per 16x slot.

Compilation

  • $ make clean && make
  • You can specify whether to use gcc or clang this way: $ make CC=gcc / $ make CC=clang
  • Two executables named ./fm10k-dump and ./fm10k-flash should now exist.

fm10k-dump usage example

  • If the chip on the card is known to the tool, it'll set the image size to match. Alternatively it will use the platform minimum of 8Mbit.
  • # ./fm10k-dump outputImage.bin
  • You can also force the image/chip size: # ./fm10k-dump outputImage.bin 32

fm10k-flash usage example

  • fm10k-flash requires a backup of the existing image before flashing a new one, for safety measures. Use fm10k-dump to take a backup copy of the current state before flashing.
  • # ./fm10k-dump backupImage.bin
  • # ./fm10k-flash inputImage.bin backupImage.bin

License

  • BSD-3-Clause
  • See COPYING for the full license.