mbed-os5 only for TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Committer:
kenjiArai
Date:
Tue Dec 31 06:02:27 2019 +0000
Revision:
1:9db0e321a9f4
Parent:
0:5b88d5760320
updated based on mbed-os5.15.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kenjiArai 0:5b88d5760320 1 /*
kenjiArai 0:5b88d5760320 2 * Copyright (c) 2019, Arm Limited. All rights reserved.
kenjiArai 0:5b88d5760320 3 *
kenjiArai 0:5b88d5760320 4 * SPDX-License-Identifier: BSD-3-Clause
kenjiArai 0:5b88d5760320 5 *
kenjiArai 0:5b88d5760320 6 */
kenjiArai 0:5b88d5760320 7
kenjiArai 0:5b88d5760320 8 #ifndef __TFM_MEMORY_UTILS_H__
kenjiArai 0:5b88d5760320 9 #define __TFM_MEMORY_UTILS_H__
kenjiArai 0:5b88d5760320 10
kenjiArai 0:5b88d5760320 11 #include <string.h>
kenjiArai 0:5b88d5760320 12 #include "cmsis_compiler.h"
kenjiArai 0:5b88d5760320 13
kenjiArai 0:5b88d5760320 14 #ifdef __cplusplus
kenjiArai 0:5b88d5760320 15 extern "C" {
kenjiArai 0:5b88d5760320 16 #endif
kenjiArai 0:5b88d5760320 17
kenjiArai 0:5b88d5760320 18 /* FIXME: The following functions are wrappers around standard C library
kenjiArai 0:5b88d5760320 19 * functions: memcpy, memcmp, memset
kenjiArai 0:5b88d5760320 20 * In long term standard C library might be removed from TF-M project or
kenjiArai 0:5b88d5760320 21 * replaced with a secure implementation due to security concerns.
kenjiArai 0:5b88d5760320 22 */
kenjiArai 0:5b88d5760320 23 __attribute__ ((always_inline)) __STATIC_INLINE
kenjiArai 0:5b88d5760320 24 void *tfm_memcpy(void *dest, const void *src, size_t num)
kenjiArai 0:5b88d5760320 25 {
kenjiArai 0:5b88d5760320 26 return (memcpy(dest, src, num));
kenjiArai 0:5b88d5760320 27 }
kenjiArai 0:5b88d5760320 28
kenjiArai 0:5b88d5760320 29 __attribute__ ((always_inline)) __STATIC_INLINE
kenjiArai 0:5b88d5760320 30 int tfm_memcmp(const void *ptr1, const void *ptr2, size_t num)
kenjiArai 0:5b88d5760320 31 {
kenjiArai 0:5b88d5760320 32 return (memcmp(ptr1, ptr2, num));
kenjiArai 0:5b88d5760320 33 }
kenjiArai 0:5b88d5760320 34
kenjiArai 0:5b88d5760320 35 __attribute__ ((always_inline)) __STATIC_INLINE
kenjiArai 0:5b88d5760320 36 void *tfm_memset(void *ptr, int value, size_t num)
kenjiArai 0:5b88d5760320 37 {
kenjiArai 0:5b88d5760320 38 return (memset(ptr, value, num));
kenjiArai 0:5b88d5760320 39 }
kenjiArai 0:5b88d5760320 40
kenjiArai 0:5b88d5760320 41 #ifdef __cplusplus
kenjiArai 0:5b88d5760320 42 }
kenjiArai 0:5b88d5760320 43 #endif
kenjiArai 0:5b88d5760320 44
kenjiArai 0:5b88d5760320 45 #endif /* __TFM_MEMORY_UTILS_H__ */