fpgaflash [-h] {user, factory, bmc_bl, bmc_app} file [bdf]


fpgaflash updates the various flash devices on an Intel Programmable Acceleration Card (PAC).

If there are multiple devices in the system, fpgaflash must specify a bus, device, and function (BDF) to select the correct device. If you do not specify a BDF, fpgaflash prints out the BDFs of any compatible devices.


There are three positional arguments: flash type, the flash image file, and the BDF.

Flash type: user, factory, bmc_bl, or bmc_app

The first positional argument specifies the type of flash programming. The following table defines the four flash types.

| Flash Type | Description| |—————- |————————————| |user | Only reprograms the user FPGA image in flash memory. | |factory | Reprograms the entire FPGA flash. A catastrophic failure during a factory update such as a power outage requires a USB cable and quartus_pgm to recover. | |bmc_bl | Only reprograms the Board Management Controller (BMC) bootloader image. | |bmc_app | Only reprograms the (BMC) application firmware image. |


Specifies the Raw Programming Data (.rpd) file to program into the FPGA flash or the Hexadecimal (Intel-Format) File (.hex) file for the BMC bootloader or application.


Specifies the BDF of device to program such as 04:00.0 or 0000:04:00.0. This flag is optional when there is a single device in the system.


-h, --help

Print usage information.


fpgaflash user new_image.rpd 0000:04:00.0

Programs new_image.rpd to flash of device with BDF 0000:04:00.0.

## Revision History ##
Document Version Intel Acceleration Stack Version Changes
2018.10.02 1.2 Alpha. (Supported with Intel Quartus Prime Pro Edition 17.1.1.) Added bmc_bl and bmc_app to supported flash types.
2018.05.21 1.1 Beta. (Supported with Intel Quartus Prime Pro Edition 17.1.1.) No changes from previous release.