#ifndef __FPGA_H__ #define __FPGA_H__ #include "BLCommon.h" /** * @defgroup FPGA FPGA * @brief FPGA service unit. * The FPGA unit manages communication between the bootloader and the FPGA via UART. * This unit is driven by the Priority Task via calls to two FPGA executive functions: * 1) Writes update data to the FPGA flash * 2) Reads header, update register, FIFO count as well as the flash status * This unit first reads the header record that includes the FPGA ID and revision and * verifies the FPGA ID to check FPGA communication. * * @addtogroup FPGA * @{ */ // ********** public definitions ********** // ********** public function prototypes ********** void initFPGA( void ); void execFPGA( void ); void signalFPGAReceiptCompleted( void ); BOOL hasUpdateBeenRequested( void ); BOOL isFPGAIDValid( void ); BOOL isFPGAFlashComplete( void ); void signalFPGAToPrepareForUpdate( void ); void signalFPGAToWriteToFlash( U08* data, U32 len ); void signalFPGAToSelfConfigure( void ); /**@}*/ #endif