TI-OpenThread  1.08.06.06
Macros | Functions | Variables
LP_CC2652PSIP/thread/doorlock_oad_secure/oad/oad_storage.c File Reference
#include <string.h>
#include <ti/sysbios/knl/Task.h>
#include <ti/devices/DeviceFamily.h>
#include <DeviceFamily_constructPath(driverlib/flash.h)>
#include "crc32.h"
#include "ext_flash_layout.h"
#include "flash_interface.h"
#include "oad_image_header.h"
#include "oad_storage.h"
+ Include dependency graph for LP_CC2652PSIP/thread/doorlock_oad_secure/oad/oad_storage.c:

Macros

#define HAL_FLASH_WORD_SIZE   4
 
#define OAD_IMG_PG_INVALID   0xFF
 
#define OAD_PROFILE_VERSION   0x01
 
#define OADStorage_BUILD_UINT32(Byte0, Byte1, Byte2, Byte3)   ((uint32_t) (((Byte0) & 0xFF) + (((Byte1) & 0xFF) << 8) + (((Byte2) & 0xFF) << 16) + (((Byte3) & 0xFF) << 24) ))
 

Functions

static OADStorage_Status_t oadCheckDL (void)
 
static uint8_t oadCheckImageID (OADStorage_imgIdentifyPld_t *idPld)
 
static uint8_t oadEraseExtFlashPages (uint8_t imgStartPage, uint32_t imgLen, uint32_t pageSize)
 
static uint8_t oadFindCurrentImageHdr (void)
 
static uint32_t oadFindExtFlImgAddr (uint8_t imgType)
 
static uint8_t oadFindExtFlMetaPage (void)
 
static uint32_t oadFindFactImgAddr ()
 
bool OADStorage_checkFactoryImage (void)
 
void OADStorage_close (void)
 
uint8_t OADStorage_createFactoryImageBackup (void)
 
OADStorage_Status_t OADStorage_eraseImgPage (uint32_t page)
 
uint16_t OADStorage_getFactoryImage (void)
 
OADStorage_Status_t OADStorage_imgBlockRead (uint16_t blockNum, uint8_t *pBlockData)
 
OADStorage_Status_t OADStorage_imgBlockWrite (uint32_t blkNum, uint8_t *pBlockData, uint8_t len)
 
OADStorage_Status_t OADStorage_imgFinalise (void)
 
uint16_t OADStorage_imgIdentifyWrite (uint8_t *pBlockData)
 
void OADStorage_init (void)
 
static OADStorage_Status_t oadValidateCandidateHdr (imgHdr_t *receivedHeader)
 

Variables

static imgHdr_t candidateImageHeader
 
static uint32_t candidateImageLength = 0xFFFFFFFF
 
static uint32_t candidateImageType = 0xFFFFFFFF
 
static uint32_t flashNumPages
 
static uint32_t flashPageSize
 
static uint32_t imageAddress = 0
 
static uint16_t imagePage = 0
 
uint16_t metaPage = 0
 
uint8_t numBlksInImgHdr = 0
 
static uint32_t oadBlkTot = 0xFFFFFFFF
 
static uint16_t oadImgBytesPerBlock = OADStorage_BLOCK_SIZE - OADStorage_BLK_NUM_HDR_SZ
 
static bool useExternalFlash = false
 

Macro Definition Documentation

§ HAL_FLASH_WORD_SIZE

#define HAL_FLASH_WORD_SIZE   4

§ OAD_PROFILE_VERSION

#define OAD_PROFILE_VERSION   0x01

§ OAD_IMG_PG_INVALID

#define OAD_IMG_PG_INVALID   0xFF

§ OADStorage_BUILD_UINT32

#define OADStorage_BUILD_UINT32 (   Byte0,
  Byte1,
  Byte2,
  Byte3 
)    ((uint32_t) (((Byte0) & 0xFF) + (((Byte1) & 0xFF) << 8) + (((Byte2) & 0xFF) << 16) + (((Byte3) & 0xFF) << 24) ))

Function Documentation

§ oadFindCurrentImageHdr()

static uint8_t oadFindCurrentImageHdr ( void  )
static

§ oadFindExtFlImgAddr()

static uint32_t oadFindExtFlImgAddr ( uint8_t  imgType)
static

§ oadFindExtFlMetaPage()

static uint8_t oadFindExtFlMetaPage ( void  )
static

§ oadValidateCandidateHdr()

static OADStorage_Status_t oadValidateCandidateHdr ( imgHdr_t receivedHeader)
static

§ oadCheckDL()

static OADStorage_Status_t oadCheckDL ( void  )
static

§ oadCheckImageID()

static uint8_t oadCheckImageID ( OADStorage_imgIdentifyPld_t idPld)
static

§ OADStorage_init()

void OADStorage_init ( void  )

§ OADStorage_imgIdentifyWrite()

uint16_t OADStorage_imgIdentifyWrite ( uint8_t *  pBlockData)

§ OADStorage_imgBlockWrite()

OADStorage_Status_t OADStorage_imgBlockWrite ( uint32_t  blkNum,
uint8_t *  pBlockData,
uint8_t  len 
)

§ OADStorage_eraseImgPage()

OADStorage_Status_t OADStorage_eraseImgPage ( uint32_t  page)

§ OADStorage_imgFinalise()

OADStorage_Status_t OADStorage_imgFinalise ( void  )

§ oadFindFactImgAddr()

static uint32_t oadFindFactImgAddr ( )
static

§ oadEraseExtFlashPages()

static uint8_t oadEraseExtFlashPages ( uint8_t  imgStartPage,
uint32_t  imgLen,
uint32_t  pageSize 
)
static

§ OADStorage_checkFactoryImage()

bool OADStorage_checkFactoryImage ( void  )

§ OADStorage_getFactoryImage()

uint16_t OADStorage_getFactoryImage ( void  )

§ OADStorage_createFactoryImageBackup()

uint8_t OADStorage_createFactoryImageBackup ( void  )

§ OADStorage_imgBlockRead()

OADStorage_Status_t OADStorage_imgBlockRead ( uint16_t  blockNum,
uint8_t *  pBlockData 
)

§ OADStorage_close()

void OADStorage_close ( void  )

References flash_close().

Variable Documentation

§ metaPage

uint16_t metaPage = 0

§ candidateImageHeader

imgHdr_t candidateImageHeader
static

§ oadBlkTot

uint32_t oadBlkTot = 0xFFFFFFFF
static

§ oadImgBytesPerBlock

uint16_t oadImgBytesPerBlock = OADStorage_BLOCK_SIZE - OADStorage_BLK_NUM_HDR_SZ
static

§ numBlksInImgHdr

uint8_t numBlksInImgHdr = 0

§ imageAddress

uint32_t imageAddress = 0
static

§ imagePage

uint16_t imagePage = 0
static

§ candidateImageLength

uint32_t candidateImageLength = 0xFFFFFFFF
static

§ candidateImageType

uint32_t candidateImageType = 0xFFFFFFFF
static

§ useExternalFlash

bool useExternalFlash = false
static

§ flashPageSize

uint32_t flashPageSize
static

§ flashNumPages

uint32_t flashNumPages
static
© Copyright 1995-2022, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale