1 /*
2  * Copyright (c) 2022-2024, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #ifndef __CONFIG_TFM_TARGET_H__
9 #define __CONFIG_TFM_TARGET_H__
10 
11 /* Use stored NV seed to provide entropy */
12 #define CRYPTO_NV_SEED                         0
13 
14 /* Use external RNG to provide entropy */
15 #define CRYPTO_EXT_RNG                         1
16 
17 /* Set the initial attestation token profile */
18 #undef ATTEST_TOKEN_PROFILE_PSA_IOT_1
19 #undef ATTEST_TOKEN_PROFILE_PSA_2_0_0
20 
21 #define ATTEST_TOKEN_PROFILE_ARM_CCA           1
22 
23 #define NS_AGENT_MAILBOX_STACK_SIZE            0xC00
24 
25 /* Run the scheduler after handling a secure interrupt if the NSPE was pre-empted */
26 #define CONFIG_TFM_SCHEDULE_WHEN_NS_INTERRUPTED 1
27 
28 #ifdef MAILBOX_ENABLE_INTERRUPTS
29 #undef MAILBOX_ENABLE_INTERRUPTS
30 #undef MAILBOX_SIGNAL_IS_ACTIVE
31 #undef MAILBOX_SIGNAL_GET_ACTIVE
32 #endif /* MAILBOX_ENABLE_INTERRUPTS */
33 #define MAILBOX_ENABLE_INTERRUPTS() \
34                         psa_irq_enable(MAILBOX_INTERRUPT_SIGNAL); \
35                         psa_irq_enable(MAILBOX_INTERRUPT_1_SIGNAL)
36 #define MAILBOX_SIGNAL_IS_ACTIVE(signals) \
37                         (((signals) & MAILBOX_INTERRUPT_SIGNAL) || \
38                          ((signals) & MAILBOX_INTERRUPT_1_SIGNAL))
39 #define MAILBOX_SIGNAL_GET_ACTIVE(signals) \
40                         (((signals) & MAILBOX_INTERRUPT_SIGNAL) ? \
41                          MAILBOX_INTERRUPT_SIGNAL : MAILBOX_INTERRUPT_1_SIGNAL)
42 
43 #endif /* __CONFIG_TFM_TARGET_H__ */
44