Macros | Functions
Utils.c File Reference
#include "XdkCommonInfo.h"
#include "XDK_Utils.h"
#include <stdio.h>
#include <string.h>
#include "XDK_FOTA.h"
#include "XdkVersion.h"
#include "BCDS_NVMConfig.h"
#include "BCDS_MCU_Watchdog.h"
+ Include dependency graph for Utils.c:

Macros

#define BCDS_MODULE_ID   XDK_COMMON_ID_UTILS
 

Functions

static uint8_t * convDecToStr (uint8_t data, uint8_t *str)
 Convert Decimal/Hex value to String Format to display Version Information. More...
 
static uint8_t * convert32IntegerToVersionString (uint32_t appVersion, uint32_t xdkVersion, uint8_t *str)
 This function is to convert the integer data into a string data. More...
 
static uint32_t InterChangeEndianIfNecessaryU32 (uint32_t dataU32)
 Converts the IP address from little endian format to big endian format if necessary. More...
 
Retcode_T Utils_ConvertIpStringToNumber (const char *ipDottedQuad, uint32_t *ipAddress)
 Convert human readable IPv4 address to UINT32 which is in big endian format. More...
 
Retcode_T Utils_GetMacInfoFromNVM (Utils_NVMMacInfo_T nvmMacInfo, uint8_t *data)
 This function reads the BLE/wifi MAC address from NVM module. More...
 
Retcode_T Utils_GetXdkAppVersion (uint8_t *verstring)
 This function to Get the Firmware Version of the application. More...
 
Retcode_T Utils_GetXdkVersionString (uint8_t *verstring)
 This function to Get the Firmware Version by combining the XDK SW Release (i.e., Workbench Release) version (i.e., 3.0.1) & Fota Container Firmware Version (i.e., 0.0.1) So , the GetFwVersionInfo returns the Version Information as like (i.e., 3.0.1-0.0.1 ) More...
 
void Utils_PrintResetCause (void)
 This function prints if last reset was caused due to watchdog timer. More...
 

Macro Definition Documentation

#define BCDS_MODULE_ID   XDK_COMMON_ID_UTILS

Function Documentation

static uint8_t* convDecToStr ( uint8_t  data,
uint8_t *  str 
)
static
Parameters
[in]dataNumber which needs to be convert into string to display in Decimal instead of HEX values.
in/out]*str pointer to Store/write the Version number in String Format.

+ Here is the caller graph for this function:

static uint8_t* convert32IntegerToVersionString ( uint32_t  appVersion,
uint32_t  xdkVersion,
uint8_t *  str 
)
static
Parameters
[in]appVersion- 32 bit value containing the FOTA version information
[in]xdkVersion- 32 bit value containing the XDK SW version information
in/out]str - pointer to the parsed version string
[out]Returnsindex where the application version starts

1. FOTA capable device only has the Valid application firmware version in that case output format will be example:v3.0.1-0.0.1( XDK Version + Application version)

  1. For Non- FOTA capable device version number will be v3.0.1-xx.xx.xx( XDK Version-xx.xx.xx)
  2. Also note that the XDK version number is represented in Decimal format (i.e if XDK version is 3.0.1).
    the following macros maintain to represent the XDK SW release version #define XDKVERSION_MAJOR 3 #define XDKVERSION_MINOR 0 #define XDKVERSION_PATCH 1
  3. Also note that the Application version number is represented in Decimal format. example: if user modifies the application version value macros under application.mk as follows MAJOR_SW_NO ?= 0xFF MINOR_SW_NO ?= 0xFF PATCH_SW_NO ?= 0xFF so, the appVersion will be represented as 255.255.255

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uint32_t InterChangeEndianIfNecessaryU32 ( uint32_t  dataU32)
static
Parameters
[in]uint32_tIP Address
[out]ReturnsIp address in big endian format

+ Here is the caller graph for this function:


This documentation file has been automatically generated on Wed May 6 2020 20:45:08 by doxygen 1.8.8