1 /*
2  * Copyright (c) 2001-2019, Arm Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #include "cc_pal_types.h"
8 #include "cc_pal_fips.h"
9 #include "cc_pal_mem.h"
10 
11 CCFipsStateData_t   gStateData = { CC_FIPS_STATE_CRYPTO_APPROVED, CC_TEE_FIPS_ERROR_OK, CC_FIPS_TRACE_NONE };
12 
13 
CC_PalFipsWaitForReeStatus(void)14 CCError_t CC_PalFipsWaitForReeStatus(void)
15 {
16     FipsSetReeStatus(CC_TEE_FIPS_REE_STATUS_OK);
17     return CC_OK;
18 }
19 
CC_PalFipsStopWaitingRee(void)20 CCError_t CC_PalFipsStopWaitingRee(void)
21 {
22     return CC_OK;
23 }
24 
CC_PalFipsGetState(CCFipsState_t * pFipsState)25 CCError_t CC_PalFipsGetState(CCFipsState_t *pFipsState)
26 {
27     *pFipsState = gStateData.state;
28 
29     return CC_OK;
30 }
31 
32 
CC_PalFipsGetError(CCFipsError_t * pFipsError)33 CCError_t CC_PalFipsGetError(CCFipsError_t *pFipsError)
34 {
35     *pFipsError = gStateData.error;
36 
37     return CC_OK;
38 }
39 
40 
CC_PalFipsGetTrace(CCFipsTrace_t * pFipsTrace)41 CCError_t CC_PalFipsGetTrace(CCFipsTrace_t *pFipsTrace)
42 {
43     *pFipsTrace = gStateData.trace;
44 
45     return CC_OK;
46 }
47 
CC_PalFipsSetState(CCFipsState_t fipsState)48 CCError_t CC_PalFipsSetState(CCFipsState_t fipsState)
49 {
50     gStateData.state = fipsState;
51 
52     return CC_OK;
53 }
54 
CC_PalFipsSetError(CCFipsError_t fipsError)55 CCError_t CC_PalFipsSetError(CCFipsError_t fipsError)
56 {
57     gStateData.error = fipsError;
58 
59     return CC_OK;
60 }
61 
CC_PalFipsSetTrace(CCFipsTrace_t fipsTrace)62 CCError_t CC_PalFipsSetTrace(CCFipsTrace_t fipsTrace)
63 {
64     gStateData.trace = (CCFipsTrace_t)(gStateData.trace | fipsTrace);
65 
66     return CC_OK;
67 }
68 
69