1 /*
2  * Copyright (c) 2019-2022, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 /**
9  * \file psa/error.h
10  * \brief Standard error codes for the SPM and RoT Services
11  */
12 
13 #ifndef __PSA_ERROR_H__
14 #define __PSA_ERROR_H__
15 
16 #include <stdint.h>
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 /* If #PSA_SUCCESS is already defined, it means that #psa_status_t
23  * is also defined in an external header, so prevent its multiple
24  * definition.
25  */
26 #ifndef PSA_SUCCESS
27 typedef int32_t psa_status_t;
28 #endif
29 
30 #define PSA_SUCCESS                     ((psa_status_t)0)
31 
32 #define PSA_ERROR_PROGRAMMER_ERROR      ((psa_status_t)-129)
33 #define PSA_ERROR_CONNECTION_REFUSED    ((psa_status_t)-130)
34 #define PSA_ERROR_CONNECTION_BUSY       ((psa_status_t)-131)
35 #define PSA_ERROR_GENERIC_ERROR         ((psa_status_t)-132)
36 #define PSA_ERROR_NOT_PERMITTED         ((psa_status_t)-133)
37 #define PSA_ERROR_NOT_SUPPORTED         ((psa_status_t)-134)
38 #define PSA_ERROR_INVALID_ARGUMENT      ((psa_status_t)-135)
39 #define PSA_ERROR_INVALID_HANDLE        ((psa_status_t)-136)
40 #define PSA_ERROR_BAD_STATE             ((psa_status_t)-137)
41 #define PSA_ERROR_BUFFER_TOO_SMALL      ((psa_status_t)-138)
42 #define PSA_ERROR_ALREADY_EXISTS        ((psa_status_t)-139)
43 #define PSA_ERROR_DOES_NOT_EXIST        ((psa_status_t)-140)
44 #define PSA_ERROR_INSUFFICIENT_MEMORY   ((psa_status_t)-141)
45 #define PSA_ERROR_INSUFFICIENT_STORAGE  ((psa_status_t)-142)
46 #define PSA_ERROR_INSUFFICIENT_DATA     ((psa_status_t)-143)
47 #define PSA_ERROR_SERVICE_FAILURE       ((psa_status_t)-144)
48 #define PSA_ERROR_COMMUNICATION_FAILURE ((psa_status_t)-145)
49 #define PSA_ERROR_STORAGE_FAILURE       ((psa_status_t)-146)
50 #define PSA_ERROR_HARDWARE_FAILURE      ((psa_status_t)-147)
51 #define PSA_ERROR_INVALID_SIGNATURE     ((psa_status_t)-149)
52 #define PSA_ERROR_DEPENDENCY_NEEDED     ((psa_status_t)-156)
53 #define PSA_ERROR_FLASH_ABUSE           ((psa_status_t)-160)
54 #define PSA_ERROR_INSUFFICIENT_POWER    ((psa_status_t)-161)
55 
56 #ifdef __cplusplus
57 }
58 #endif
59 
60 #endif /* __PSA_ERROR_H__ */
61