Linux SDK (lite-qmi)
MBPL_SDK_R25_ENG3
|
Files | |
file | fms.h |
file | qaGobiApiFms.h |
Firmware Management Service API function prototypes. | |
Data Structures | |
struct | CarrierImage_t |
struct | pack_fms_GetImagesPreference_t |
struct | FMSImageElement |
struct | FMSPrefImageList |
struct | unpack_fms_GetImagesPreference_t |
struct | pack_fms_GetStoredImages_t |
struct | FMSImageIdElement |
struct | FMSImageIDEntries |
struct | FMSImageList |
struct | unpack_fms_GetStoredImages_t |
struct | pack_fms_SetImagesPreference_t |
struct | unpack_fms_SetImagesPreference_t |
struct | pack_fms_DeleteStoredImage_t |
struct | fwinfo_s |
struct | slqsfwinfo_s |
struct | ImageElement |
struct | PrefImageList |
struct | ImageIdElement |
struct | ImageIDEntries |
struct | ImageList |
struct | sGetDeviceSeriesResult |
struct | SWI_STRUCT_CarrierImage |
struct | CurrImageInfo |
struct | CurrentImgList |
Enumerations | |
enum | eGobiImageTech { eGOBI_IMG_TECH_CDMA = 0, eGOBI_IMG_TECH_UMTS } |
enum | eGobiImageCarrier { eGOBI_IMG_CAR_GENERIC = 1, eGOBI_IMG_CAR_FACTORY, eGOBI_IMG_CAR_NORF, eGOBI_IMG_CAR_VERIZON = 101, eGOBI_IMG_CAR_SPRINT, eGOBI_IMG_CAR_ALLTEL, eGOBI_IMG_CAR_BELL, eGOBI_IMG_CAR_TELUS, eGOBI_IMG_CAR_US, eGOBI_IMG_CAR_TELSTRA1, eGOBI_IMG_CAR_CHINA_UNICOM, eGOBI_IMG_CAR_TELCOM_NZ, eGOBI_IMG_CAR_SK_TELCOM1, eGOBI_IMG_CAR_RELIANCE1, eGOBI_IMG_CAR_TATA, eGOBI_IMG_CAR_METROPCS, eGOBI_IMG_CAR_LEAP, eGOBI_IMG_CAR_KDDI, eGOBI_IMG_CAR_IUSACELL, eGOBI_IMG_CAR_CHINA_TELECOM, eGOBI_IMG_CAR_OMH, eGOBI_IMG_CAR_GENERIC_CDMA, eGOBI_IMG_CAR_ATT = 201, eGOBI_IMG_CAR_VODAFONE, eGOBI_IMG_CAR_TMOBILE, eGOBI_IMG_CAR_ORANGE, eGOBI_IMG_CAR_TELEFONICA, eGOBI_IMG_CAR_TELCOM_ITALIA, eGOBI_IMG_CAR_3, eGOBI_IMG_CAR_O2, eGOBI_IMG_CAR_SFR, eGOBI_IMG_CAR_SWISSCOM, eGOBI_IMG_CAR_CHINA_MOBILE, eGOBI_IMG_CAR_TELSTRA2, eGOBI_IMG_CAR_SINGTEL_OPTUS, eGOBI_IMG_CAR_RELIANCE2, eGOBI_IMG_CAR_BHARTI, eGOBI_IMG_CAR_NTT_DOCOMO, eGOBI_IMG_CAR_EMOBILE, eGOBI_IMG_CAR_SOFTBANK, eGOBI_IMG_CAR_KT_FREETEL, eGOBI_IMG_CAR_SK_TELCOM2, eGOBI_IMG_CAR_TELENOR, eGOBI_IMG_CAR_NETCOM, eGOBI_IMG_CAR_TELIASONERA, eGOBI_IMG_CAR_AMX_TELCEL, eGOBI_IMG_CAR_BRASIL_VIVO, eGOBI_IMG_CAR_AERIS, eGOBI_IMG_CAR_ROGERS } |
enum | eGobiImageRegion { eGOBI_IMG_REG_NA = 0, eGOBI_IMG_REG_LA, eGOBI_IMG_REG_EU, eGOBI_IMG_REG_ASIA, eGOBI_IMG_REG_AUS, eGOBI_IMG_REG_GLOBAL } |
enum | eGobiImageGPS { eGOBI_IMG_GPS_NONE = 0, eGOBI_IMG_GPS_STAND_ALONE, eGOBI_IMG_GPS_ASSISTED, eGOBI_IMG_GPS_NO_XTRA } |
enum | eGobiDeviceSeries { eGOBI_DEV_SERIES_UNKNOWN = -1, eGOBI_DEV_SERIES_NON_GOBI = 0, eGOBI_DEV_SERIES_G3K, eGOBI_DEV_SERIES_SIERRA_GOBI, eGOBI_DEV_SERIES_9X15, eGOBI_DEV_SERIES_9X30, eGOBI_DEV_SERIES_9X07_9X50, eGobi_DEV_SERIES_MC83 } |
Functions | |
int | pack_fms_GetImagesPreference (pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_fms_GetImagesPreference_t *reqArg) |
int | unpack_fms_GetImagesPreference (uint8_t *pResp, uint16_t respLen, unpack_fms_GetImagesPreference_t *pOutput) |
int | pack_fms_GetStoredImages (pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_fms_GetStoredImages_t *reqArg) |
int | unpack_fms_GetStoredImages (uint8_t *pResp, uint16_t respLen, unpack_fms_GetStoredImages_t *pOutput) |
int | pack_fms_SetImagesPreference (pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_fms_SetImagesPreference_t *reqArg) |
int | unpack_fms_SetImagesPreference (uint8_t *pResp, uint16_t respLen, unpack_fms_SetImagesPreference_t *pOutput) |
uint32_t | GetValidFwPriCombinations (FMSImageList *pStoredImageList, uint32_t *pValidCombinationSize, CarrierImage_t *pValidCombinations) |
int | pack_fms_DeleteStoredImage (pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_fms_DeleteStoredImage_t *pReqParam) |
int | unpack_fms_DeleteStoredImage (uint8_t *pResp, uint16_t respLen, unpack_fms_DeleteStoredImage_t *pOutput) |
ULONG | GetImageStore (WORD imageStorePathSize, CHAR *pImageStorePath) |
ULONG | SLQSGetFirmwareInfo (struct qmifwinfo_s *pinfo) |
ULONG | SLQSGetImageInfoMC77xx (LPCSTR path, struct qmifwinfo_s *pinfo) |
ULONG | SLQSGetImageInfoMC83xx (LPCSTR path, struct qmifwinfo_s *pinfo) |
ULONG | SLQSGetImageInfo (LPCSTR path, struct qmifwinfo_s *pinfo) |
ULONG | UpgradeFirmware2k (CHAR *pDestinationPath) |
ULONG | GetImagesPreference (ULONG *pImageListSize, struct PrefImageList *pImageList) |
ULONG | SetImagesPreference (ULONG imageListSize, BYTE *pImageList, ULONG bForceDownload, BYTE modemIndex, ULONG *pImageTypesSize, BYTE *pImageTypes) |
ULONG | GetStoredImages (ULONG *pImageListSize, BYTE *pImageList) |
ULONG | DeleteStoredImage (ULONG imageInfoSize, BYTE *pImageInfo) |
ULONG | SLQSGetImageInfo_9x15 (LPCSTR path, BYTE imgType, struct slqsfwinfo_s *pinfo) |
ULONG | SLQSUpgradeFirmware9x07 (CHAR *pDestinationPath) |
ULONG | SLQSUpgradeFirmware9x15 (CHAR *pDestinationPath) |
ULONG | SLQSGetBootVersionNumber (ULONG *bootversion) |
BOOL | SLQSIsSpkgFormatRequired (void) |
void | SLQSSetSpkgFormatRequired (BYTE isneeded) |
void | eGetDeviceSeries (struct sGetDeviceSeriesResult *result) |
ULONG | SLQSSwiGetAllCarrierImages (ULONG *pNumOfItems, struct SWI_STRUCT_CarrierImage *pCarrierImages, char *pFolderPath) |
ULONG | DownloadToSlot (CHAR *path, struct slqsfwinfo_s fwImgInfo, struct slqsfwinfo_s priImgInfo, BYTE slot, BYTE forceDownload) |
ULONG | SLQSDownloadFirmwareToSlot (CHAR *pPath, BYTE slot_index, BYTE force_download) |
ULONG | SLQSGetValidFwPriCombinations (struct ImageList *pStoredImageList, ULONG *pValidCombinationSize, struct SWI_STRUCT_CarrierImage *pValidCombinations) |
ULONG | SLQSSetSIMBasedImageSwitching (void) |
void | SLQSSetCrashStateCheckIgnore (BOOL ignore) |
ULONG | SLQSSwiGetFirmwareCurr (CurrentImgList *pCurrentImgList) |
ULONG | upgrade_9x07_9x50_fw (LPCSTR path) |
ULONG | SetImagePath (CHAR *path, ULONG isMDM9x15, WORD imgMask, BYTE mdmProtocol) |
int | SLQSIsBootloaderDebugEnabled (const char *szPath, const char *pQsn) |
enum eGobiDeviceSeries |
enumeration which lists the Device Series
enum eGobiImageCarrier |
enumeration which lists the carrier supported by the image
enum eGobiImageGPS |
enumeration which lists the GPS type supported by the image
enum eGobiImageRegion |
enumeration which lists the region supported by the image
enum eGobiImageTech |
enumeration which lists the technology supported by the image
ULONG DeleteStoredImage | ( | ULONG | imageInfoSize, |
BYTE * | pImageInfo | ||
) |
Used to delete the specified image from the device. This API function is only relevant to devices with the ability to store multiple firmware images(see Device Supported section below).
[in] | imageInfoSize |
|
[in] | pImageInfo |
|
ULONG DownloadToSlot | ( | CHAR * | path, |
struct slqsfwinfo_s | fwImgInfo, | ||
struct slqsfwinfo_s | priImgInfo, | ||
BYTE | slot, | ||
BYTE | forceDownload | ||
) |
This API is dedicated for downloading a firmware image into a specific slot. it is used for EM74xx/MC74xx only
path |
|
fwImgInfo |
|
priImgInfo |
|
slot |
|
forceDownload |
|
void eGetDeviceSeries | ( | struct sGetDeviceSeriesResult * | result | ) |
Name : eGetDeviceSeries
result |
|
ULONG GetImagesPreference | ( | ULONG * | pImageListSize, |
struct PrefImageList * | pImageList | ||
) |
restore original alignment from stack
Gets the current images preference from the device.
[in,out] | pImageListSize | |
[out] | pImageList |
|
ULONG GetImageStore | ( | WORD | imageStorePathSize, |
CHAR * | pImageStorePath | ||
) |
Returns the image store folder, i.e., the folder containing one or more carrier-specific image subfolders compatible with the currently connected QC WWAN device.
imageStorePathSize |
| |
[out] | pImageStorePath |
|
ULONG GetStoredImages | ( | ULONG * | pImageListSize, |
BYTE * | pImageList | ||
) |
restore original alignment from stack
Gets the list of images stored on the device.
[in,out] | pImageListSize | |
[out] | pImageList |
|
uint32_t GetValidFwPriCombinations | ( | FMSImageList * | pStoredImageList, |
uint32_t * | pValidCombinationSize, | ||
CarrierImage_t * | pValidCombinations | ||
) |
This API distills valid Firmware/PRI combinations from GetStoredImages result
[in] | pStoredImageList |
|
[in,out] | pValidCombinationSize |
|
[out] | pValidCombinations |
|
int pack_fms_DeleteStoredImage | ( | pack_qmi_t * | pCtx, |
uint8_t * | pReqBuf, | ||
uint16_t * | pLen, | ||
pack_fms_DeleteStoredImage_t * | pReqParam | ||
) |
Pack function for deleting a specified stored image.
[in,out] | pCtx | qmi request context |
[out] | pReqBuf | qmi request buffer |
[out] | pLen | qmi request length |
[in] | pReqParam | request prarmeters |
int pack_fms_GetImagesPreference | ( | pack_qmi_t * | pCtx, |
uint8_t * | pReqBuf, | ||
uint16_t * | pLen, | ||
pack_fms_GetImagesPreference_t * | reqArg | ||
) |
Get Images Preference pack
[in,out] | pCtx | qmi request context |
[out] | pReqBuf | qmi request buffer |
[out] | pLen | qmi request length |
[in] | reqArg | request parameter |
int pack_fms_GetStoredImages | ( | pack_qmi_t * | pCtx, |
uint8_t * | pReqBuf, | ||
uint16_t * | pLen, | ||
pack_fms_GetStoredImages_t * | reqArg | ||
) |
Get Images Preference pack
[in,out] | pCtx | qmi request context |
[out] | pReqBuf | qmi request buffer |
[out] | pLen | qmi request length |
[in] | reqArg | request parameter |
int pack_fms_SetImagesPreference | ( | pack_qmi_t * | pCtx, |
uint8_t * | pReqBuf, | ||
uint16_t * | pLen, | ||
pack_fms_SetImagesPreference_t * | reqArg | ||
) |
Set Images Preference pack
[in,out] | pCtx | qmi request context |
[out] | pReqBuf | qmi request buffer |
[out] | pLen | qmi request length |
[in] | reqArg | request parameter |
ULONG SetImagePath | ( | CHAR * | path, |
ULONG | isMDM9x15, | ||
WORD | imgMask, | ||
BYTE | mdmProtocol | ||
) |
This API is used to set image path for firmware download
[in] | path |
|
[in] | isMDM9x15 |
|
[in] | imgMask |
|
[in] | mdmProtocol |
|
ULONG SetImagesPreference | ( | ULONG | imageListSize, |
BYTE * | pImageList, | ||
ULONG | bForceDownload, | ||
BYTE | modemIndex, | ||
ULONG * | pImageTypesSize, | ||
BYTE * | pImageTypes | ||
) |
Sets the current images preference on the device. After this function successfully completes, the device must be reset for the selected image preference to be realized. Additionally, when the returned list of image types that require downloading is not empty, the device opens in QDL mode after the reset. At that point, the QDL portion of this API must be used to download the selected image preference to the device.
imageListSize |
| |
[in] | pImageList |
|
[in] | bForceDownload |
|
modemIndex |
| |
[in,out] | pImageTypesSize |
|
[out] | pImageTypes | -The download image types array. |
ULONG SLQSDownloadFirmwareToSlot | ( | CHAR * | pPath, |
BYTE | slot_index, | ||
BYTE | force_download | ||
) |
This API is used to download firmware to a specific slot id of the modem. It is only applicable for EM74xx variant. This API encapsulates all steps involved in the firmware download process.Hence it is a blocking API call.
This API will not return until the entire process has been completed. This API will takes significant amount of time (in order of minutes, normally should be less than 10 minutes).
This API Performs the following steps:
[in] | pPath |
|
[in] | slot_index |
|
[in] | force_download |
|
ULONG SLQSGetBootVersionNumber | ( | ULONG * | bootversion | ) |
Gets the boot loader version number
[out] | bootversion |
|
ULONG SLQSGetFirmwareInfo | ( | struct qmifwinfo_s * | pinfo | ) |
Returns firmware image information from the connected device
[out] | pinfo |
|
ULONG SLQSGetImageInfo | ( | LPCSTR | path, |
struct qmifwinfo_s * | pinfo | ||
) |
Returns firmware image information from a CWE file or mbn files stored on the host. For CWE, information is returned for the first CWE image found at the specified path. For MBN, the provided path must be located under the image store for the currently connected QC WWAN device. Note that as this API supports multiple firmware image types, it relies on the presence of a supported device. Otherwise, refer to SLQSGetImageInfoMC83xx and SLQSGetImageInfoMC77xx for APIs which do not rely on the presence of a supported device.
[in] | path |
|
[out] | pinfo |
|
ULONG SLQSGetImageInfo_9x15 | ( | LPCSTR | path, |
BYTE | imgType, | ||
struct slqsfwinfo_s * | pinfo | ||
) |
Returns firmware image information from a CWE file(s) stored on the host. It does not rely on the presence of a supported device.
[in] | path |
|
[in] | imgType |
|
[out] | pinfo |
|
ULONG SLQSGetImageInfoMC77xx | ( | LPCSTR | path, |
struct qmifwinfo_s * | pinfo | ||
) |
Returns firmware image information from a SPKGS CWE file stored on the host. The information is returned for the first SPKGS CWE image found at the specified path. This API executes independent of a MC77xx being connected to the target.
[in] | path |
|
[out] | pinfo |
|
ULONG SLQSGetImageInfoMC83xx | ( | LPCSTR | path, |
struct qmifwinfo_s * | pinfo | ||
) |
Returns firmware image information from an MBN file located on the host. This API executes independent of a MC83xx being connected to the target.
[in] | path |
|
[out] | pinfo |
|
ULONG SLQSGetValidFwPriCombinations | ( | struct ImageList * | pStoredImageList, |
ULONG * | pValidCombinationSize, | ||
struct SWI_STRUCT_CarrierImage * | pValidCombinations | ||
) |
This API distills valid Firmware/PRI combinations from GetStoredImages result
[in] | pStoredImageList |
|
[in,out] | pValidCombinationSize |
|
[out] | pValidCombinations |
|
int SLQSIsBootloaderDebugEnabled | ( | const char * | szPath, |
const char * | pQsn | ||
) |
This API is used to check if the bootloader is debug enabled or not for the specified QSN
[in] | szPath |
|
[in] | pQsn |
|
BOOL SLQSIsSpkgFormatRequired | ( | void | ) |
Check if SPKG format download is required for SL9090/MC9090, it returns the value whcih was set by API SLQSSetSpkgFormatRequired()
void SLQSSetCrashStateCheckIgnore | ( | BOOL | ignore | ) |
This API is used to set whether ignore crash state checking before proceed firmware download using the API UpgradeFirmware2k().
[in] | ignore |
|
ULONG SLQSSetSIMBasedImageSwitching | ( | void | ) |
This API is used to enable the SIM-based Image Switching. The modem will reboot automatically to take effect of the enabing
void SLQSSetSpkgFormatRequired | ( | BYTE | isneeded | ) |
Set if SPKG format download is required for SL9090/MC9090
isneeded | [INPUT] user inputs the firmware download method preference
|
ULONG SLQSSwiGetAllCarrierImages | ( | ULONG * | pNumOfItems, |
struct SWI_STRUCT_CarrierImage * | pCarrierImages, | ||
char * | pFolderPath | ||
) |
This API gets a list of all images stored on both the host and the device
pNumOfItems |
| |
[out] | pCarrierImages | |
[in] | pFolderPath |
|
ULONG SLQSSwiGetFirmwareCurr | ( | CurrentImgList * | pCurrentImgList | ) |
This API gets the currently active images on the device.
pCurrentImgList |
|
ULONG SLQSUpgradeFirmware9x07 | ( | CHAR * | pDestinationPath | ) |
This API is used to download firmware to a WP760x device.
This API Performs the following steps:
[in] | pDestinationPath |
|
ULONG SLQSUpgradeFirmware9x15 | ( | CHAR * | pDestinationPath | ) |
This API is used to upgrade firmware on a MC73xx device. This API encapsulates all steps involved in the firmware download process. It is an alternative to any firmware download application. Hence it is a blocking API call. This API will not return until the entire process has been completed.
This API Performs the following steps:
[in] | pDestinationPath |
|
int unpack_fms_DeleteStoredImage | ( | uint8_t * | pResp, |
uint16_t | respLen, | ||
unpack_fms_DeleteStoredImage_t * | pOutput | ||
) |
Unpack function for deleting a specified image.
[in] | pResp | qmi response from modem |
[in] | respLen | qmi response length |
[out] | pOutput | response unpacked |
int unpack_fms_GetImagesPreference | ( | uint8_t * | pResp, |
uint16_t | respLen, | ||
unpack_fms_GetImagesPreference_t * | pOutput | ||
) |
Get Images Preference unpack
[in] | pResp | qmi response |
[in] | respLen | qmi response length |
[out] | pOutput | unpacked response |
int unpack_fms_GetStoredImages | ( | uint8_t * | pResp, |
uint16_t | respLen, | ||
unpack_fms_GetStoredImages_t * | pOutput | ||
) |
Get Images Preference unpack
[in] | pResp | qmi response |
[in] | respLen | qmi response length |
[out] | pOutput | unpacked response |
int unpack_fms_SetImagesPreference | ( | uint8_t * | pResp, |
uint16_t | respLen, | ||
unpack_fms_SetImagesPreference_t * | pOutput | ||
) |
Set Images Preference unpack
[in] | pResp | qmi response |
[in] | respLen | qmi response length |
[out] | pOutput | unpacked response |
ULONG upgrade_9x07_9x50_fw | ( | LPCSTR | path | ) |
This API is used to download firmware to a 9x07 or 9x50 device.
[in] | path |
|
ULONG UpgradeFirmware2k | ( | CHAR * | pDestinationPath | ) |
This API is used to download firmware to a MC77xx or Gobi 3000 device. For SL909/MC9090, SLQSSetSpkgFormatRequired() needs to be called in advance to specify the download method, Gobi3K or SPKG download, please refer to the API SLQSSetSpkgFormatRequired() for more details of the input values. If SLQSSetSpkgFormatRequired() is not called in advance, it will us Gobi3K firmware download method (MBN files) as the default download method.
This API Performs the following steps:
[in] | pDestinationPath |
|