le_fwupdate_interface.h
Go to the documentation of this file.
19 * Firmware update allows the various firmware images to be updated from the application processor.55 * On platform which supports dual system, if the image is successfully downloaded, the user needs56 * to swap the systems in order to use the updated system. This will reset all processors. After the62 * During the download, the flash programming position is saved. Thanks to this position, fwupdate63 * service is able to resume the download without downloading the update package at the beginning.103 //--------------------------------------------------------------------------------------------------107 //--------------------------------------------------------------------------------------------------110 //--------------------------------------------------------------------------------------------------113 * Connect the current client thread to the service providing this API. Block until the service is116 * For each thread that wants to use this API, either ConnectService or TryConnectService must be117 * called before any other functions in this API. Normally, ConnectService is automatically called122 //--------------------------------------------------------------------------------------------------128 //--------------------------------------------------------------------------------------------------131 * Try to connect the current client thread to the service providing this API. Return with an error134 * For each thread that wants to use this API, either ConnectService or TryConnectService must be135 * called before any other functions in this API. Normally, ConnectService is automatically called144 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).147 //--------------------------------------------------------------------------------------------------153 //--------------------------------------------------------------------------------------------------157 * When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants160 //--------------------------------------------------------------------------------------------------167 //--------------------------------------------------------------------------------------------------173 * longer a connection to the service, and the functions in this API can't be used. For details, see178 //--------------------------------------------------------------------------------------------------185 //--------------------------------------------------------------------------------------------------190 //--------------------------------------------------------------------------------------------------193 //--------------------------------------------------------------------------------------------------211 //--------------------------------------------------------------------------------------------------218 //--------------------------------------------------------------------------------------------------240 //--------------------------------------------------------------------------------------------------246 //--------------------------------------------------------------------------------------------------255 //--------------------------------------------------------------------------------------------------262 //--------------------------------------------------------------------------------------------------271 //--------------------------------------------------------------------------------------------------282 //--------------------------------------------------------------------------------------------------295 //--------------------------------------------------------------------------------------------------304 //--------------------------------------------------------------------------------------------------317 //--------------------------------------------------------------------------------------------------326 //--------------------------------------------------------------------------------------------------339 //--------------------------------------------------------------------------------------------------354 //--------------------------------------------------------------------------------------------------366 * @note If the caller passes in a bad pointer, it is a fatal error and the function won't return.368 //--------------------------------------------------------------------------------------------------377 //--------------------------------------------------------------------------------------------------388 //--------------------------------------------------------------------------------------------------395 //--------------------------------------------------------------------------------------------------411 //--------------------------------------------------------------------------------------------------417 //--------------------------------------------------------------------------------------------------421 * Dual System: Requests a system Sync. The UPDATE system will be synchronised with the ACTIVE one.436 //--------------------------------------------------------------------------------------------------442 //--------------------------------------------------------------------------------------------------444 * Request to install the package and marks the system as good. Calling this API will result in a447 * Dual System: Request a full system reset with a systems SWAP and systems SYNC. After the reset,458 //--------------------------------------------------------------------------------------------------le_result_t le_fwupdate_Download(int fd)le_result_t le_fwupdate_GetSystemVersion(uint8_t index, char *versionName, size_t versionNameSize, char *version, size_t versionSize)LE_FULL_API void le_fwupdate_SetServerDisconnectHandler(le_fwupdate_DisconnectHandler_t disconnectHandler, void *contextPtr)le_result_t le_fwupdate_InitDownload(void)le_result_t le_fwupdate_IsSystemMarkedGood(bool *isSystemGoodPtr)void le_fwupdate_ConnectService(void)le_result_t le_fwupdate_GetAppBootloaderVersion(char *version, size_t versionSize)le_result_t le_fwupdate_GetUpdateStatus(le_fwupdate_UpdateStatus_t *statusPtr, char *statusLabel, size_t statusLabelSize)le_result_t le_fwupdate_Install(void)le_result_t le_fwupdate_InstallAndMarkGood(void)void(* le_fwupdate_DisconnectHandler_t)(void *)Definition: le_fwupdate_interface.h:108le_result_t le_fwupdate_GetBootloaderVersion(char *version, size_t versionSize)le_result_t le_fwupdate_MarkGood(void)le_result_t le_fwupdate_GetResumePosition(size_t *positionPtr)le_result_t le_fwupdate_GetFirmwareVersion(char *version, size_t versionSize)le_result_t le_fwupdate_TryConnectService(void)void le_fwupdate_DisconnectService(void)