CC23x0r2DriverLibrary
hapi.h File Reference
#include <stdint.h>
#include "sha256sw.h"
Include dependency graph for hapi.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  HARD_API_T
 

Macros

#define FLASH_API_KEY   0xB7E3A08F
 
#define HAPI_TABLE_BASE_ADDR   0x0F00004C
 
#define HAPI_TABLE_POINTER   ((const HARD_API_T *)HAPI_TABLE_BASE_ADDR)
 
#define HapiEnterStandby(p)   HAPI_TABLE_POINTER->enterStandby((p))
 
#define HapiCrc32(p, n)   HAPI_TABLE_POINTER->crc32((p), (n))
 
#define HapiApplyCopyList(p)   HAPI_TABLE_POINTER->applyCopyList((p))
 
#define HapiFlashSectorErase(k, p)   HAPI_TABLE_POINTER->flashSectorErase((k), (p))
 
#define HapiFlashBankErase(k)   HAPI_TABLE_POINTER->flashBankErase((k))
 
#define HapiFlashProgram(k, s, d, n)   HAPI_TABLE_POINTER->flashProgram((k), (s), (d), (n))
 
#define HapiCountBits(w)   HAPI_TABLE_POINTER->countBits((w))
 
#define HapiSecdedEncode(p, d, n)   HAPI_TABLE_POINTER->secdedEncode((p), (d), (n))
 
#define HapiSecdedDecode(d, p, n)   HAPI_TABLE_POINTER->secdedDecode((d), (p), (n))
 
#define HapiEnterApplication()   HAPI_TABLE_POINTER->enterApplication()
 
#define HapiSha256SwHashData(h, d, l, g)   HAPI_TABLE_POINTER->sha256SwHashData((h), SHA2SW_HASH_TYPE_256, (d), (l), (g))
 
#define HapiSha256SwStart(h)   HAPI_TABLE_POINTER->sha256SwStart((h), SHA2SW_HASH_TYPE_256)
 
#define HapiSha256SwAddData(h, d, l)   HAPI_TABLE_POINTER->sha256SwAddData((h), (d), (l))
 
#define HapiSha256SwFinalize(h, g)   HAPI_TABLE_POINTER->sha256SwFinalize((h), (g))
 
#define HapiResetDevice()   HAPI_TABLE_POINTER->resetDevice()
 
#define HapiSha256SWProcessBlock(d, w)   HAPI_TABLE_POINTER->pSHA256SWProcessBlock((d), (w))
 
#define HapiSha256SW_K256   (*HAPI_TABLE_POINTER->sha256SW_K256)
 
#define HapiSha256SW_initialDigest256   (*HAPI_TABLE_POINTER->sha256SW_initialDigest256)
 
#define HapiWaitUs(n)   HAPI_TABLE_POINTER->waitUs((n))
 
#define HapiClz(x)   HAPI_TABLE_POINTER->clz((x))
 

Macro Definition Documentation

§ FLASH_API_KEY

#define FLASH_API_KEY   0xB7E3A08F

Magic value used to protect against inadvertent flash erasures/programming. (prevents corruption due to random jumps into the flash API, for example due to stack overflow or errant function pointers) Must be passed in key argument to all flash functions

Referenced by FlashEraseBank(), FlashEraseSector(), and FlashProgram().

§ HAPI_TABLE_BASE_ADDR

#define HAPI_TABLE_BASE_ADDR   0x0F00004C

§ HAPI_TABLE_POINTER

#define HAPI_TABLE_POINTER   ((const HARD_API_T *)HAPI_TABLE_BASE_ADDR)

§ HapiEnterStandby

#define HapiEnterStandby (   p)    HAPI_TABLE_POINTER->enterStandby((p))

§ HapiCrc32

#define HapiCrc32 (   p,
 
)    HAPI_TABLE_POINTER->crc32((p), (n))

§ HapiApplyCopyList

#define HapiApplyCopyList (   p)    HAPI_TABLE_POINTER->applyCopyList((p))

Referenced by CopyList_apply().

§ HapiFlashSectorErase

#define HapiFlashSectorErase (   k,
 
)    HAPI_TABLE_POINTER->flashSectorErase((k), (p))

Referenced by FlashEraseSector().

§ HapiFlashBankErase

#define HapiFlashBankErase (   k)    HAPI_TABLE_POINTER->flashBankErase((k))

Referenced by FlashEraseBank().

§ HapiFlashProgram

#define HapiFlashProgram (   k,
  s,
  d,
 
)    HAPI_TABLE_POINTER->flashProgram((k), (s), (d), (n))

Referenced by FlashProgram().

§ HapiCountBits

#define HapiCountBits (   w)    HAPI_TABLE_POINTER->countBits((w))

§ HapiSecdedEncode

#define HapiSecdedEncode (   p,
  d,
 
)    HAPI_TABLE_POINTER->secdedEncode((p), (d), (n))

§ HapiSecdedDecode

#define HapiSecdedDecode (   d,
  p,
 
)    HAPI_TABLE_POINTER->secdedDecode((d), (p), (n))

§ HapiEnterApplication

#define HapiEnterApplication ( )    HAPI_TABLE_POINTER->enterApplication()

§ HapiSha256SwHashData

#define HapiSha256SwHashData (   h,
  d,
  l,
 
)    HAPI_TABLE_POINTER->sha256SwHashData((h), SHA2SW_HASH_TYPE_256, (d), (l), (g))

§ HapiSha256SwStart

#define HapiSha256SwStart (   h)    HAPI_TABLE_POINTER->sha256SwStart((h), SHA2SW_HASH_TYPE_256)

§ HapiSha256SwAddData

#define HapiSha256SwAddData (   h,
  d,
 
)    HAPI_TABLE_POINTER->sha256SwAddData((h), (d), (l))

§ HapiSha256SwFinalize

#define HapiSha256SwFinalize (   h,
 
)    HAPI_TABLE_POINTER->sha256SwFinalize((h), (g))

§ HapiResetDevice

#define HapiResetDevice ( )    HAPI_TABLE_POINTER->resetDevice()

§ HapiSha256SWProcessBlock

#define HapiSha256SWProcessBlock (   d,
 
)    HAPI_TABLE_POINTER->pSHA256SWProcessBlock((d), (w))

§ HapiSha256SW_K256

#define HapiSha256SW_K256   (*HAPI_TABLE_POINTER->sha256SW_K256)

§ HapiSha256SW_initialDigest256

#define HapiSha256SW_initialDigest256   (*HAPI_TABLE_POINTER->sha256SW_initialDigest256)

§ HapiWaitUs

#define HapiWaitUs (   n)    HAPI_TABLE_POINTER->waitUs((n))

§ HapiClz

#define HapiClz (   x)    HAPI_TABLE_POINTER->clz((x))