| CAEN FERS Library v1.1.4 SDK for FERS systems

Functions
Firmware upgrade
API
Collaboration diagram for Firmware upgrade:

## Functions
int | FERS_FirmwareUpgrade (int handle, char filen[200], void(*ptr)(char *msg, int progress))
| Upgrade the firmware of the board. More...
int | FERS_FirmwareBootApplication_ethusb (int handle)
| Reboot the firmware application via Ethernet/USB. More...
int | FERS_FirmwareBootApplication_tdl (int *handle)
| Reboot the firmware application via TDL. More...
int | FERS_CheckBootloaderVersion (int handle, int *isInBootloader, uint32_t *version, uint32_t *release)
| Check if the FPGA is in "bootloader mode" and read the bootloader version. More...

## Detailed Description

## Function Documentation

## ◆ FERS_FirmwareUpgrade()

int FERS_FirmwareUpgrade | ( | int | handle,
|  | char | filen[200],
|  | void(*)(char *msg, int progress) | ptr
| ) |  |

Upgrade the firmware of the board.

Parameters

  [in] | handle | Board handle
  [in] | filen | Firmware file name
  [in] | ptr | Callback function to report progress (message and progress percentage)

Returns
  0 on success, or a negative error code as defined in FERSLIB_ErrorCodes

## ◆ FERS_FirmwareBootApplication_ethusb()

int FERS_FirmwareBootApplication_ethusb | ( | int | handle | ) |

Reboot the firmware application via Ethernet/USB.

Parameters

  [in] | handle | Board handle

Returns
  0 on success, or a negative error code as defined in FERSLIB_ErrorCodes

## ◆ FERS_FirmwareBootApplication_tdl()

int FERS_FirmwareBootApplication_tdl | ( | int * | handle | ) |

Reboot the firmware application via TDL.

Parameters

  [in] | handle | Array of board handles

Returns
  0 on success, or a negative error code as defined in FERSLIB_ErrorCodes

## ◆ FERS_CheckBootloaderVersion()

int FERS_CheckBootloaderVersion | ( | int | handle,
|  | int * | isInBootloader,
|  | uint32_t * | version,
|  | uint32_t * | release
| ) |  |

Check if the FPGA is in "bootloader mode" and read the bootloader version.

Parameters

  [out] | isInBootloader | Pointer to the bootloader state (1 if in bootloader, 0 otherwise)
  [out] | version | Pointer to the bootloader version
  [out] | release | Pointer to the bootloader release number
  [in] | handle | Board handle

Returns
  0 on success, or a negative error code as defined in FERSLIB_ErrorCodes