LinuxQMISDK-Lite  SLQS04.00.03
libsdp.h
Go to the documentation of this file.
1 
13 #ifndef _LIB_SDP_H_
14 #define _LIB_SDP_H_
15 /* Pragmas */
16 #pragma once
17 #include "qmerrno.h"
18 #include "fms.h"
19 #include "dms.h"
20 
21 #define IMG_MASK_MDM (1<<0)
22 #define IMG_MASK_PRI (1<<1)
23 #define IMG_MASK_CLEAR (0x000)
24 #define IMG_MASK_GENERIC (0xFFFF)
25 
26 // Carrier package SKU Info
27 #define LIBSDP_CARRIER_PACKAGE_SKU "9999999"
28 #define LIBSDP_SKU_STRING_LENGTH 7
29 #define FIRMWARE_INFO_STRING_SIZE 20
30 
31 /* error Codes */
33 {
34  eSDP_FWDWL_SUCCESS = 0, // Success
35  eSDP_FWDWL_ERR_GENERAL = 100, // 100 - Generic FW download error
36  eSDP_FWDWL_ERR_SDK, // 101 - SDK specific error. Please check syslog for SDK error codes
37  eSDP_FWDWL_ERR_SET_CBK, // 102 - Error in setting SDK callbacks
38  eSDP_FWDWL_ERR_PATH_TOO_LONG, // 103 - Path is too long
39  eSDP_FWDWL_ERR_PATH_NOT_SPECIFIED, // 104 - Mandatory SDK/FW path not set
40  eSDP_FWDWL_ERR_FW_UPGRADE, // 105 - Post FW download check indicates that the FW upgrade has failed.
41  // For example, PRI not updated as expected, FW version not updated etc
42  eSDP_FWDWL_ERR_INVALID_DEV, // 106 - Invalid device
43  eSDP_FWDWL_ERR_INVALID_PATH, // 107 - Invalid Path or No valid firmware or nvu file exist in the path
44  eSDP_FWDWL_ERR_TIMEOUT, // 108 - Download Process Timeout
45  eSDP_FWDWL_ERR_FAIL, // 109 - Download Process Fail
46  eSDP_FWDWL_ERR_PRI_FAIL, // 110 - Download PRI Fail
47  eSDP_FWDWL_ERR_FW_VERSION_FAIL, // 111 - Download Fail Version Not Match
49 };
50 
51 // Match this enum with fw_image_type_e in imudefs.h
53  eFW_TYPE_MBN_GOBI, // Not supported in libSDP
54  eFW_TYPE_MBN, // Not supported in libSDP
55  eFW_TYPE_CWE, //CWE File
56  eFW_TYPE_NVU, //NVU File
57  eFW_TYPE_SPK, //SPK File
58  eFW_TYPE_INVALID, //Invalid File
59  eFW_TYPE_CWE_NVU, //CWE and NVU
60 };
61 
62 /* Model Family */
67 };
68 
93 typedef struct _libSDP_FirmwareInfo_
94 {
102 
103 
104 
105 
122 
139 
152 
165 int libSDP_getFileType(char* szPath);
166 
194 unsigned int libSDP_DownloadFW(char *pImagePath,char *szTTYPath,int iFWImageType, int image_mask, int iModelFamily);
195 
208 int libSDP_GetModelFamily(char *pModelString);
209 
220 
221 
231 char* libSDP_GetVersion();
232 
233 
246 typedef void (* libsdplogger)(uint8_t lvl, const char* buff);
247 
259 
269 void libsdp_SetReadBlockSize(unsigned long lBlockSize);
270 
271 #endif // _LIB_SDP_H_
272 
char szCarrier_str[20]
Definition: libsdp.h:99
char szCarrierPriversion_str[20]
Definition: libsdp.h:100
unsigned int libSDP_DownloadFW(char *pImagePath, char *szTTYPath, int iFWImageType, int image_mask, int iModelFamily)
Definition: libsdp.h:53
void libsdp_SetReadBlockSize(unsigned long lBlockSize)
int libSDP_ExtractFirmwareParametersByPath(char *pImagePath, libSDP_FirmwareInfo *info)
Definition: libsdp.h:57
Definition: libsdp.h:45
libSDP_fwdwl_error_codes
Definition: libsdp.h:32
Definition: libsdp.h:54
Definition: libsdp.h:58
int libSDP_CalculateImageMask(unpack_fms_SetImagesPreference_t SetPrefRspFromModem)
void(* libsdplogger)(uint8_t lvl, const char *buff)
Definition: libsdp.h:246
Definition: libsdp.h:65
Definition: libsdp.h:37
int libSDP_GetModelFamily(char *pModelString)
Definition: libsdp.h:40
int libSDP_getFileType(char *szPath)
Definition: libsdp.h:48
struct _libSDP_FirmwareInfo_ libSDP_FirmwareInfo
int libsdp_set_log_func(libsdplogger func)
char * libSDP_GetVersion()
Definition: libsdp.h:39
int libSDP_BuildImagesPreferenceRequest(libSDP_FirmwareInfo info, pack_fms_SetImagesPreference_t *pack)
#define FIRMWARE_INFO_STRING_SIZE
Definition: libsdp.h:29
Definition: libsdp.h:34
Definition: libsdp.h:93
Definition: libsdp.h:59
char szFwversion_str[20]
Definition: libsdp.h:96
int libSDP_CheckValidFirmwareInfo(libSDP_FirmwareInfo info)
Definition: libsdp.h:36
Definition: libsdp.h:46
Definition: libsdp.h:47
Definition: libsdp.h:42
char szModelid_str[20]
Definition: libsdp.h:95
Definition: libsdp.h:38
char szSku_str[20]
Definition: libsdp.h:97
char szPackageid_str[20]
Definition: libsdp.h:98
Definition: libsdp.h:55
Definition: libsdp.h:44
Definition: fms.h:331
Definition: libsdp.h:64
Definition: libsdp.h:66
Definition: libsdp.h:35
Definition: libsdp.h:56
libSDP_Fw_Type
Definition: libsdp.h:52
Definition: libsdp.h:43
libSDP_Models
Definition: libsdp.h:63

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