44 #define CSEC_UPPER_HALF_MASK (0xFFFF0000U)
45 #define CSEC_UPPER_HALF_SHIFT (0x10U)
46 #define CSEC_LOWER_HALF_MASK (0xFFFFU)
47 #define CSEC_LOWER_HALF_SHIFT (0U)
67 while ((i + 3U) < numBytes)
69 CSE_PRAM->RAMn[(offset + i) >> 2U].DATA_32 =
74 i = (uint8_t)(i + 4U);
95 tmp =
CSE_PRAM->RAMn[(offset >> 2U)].DATA_32;
97 if ((offset & 2U) != 0U)
108 CSE_PRAM->RAMn[(offset >> 2U)].DATA_32 = tmp;
120 switch (offset & 0x3U)
123 CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8HU = byte;
126 CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8HL = byte;
129 CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8LU = byte;
132 CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8LL = byte;
151 uint8_t alignedOffset = (uint8_t)(offset >> 2U);
157 CSE_PRAM->RAMn[alignedOffset + i].DATA_32 = words[i];
176 while ((i + 3U) < numBytes)
178 uint32_t tmp =
CSE_PRAM->RAMn[(offset + i) >> 2U].DATA_32;
184 i = (uint8_t)(i + 4U);
205 if ((offset & 2U) != 0U)
228 switch (offset & 0x3U)
231 byte =
CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8HU;
234 byte =
CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8HL;
237 byte =
CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8LU;
240 byte =
CSE_PRAM->RAMn[offset >> 2U].ACCESS8BIT.DATA_8LL;
261 uint8_t alignedOffset = (uint8_t)(offset >> 2U);
267 words[i] =
CSE_PRAM->RAMn[alignedOffset + i].DATA_32;
#define CSEC_UPPER_HALF_MASK
#define CSEC_LOWER_HALF_MASK
#define CSE_PRAM_RAMn_DATA_32_BYTE_1(x)
#define CSE_PRAM_RAMn_DATA_32_BYTE_1_MASK
#define FTFC_FSTAT_CCIF_MASK
#define CSEC_UPPER_HALF_SHIFT
#define CSE_PRAM_RAMn_DATA_32_BYTE_2_SHIFT
#define CSE_PRAM_RAMn_DATA_32_BYTE_2_MASK
#define CSE_PRAM_RAMn_DATA_32_BYTE_3(x)
#define CSE_PRAM_RAMn_DATA_32_BYTE_0_SHIFT
void CSEC_HAL_WriteCommandBytes(uint8_t offset, const uint8_t *bytes, uint8_t numBytes)
Writes command bytes to CSE_PRAM.
#define CSE_PRAM_RAMn_DATA_32_BYTE_1_SHIFT
#define END_FUNCTION_DEFINITION_RAMSECTION
csec_cmd_t
CSEc commands which follow the same values as the SHE command definition.
#define CSE_PRAM_RAMn_DATA_32_BYTE_0_MASK
void CSEC_HAL_ReadCommandWords(uint8_t offset, uint32_t *words, uint8_t numWords)
Reads command words from CSE_PRAM.
void CSEC_HAL_ReadCommandBytes(uint8_t offset, uint8_t *bytes, uint8_t numBytes)
Reads command bytes from CSE_PRAM.
void CSEC_HAL_WriteCommandWords(uint8_t offset, const uint32_t *words, uint8_t numWords)
Writes command words to CSE_PRAM.
#define START_FUNCTION_DEFINITION_RAMSECTION
#define CSE_PRAM_RAMn_DATA_32_BYTE_0(x)
csec_func_format_t
Specifies how the data is transferred to/from the CSE. There are two use cases. One is to copy all da...
uint8_t CSEC_HAL_ReadCommandByte(uint8_t offset)
Reads a command byte from CSE_PRAM.
#define CSE_PRAM_RAMn_DATA_32_BYTE_2(x)
#define CSEC_LOWER_HALF_SHIFT
csec_call_sequence_t
Specifies if the information is the first or a following function call.
#define CSE_PRAM_RAMn_DATA_32_BYTE_3_SHIFT
START_FUNCTION_DEFINITION_RAMSECTION void CSEC_HAL_WriteCmdAndWait(csec_cmd_t funcId, csec_func_format_t funcFormat, csec_call_sequence_t callSeq, csec_key_id_t keyId)
#define CSE_PRAM_RAMn_DATA_32_BYTE_3_MASK
void CSEC_HAL_WriteCommandHalfWord(uint8_t offset, uint16_t halfWord)
Writes a command half word to CSE_PRAM.
csec_key_id_t
Specify the KeyID to be used to implement the requested cryptographic operation.
uint16_t CSEC_HAL_ReadCommandHalfWord(uint8_t offset)
Reads a command half word from CSE_PRAM.
void CSEC_HAL_WriteCommandByte(uint8_t offset, uint8_t byte)
Writes a command byte to CSE_PRAM.