PSOC E8XXGP Device Support Library

| PSOC E8XXGP Device Support Library

Functions
Functions
PDL API Reference » Crypto (Cryptography) » Direct Crypto Core Access » Memory Streaming Functions

## General Description

## Functions
__STATIC_INLINE void | Cy_Crypto_Core_MemCpy (CRYPTO_Type *base, void *dst, void const *src, uint16_t size)
| Function MemCpy uses Crypto HW. More...
__STATIC_INLINE void | Cy_Crypto_Core_MemSet (CRYPTO_Type *base, void *dst, uint8_t data, uint16_t size)
| Function MemSet uses Crypto HW. More...
__STATIC_INLINE uint32_t | Cy_Crypto_Core_MemCmp (CRYPTO_Type *base, void const *src0, void const *src1, uint16_t size)
| Function MemCmp uses Crypto HW. More...
__STATIC_INLINE void | Cy_Crypto_Core_MemXor (CRYPTO_Type *base, void *dst, void const *src0, void const *src1, uint16_t size)
| Function MemXor uses Crypto HW. More...
void | Cy_Crypto_InvertEndianness (void *inArrPtr, uint32_t byteSize)
| This function inverts endianness of the byte-array. More...

## Function Documentation

## ◆ Cy_Crypto_Core_MemCpy()

__STATIC_INLINE void Cy_Crypto_Core_MemCpy | ( | CRYPTO_Type * | base,
|  | void * | dst,
|  | void const * | src,
|  | uint16_t | size
| ) |  |

Function MemCpy uses Crypto HW.

Memory structures should not overlap! There is no alignment restriction. When D-Cache is enabled parameters dst and src must align and end in 32 byte boundary.

Parameters

  base | The pointer to the CRYPTO instance.
  dst | The pointer to the destination of MemCpy.
  src | The pointer to the source of MemCpy.
  size | The size in bytes of the copy operation.

## ◆ Cy_Crypto_Core_MemSet()

__STATIC_INLINE void Cy_Crypto_Core_MemSet | ( | CRYPTO_Type * | base,
|  | void * | dst,
|  | uint8_t | data,
|  | uint16_t | size
| ) |  |

Function MemSet uses Crypto HW.

There is no alignment restriction. When D-Cache is enabled parameter dst must align and end in 32 byte boundary.

Parameters

  base | The pointer to the CRYPTO instance.
  dst | The pointer to the destination of MemSet.
  data | The value to be set.
  size | The size in bytes of the set operation.

## ◆ Cy_Crypto_Core_MemCmp()

__STATIC_INLINE uint32_t Cy_Crypto_Core_MemCmp | ( | CRYPTO_Type * | base,
|  | void const * | src0,
|  | void const * | src1,
|  | uint16_t | size
| ) |  |

Function MemCmp uses Crypto HW.

There is no alignment restriction. When D-Cache is enabled parameters src0 and src1 must align and end in 32 byte boundary.

Parameters

  base | The pointer to the CRYPTO instance.
  src0 | The pointer to the first source of MemCmp.
  src1 | The pointer to the second source of MemCmp.
  size | the size in bytes of the compare operation.

Returns
  0 - if Source 1 = Source 2, 1 - if not.

## ◆ Cy_Crypto_Core_MemXor()

__STATIC_INLINE void Cy_Crypto_Core_MemXor | ( | CRYPTO_Type * | base,
|  | void * | dst,
|  | void const * | src0,
|  | void const * | src1,
|  | uint16_t | size
| ) |  |

Function MemXor uses Crypto HW.

Memory structures should not overlap! There is no alignment restriction. When D-Cache is enabled parameters dst, src0 and src1 must align and end in 32 byte boundary.

Parameters

  base | The pointer to the CRYPTO instance.
  dst | The pointer to the destination of MemXor.
  src0 | The pointer to the first source of MemXor.
  src1 | The pointer to the second source of MemXor.
  size | The size in bytes of the compare operation.

## ◆ Cy_Crypto_InvertEndianness()

void Cy_Crypto_InvertEndianness | ( | void * | inArrPtr,
|  | uint32_t | byteSize
| ) |  |

This function inverts endianness of the byte-array.

Odd or even byteSize are acceptable.

Parameters

  inArrPtr | The pointer to the memory whose endianness is to be inverted.
  byteSize | The length of the memory array whose endianness is to be inverted (in bytes)