TF-M Reference Manual  1.2.0
TrustedFirmware-M
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
storage_common.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 /* This file includes common definitions for PSA storage
9 */
10 
11 #ifndef PSA_STORAGE_COMMON_H
12 #define PSA_STORAGE_COMMON_H
13 
14 #include <stddef.h>
15 #include <stdint.h>
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 typedef uint32_t psa_storage_create_flags_t;
22 
23 typedef uint64_t psa_storage_uid_t;
24 
25 /* Flags */
26 
27 #define PSA_STORAGE_FLAG_NONE 0u
28 #define PSA_STORAGE_FLAG_WRITE_ONCE (1u << 0)
29 #define PSA_STORAGE_FLAG_NO_CONFIDENTIALITY (1u << 1)
30 #define PSA_STORAGE_FLAG_NO_REPLAY_PROTECTION (1u << 2)
31 
32 /* A container for metadata associated with a specific uid */
33 
35  size_t capacity;
36  size_t size;
37  psa_storage_create_flags_t flags;
38 };
39 
40 #define PSA_STORAGE_SUPPORT_SET_EXTENDED (1u << 0)
41 
42 #define PSA_ERROR_INVALID_SIGNATURE ((psa_status_t)-149)
43 #define PSA_ERROR_DATA_CORRUPT ((psa_status_t)-152)
44 
45 #ifdef __cplusplus
46 }
47 #endif
48 
49 #endif // PSA_STORAGE_COMMON_H
uint64_t psa_storage_uid_t
psa_storage_create_flags_t flags
uint32_t psa_storage_create_flags_t