LinuxQMISDK  SLQS04.00.03
qaGobiApiFms.h
Go to the documentation of this file.
1 
9 /*
10  * Copyright: © 2011-2105 Sierra Wireless, Inc. all rights reserved
11  */
12 #ifndef __GOBI_API_FMS_H__
13 #define __GOBI_API_FMS_H__
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /* MC7xx CWE Header SPKGS defines */
20 #define SLQSFWINFO_MODELID_SZ 20
21 #define SLQSFWINFO_BOOTVERSION_SZ 85
22 #define SLQSFWINFO_APPVERSION_SZ 85
23 #define SLQSFWINFO_SKU_SZ 15
24 #define SLQSFWINFO_PACKAGEID_SZ 85
25 #define SLQSFWINFO_CARRIER_SZ 20
26 #define SLQSFWINFO_PRIVERSION_SZ 16
27 #define SLQSFWINFO_CUR_CARR_NAME 17
28 #define SLQSFWINFO_CUR_CARR_REV 13
29 /* Gobi .mbn image defines */
30 #define GOBI_MBN_IMG_ID_STR_LEN 16
31 #define GOBI_MBN_BUILD_ID_STR_LEN 100
32 #define GOBI_LISTENTRIES_MAX 2
33 #define GOBI_SET_IMG_PREF_RSPLEN 40
34 #define DEVICE_SHUTDOWN 5
35 #define DEVICE_RESET 4
36 #define DEVICE_OFFLINE 3
37 
38 #define FIRMWARE_UPDATE_SUCCESS 0x01
39 #define FIRMWARE_UPDATE_FAIL 0x01
40 #define PRI_UPDATE_FAIL 0x02
41 #define FIRMWARE_UPGRADE_SUCCESS 0x00
42 
43 #define IMG_ID_LEN 16
44 #define BUILD_ID_LEN 100
45 #define G3K_FIRMWARE_DOWNLOAD 1
46 #define SPKG_FIRMWARE_DOWNLOAD 2
47 
48 #define UNIQUE_ID_LEN 16
49 #define BUILD_ID_MAX_LEN 255
50 #define IMGDETAILS_LEN 16
51 #define MAX_IMAGE_IDE_ELEMENTS 50
52 
67 struct fwinfo_s
68 {
74 };
75 
102  CHAR bootversion_str[SLQSFWINFO_BOOTVERSION_SZ];
110 };
111 
144 {
145  union
146  {
147  struct fwinfo_s g;
148  struct slqsfwinfo_s s;
149  } dev;
150 };
151 
169 extern ULONG GetImageStore(
170  WORD imageStorePathSize,
171  CHAR *pImageStorePath );
172 
177 {
178  eGOBI_IMG_TECH_CDMA = 0, /* 0 - CDMA */
179  eGOBI_IMG_TECH_UMTS /* 1 - UMTS */
180 };
181 
186 {
187  eGOBI_IMG_CAR_GENERIC = 1, /* 001 */
190 
191  eGOBI_IMG_CAR_VERIZON = 101, /* 101 */
196  eGOBI_IMG_CAR_US, /* 106 */
208  eGOBI_IMG_CAR_OMH, /* 118 */
210 
211  eGOBI_IMG_CAR_ATT = 201, /* 201 */
217  eGOBI_IMG_CAR_3, /* 207 */
218  eGOBI_IMG_CAR_O2, /* 208 */
219  eGOBI_IMG_CAR_SFR, /* 209 */
238 };
239 
244 {
245  eGOBI_IMG_REG_NA = 0, /* 0 - North America */
246  eGOBI_IMG_REG_LA, /* 1 - Latin America */
247  eGOBI_IMG_REG_EU, /* 2 - Europe */
248  eGOBI_IMG_REG_ASIA, /* 3 - Asia */
249  eGOBI_IMG_REG_AUS, /* 4 - Australia */
250  eGOBI_IMG_REG_GLOBAL /* 5 - Global */
251 };
252 
257 {
258  eGOBI_IMG_GPS_NONE = 0, /* 0 - None */
259  eGOBI_IMG_GPS_STAND_ALONE, /* 1 - Stand-alone */
260  eGOBI_IMG_GPS_ASSISTED, /* 2 - Stand-alone + AGPS + XTRA */
261  eGOBI_IMG_GPS_NO_XTRA /* 3 - Stand-alone + AGPS */
262 };
263 
279  struct qmifwinfo_s *pinfo );
280 
304  LPCSTR path,
305  struct qmifwinfo_s *pinfo );
306 
328  LPCSTR path,
329  struct qmifwinfo_s *pinfo );
330 
357  LPCSTR path,
358  struct qmifwinfo_s *pinfo );
359 
394  CHAR *pDestinationPath );
395 
400 #pragma pack(push)
401 #pragma pack(1)
402 
422 {
427 };
428 
441 {
443  struct ImageElement listEntries[GOBI_LISTENTRIES_MAX];
444 };
445 
449 #pragma pack(pop)
450 
472  ULONG *pImageListSize,
473  struct PrefImageList *pImageList );
474 
517  ULONG imageListSize,
518  BYTE *pImageList,
519  ULONG bForceDownload,
520  BYTE modemIndex,
521  ULONG *pImageTypesSize,
522  BYTE *pImageTypes );
523 
528 #pragma pack(push)
529 #pragma pack(1)
530 
553 {
556  BYTE imageID[16];
559 };
560 
583 {
588  struct ImageIdElement imageIDElement[MAX_IMAGE_IDE_ELEMENTS];
589 };
590 
600 struct ImageList
601 {
603  struct ImageIDEntries imageIDEntries[2];
604 };
605 
609 #pragma pack(pop)
610 
632  ULONG *pImageListSize,
633  BYTE *pImageList );
634 
657  ULONG imageInfoSize,
658  BYTE *pImageInfo );
659 
686  LPCSTR path,
687  BYTE imgType,
688  struct slqsfwinfo_s *pinfo );
689 
735  CHAR *pDestinationPath );
736 
751 ULONG SLQSGetBootVersionNumber(ULONG *bootversion);
752 
765 
778 void SLQSSetSpkgFormatRequired(BYTE isneeded);
779 
781  LPCSTR path );
782 
787 {
788  eGOBI_DEV_SERIES_UNKNOWN = -1, /* unknown */
789  eGOBI_DEV_SERIES_NON_GOBI = 0, /* Non Gobi */
791  eGOBI_DEV_SERIES_SIERRA_GOBI, /* MC9090 SL9090 */
795 };
807 {
808  enum eGobiDeviceSeries eDevice;
810 };
811 
822 
823 
856 {
860  BYTE m_FwImageId[IMG_ID_LEN];
861  BYTE m_FwBuildId[BUILD_ID_LEN];
862  BYTE m_PriImageId[IMG_ID_LEN];
863  BYTE m_PriBuildId[BUILD_ID_LEN];
864 };
884  struct SWI_STRUCT_CarrierImage *pCarrierImages,
885  char *pFolderPath);
886 
912  CHAR* path, struct slqsfwinfo_s fwImgInfo,
913  struct slqsfwinfo_s priImgInfo, BYTE slot, BYTE forceDownload);
914 
965  CHAR *pPath, BYTE slot_index, BYTE force_download );
966 
985 ULONG SLQSGetValidFwPriCombinations (struct ImageList *pStoredImageList,
986  ULONG *pValidCombinationSize,
987  struct SWI_STRUCT_CarrierImage *pValidCombinations);
988 
1001 
1013 void SLQSSetCrashStateCheckIgnore(BOOL ignore);
1034 typedef struct
1035 {
1037  BYTE uniqueID[UNIQUE_ID_LEN];
1040 } CurrImageInfo;
1041 
1065 typedef struct
1066 {
1073 } CurrentImgList;
1074 
1091 ULONG SLQSSwiGetFirmwareCurr( CurrentImgList *pCurrentImgList );
1092 
1093 #ifdef __cplusplus
1094 } /* extern "C" { */
1095 #endif
1096 
1097 #endif /* __GOBI_API_FMS_H__ */
Definition: qaGobiApiFms.h:202
Definition: qaGobiApiFms.h:216
Definition: qaGobiApiFms.h:200
ULONG SetImagesPreference(ULONG imageListSize, BYTE *pImageList, ULONG bForceDownload, BYTE modemIndex, ULONG *pImageTypesSize, BYTE *pImageTypes)
#define MAX_IMAGE_IDE_ELEMENTS
Definition: qaGobiApiFms.h:51
void eGetDeviceSeries(struct sGetDeviceSeriesResult *)
Definition: qaGobiApiFms.h:187
ULONG SLQSUpgradeFirmware9x15(CHAR *pDestinationPath)
ULONG GetImageStore(WORD imageStorePathSize, CHAR *pImageStorePath)
char CHAR
Definition: SwiDataTypes.h:33
#define IMGDETAILS_LEN
Definition: qaGobiApiFms.h:50
#define SLQSFWINFO_APPVERSION_SZ
Definition: qaGobiApiFms.h:22
Definition: qaGobiApiFms.h:188
ULONG m_nCarrierId
Definition: qaGobiApiFms.h:857
void SLQSSetCrashStateCheckIgnore(BOOL ignore)
ULONG upgrade_mc77xx_fw(LPCSTR path)
CurrImageInfo * pCurrImgInfo
Definition: qaGobiApiFms.h:1068
#define BUILD_ID_LEN
Definition: qaGobiApiFms.h:44
unsigned char BYTE
Definition: SwiDataTypes.h:32
#define GOBI_MBN_BUILD_ID_STR_LEN
Definition: qaGobiApiFms.h:31
Definition: qaGobiApiFms.h:221
ULONG SLQSSwiGetAllCarrierImages(ULONG *pNumOfItems, struct SWI_STRUCT_CarrierImage *pCarrierImages, char *pFolderPath)
Definition: qaGobiApiFms.h:232
Definition: qaGobiApiFms.h:247
Definition: qaGobiApiFms.h:196
#define UNIQUE_ID_LEN
Definition: qaGobiApiFms.h:48
Definition: qaGobiApiFms.h:215
Definition: qaGobiApiFms.h:194
BYTE imageType
Definition: qaGobiApiFms.h:584
Definition: qaGobiApiFms.h:219
Definition: qaGobiApiFms.h:233
eGobiImageGPS
Definition: qaGobiApiFms.h:256
BYTE buildIDLength
Definition: qaGobiApiFms.h:557
ULONG SLQSGetImageInfo(LPCSTR path, struct qmifwinfo_s *pinfo)
ULONG SLQSGetImageInfoMC83xx(LPCSTR path, struct qmifwinfo_s *pinfo)
ULONG SLQSGetFirmwareInfo(struct qmifwinfo_s *pinfo)
Definition: qaGobiApiFms.h:197
#define GOBI_LISTENTRIES_MAX
Definition: qaGobiApiFms.h:32
eGobiImageCarrier
Definition: qaGobiApiFms.h:185
ULONG SLQSGetBootVersionNumber(ULONG *bootversion)
Definition: qaGobiApiFms.h:228
Definition: qaGobiApiFms.h:204
Definition: qaGobiApiFms.h:790
Definition: qaGobiApiFms.h:248
Definition: qaGobiApiFms.h:259
Definition: qaGobiApiFms.h:806
BYTE imageType
Definition: qaGobiApiFms.h:423
Definition: qaGobiApiFms.h:143
ULONG Region
Definition: qaGobiApiFms.h:72
Definition: qaGobiApiFms.h:67
Definition: qaGobiApiFms.h:222
ULONG SLQSGetImageInfoMC77xx(LPCSTR path, struct qmifwinfo_s *pinfo)
ULONG SLQSGetValidFwPriCombinations(struct ImageList *pStoredImageList, ULONG *pValidCombinationSize, struct SWI_STRUCT_CarrierImage *pValidCombinations)
const char * LPCSTR
Definition: SwiDataTypes.h:36
Definition: qaGobiApiFms.h:206
ULONG SLQSSwiGetFirmwareCurr(CurrentImgList *pCurrentImgList)
Definition: qaGobiApiFms.h:211
Definition: qaGobiApiFms.h:793
Definition: qaGobiApiFms.h:788
ULONG GetImagesPreference(ULONG *pImageListSize, struct PrefImageList *pImageList)
#define SLQSFWINFO_CARRIER_SZ
Definition: qaGobiApiFms.h:25
Definition: qaGobiApiFms.h:231
#define SLQSFWINFO_MODELID_SZ
Definition: qaGobiApiFms.h:20
Definition: qaGobiApiFms.h:217
BYTE maxImages
Definition: qaGobiApiFms.h:585
#define GOBI_MBN_IMG_ID_STR_LEN
Definition: qaGobiApiFms.h:30
ULONG SLQSSetSIMBasedImageSwitching(void)
Definition: qaGobiApiFms.h:100
Definition: qaGobiApiFms.h:179
Definition: qaGobiApiFms.h:199
BYTE storageIndex
Definition: qaGobiApiFms.h:554
Definition: qaGobiApiFms.h:249
Definition: qaGobiApiFms.h:792
Definition: qaGobiApiFms.h:225
Definition: qaGobiApiFms.h:218
eGobiImageTech
Definition: qaGobiApiFms.h:176
#define SLQSFWINFO_BOOTVERSION_SZ
Definition: qaGobiApiFms.h:21
#define SLQSFWINFO_PRIVERSION_SZ
Definition: qaGobiApiFms.h:26
eGobiDeviceSeries
Definition: qaGobiApiFms.h:786
Definition: qaGobiApiFms.h:220
Definition: qaGobiApiFms.h:192
Definition: qaGobiApiFms.h:207
Definition: qaGobiApiFms.h:855
Definition: qaGobiApiFms.h:208
Definition: qaGobiApiFms.h:791
BYTE buildIdLength
Definition: qaGobiApiFms.h:425
ULONG GetStoredImages(ULONG *pImageListSize, BYTE *pImageList)
#define BUILD_ID_MAX_LEN
Definition: qaGobiApiFms.h:49
Definition: qaGobiApiFms.h:224
Definition: qaGobiApiFms.h:223
Definition: qaGobiApiFms.h:245
Definition: qaGobiApiFms.h:440
ULONG SLQSGetImageInfo_9x15(LPCSTR path, BYTE imgType, struct slqsfwinfo_s *pinfo)
Definition: qaGobiApiFms.h:1034
unsigned long ULONG
Definition: SwiDataTypes.h:28
#define SLQSFWINFO_CUR_CARR_NAME
Definition: qaGobiApiFms.h:27
Definition: qaGobiApiFms.h:226
ULONG uResult
Definition: qaGobiApiFms.h:809
Definition: qaGobiApiFms.h:205
Definition: qaGobiApiFms.h:600
Definition: qaGobiApiFms.h:214
Definition: qaGobiApiFms.h:552
Definition: qaGobiApiFms.h:191
Definition: qaGobiApiFms.h:237
Definition: qaGobiApiFms.h:227
BYTE numEntries
Definition: qaGobiApiFms.h:1067
ULONG m_nStorage
Definition: qaGobiApiFms.h:859
Definition: qaGobiApiFms.h:195
Definition: qaGobiApiFms.h:261
Definition: qaGobiApiFms.h:213
BYTE imageType
Definition: qaGobiApiFms.h:1036
Definition: qaGobiApiFms.h:794
Definition: qaGobiApiFms.h:230
Definition: qaGobiApiFms.h:235
ULONG GPSCapability
Definition: qaGobiApiFms.h:73
BYTE listSize
Definition: qaGobiApiFms.h:602
Definition: qaGobiApiFms.h:421
ULONG m_nFolderId
Definition: qaGobiApiFms.h:858
BYTE buildIDLen
Definition: qaGobiApiFms.h:1038
BYTE imageIDSize
Definition: qaGobiApiFms.h:587
Definition: qaGobiApiFms.h:178
Definition: qaGobiApiFms.h:203
Definition: qaGobiApiFms.h:201
ULONG DownloadToSlot(CHAR *path, struct slqsfwinfo_s fwImgInfo, struct slqsfwinfo_s priImgInfo, BYTE slot, BYTE forceDownload)
Definition: qaGobiApiFms.h:260
ULONG FirmwareID
Definition: qaGobiApiFms.h:69
BOOL SLQSIsSpkgFormatRequired(void)
Definition: qaGobiApiFms.h:229
Definition: qaGobiApiFms.h:250
#define SLQSFWINFO_CUR_CARR_REV
Definition: qaGobiApiFms.h:28
eGobiImageRegion
Definition: qaGobiApiFms.h:243
Definition: qaGobiApiFms.h:198
ULONG SLQSDownloadFirmwareToSlot(CHAR *pPath, BYTE slot_index, BYTE force_download)
ULONG Technology
Definition: qaGobiApiFms.h:70
Definition: qaGobiApiFms.h:582
BYTE failureCount
Definition: qaGobiApiFms.h:555
void SLQSSetSpkgFormatRequired(BYTE isneeded)
BYTE listSize
Definition: qaGobiApiFms.h:442
Definition: qaGobiApiFms.h:234
Definition: qaGobiApiFms.h:189
Definition: qaGobiApiFms.h:212
Definition: qaGobiApiFms.h:246
ULONG UpgradeFirmware2k(CHAR *pDestinationPath)
ULONG Carrier
Definition: qaGobiApiFms.h:71
int BOOL
Definition: SwiDataTypes.h:37
ULONG DeleteStoredImage(ULONG imageInfoSize, BYTE *pImageInfo)
Definition: qaGobiApiFms.h:789
unsigned short WORD
Definition: SwiDataTypes.h:34
Definition: qaGobiApiFms.h:236
Definition: qaGobiApiFms.h:258
Definition: qaGobiApiFms.h:1065
#define IMG_ID_LEN
Definition: qaGobiApiFms.h:43
Definition: qaGobiApiFms.h:193
BYTE executingImage
Definition: qaGobiApiFms.h:586
#define SLQSFWINFO_SKU_SZ
Definition: qaGobiApiFms.h:23
#define SLQSFWINFO_PACKAGEID_SZ
Definition: qaGobiApiFms.h:24
Definition: qaGobiApiFms.h:209

Copyright (c) 2011-2015 Sierra Wireless, Inc. All rights reserved