xref: /optee_os/core/arch/arm/plat-ls/conf.mk (revision bbfe5da7daee2ab8efcb94fe11938d444b940384)
1PLATFORM_FLAVOR ?= ls1021atwr
2
3$(call force,CFG_SECURE_TIME_SOURCE_CNTPCT,y)
4$(call force,CFG_GIC,y)
5$(call force,CFG_16550_UART,y)
6$(call force,CFG_LS,y)
7
8$(call force,CFG_DRAM0_BASE,0x80000000)
9$(call force,CFG_TEE_OS_DRAM0_SIZE,0x4000000)
10
11ifeq ($(PLATFORM_FLAVOR),ls1021atwr)
12include core/arch/arm/cpu/cortex-a7.mk
13$(call force,CFG_TEE_CORE_NB_CORE,2)
14$(call force,CFG_DRAM0_SIZE,0x40000000)
15$(call force,CFG_CORE_CLUSTER_SHIFT,2)
16CFG_SHMEM_SIZE ?= 0x00100000
17CFG_BOOT_SYNC_CPU ?= y
18CFG_BOOT_SECONDARY_REQUEST ?= y
19endif
20
21ifeq ($(PLATFORM_FLAVOR),ls1021aqds)
22include core/arch/arm/cpu/cortex-a7.mk
23$(call force,CFG_TEE_CORE_NB_CORE,2)
24$(call force,CFG_DRAM0_SIZE,0x80000000)
25$(call force,CFG_CORE_CLUSTER_SHIFT,2)
26CFG_SHMEM_SIZE ?= 0x00100000
27CFG_BOOT_SYNC_CPU ?= y
28CFG_BOOT_SECONDARY_REQUEST ?= y
29endif
30
31ifeq ($(PLATFORM_FLAVOR),ls1012ardb)
32CFG_HW_UNQ_KEY_REQUEST ?= y
33include core/arch/arm/cpu/cortex-armv8-0.mk
34$(call force,CFG_TEE_CORE_NB_CORE,1)
35$(call force,CFG_DRAM0_SIZE,0x40000000)
36$(call force,CFG_CORE_CLUSTER_SHIFT,2)
37CFG_SHMEM_SIZE ?= 0x00200000
38endif
39
40ifeq ($(PLATFORM_FLAVOR),ls1012afrwy)
41CFG_HW_UNQ_KEY_REQUEST ?= y
42include core/arch/arm/cpu/cortex-armv8-0.mk
43$(call force,CFG_TEE_CORE_NB_CORE,1)
44$(call force,CFG_CORE_CLUSTER_SHIFT,2)
45CFG_DRAM0_SIZE ?= 0x20000000
46CFG_SHMEM_SIZE ?= 0x00200000
47endif
48
49ifeq ($(PLATFORM_FLAVOR),ls1043ardb)
50CFG_HW_UNQ_KEY_REQUEST ?= y
51include core/arch/arm/cpu/cortex-armv8-0.mk
52$(call force,CFG_TEE_CORE_NB_CORE,4)
53$(call force,CFG_DRAM0_SIZE,0x80000000)
54$(call force,CFG_CORE_CLUSTER_SHIFT,2)
55CFG_SHMEM_SIZE ?= 0x00200000
56endif
57
58ifeq ($(PLATFORM_FLAVOR),ls1046ardb)
59CFG_HW_UNQ_KEY_REQUEST ?= y
60include core/arch/arm/cpu/cortex-armv8-0.mk
61$(call force,CFG_CAAM_BIG_ENDIAN,y)
62$(call force,CFG_TEE_CORE_NB_CORE,4)
63$(call force,CFG_DRAM0_SIZE,0x80000000)
64$(call force,CFG_CORE_CLUSTER_SHIFT,2)
65CFG_SHMEM_SIZE ?= 0x00200000
66endif
67
68ifeq ($(PLATFORM_FLAVOR),ls1088ardb)
69CFG_HW_UNQ_KEY_REQUEST ?= y
70include core/arch/arm/cpu/cortex-armv8-0.mk
71$(call force,CFG_TEE_CORE_NB_CORE,8)
72$(call force,CFG_DRAM0_SIZE,0x80000000)
73$(call force,CFG_CORE_CLUSTER_SHIFT,2)
74$(call force,CFG_ARM_GICV3,y)
75CFG_SHMEM_SIZE ?= 0x00200000
76endif
77
78ifeq ($(PLATFORM_FLAVOR),ls2088ardb)
79CFG_HW_UNQ_KEY_REQUEST ?= y
80include core/arch/arm/cpu/cortex-armv8-0.mk
81$(call force,CFG_TEE_CORE_NB_CORE,8)
82$(call force,CFG_DRAM0_SIZE,0x80000000)
83$(call force,CFG_CORE_CLUSTER_SHIFT,1)
84$(call force,CFG_ARM_GICV3,y)
85CFG_SHMEM_SIZE ?= 0x00200000
86endif
87
88ifeq ($(PLATFORM_FLAVOR),lx2160aqds)
89CFG_HW_UNQ_KEY_REQUEST ?= y
90include core/arch/arm/cpu/cortex-armv8-0.mk
91$(call force,CFG_TEE_CORE_NB_CORE,16)
92$(call force,CFG_DRAM0_SIZE,0x80000000)
93$(call force,CFG_DRAM1_BASE,0x2080000000)
94$(call force,CFG_DRAM1_SIZE,0x1F80000000)
95$(call force,CFG_CORE_CLUSTER_SHIFT,1)
96$(call force,CFG_ARM_GICV3,y)
97$(call force,CFG_PL011,y)
98$(call force,CFG_CORE_ARM64_PA_BITS,48)
99$(call force,CFG_EMBED_DT,y)
100$(call force,CFG_EMBED_DTB_SOURCE_FILE,fsl-lx2160a-qds.dts)
101CFG_LS_I2C ?= y
102CFG_LS_GPIO ?= y
103CFG_LS_DSPI ?= y
104CFG_SHMEM_SIZE ?= 0x00200000
105endif
106
107ifeq ($(PLATFORM_FLAVOR),lx2160ardb)
108CFG_HW_UNQ_KEY_REQUEST ?= y
109include core/arch/arm/cpu/cortex-armv8-0.mk
110$(call force,CFG_CAAM_LITTLE_ENDIAN,y)
111$(call force,CFG_TEE_CORE_NB_CORE,16)
112$(call force,CFG_DRAM0_SIZE,0x80000000)
113$(call force,CFG_DRAM1_BASE,0x2080000000)
114$(call force,CFG_DRAM1_SIZE,0x1F80000000)
115$(call force,CFG_CORE_CLUSTER_SHIFT,1)
116$(call force,CFG_ARM_GICV3,y)
117$(call force,CFG_PL011,y)
118$(call force,CFG_CORE_ARM64_PA_BITS,48)
119$(call force,CFG_EMBED_DT,y)
120$(call force,CFG_EMBED_DTB_SOURCE_FILE,fsl-lx2160a-rdb.dts)
121CFG_LS_I2C ?= y
122CFG_LS_GPIO ?= y
123CFG_LS_DSPI ?= y
124CFG_SHMEM_SIZE ?= 0x00200000
125endif
126
127ifeq ($(PLATFORM_FLAVOR),ls1028ardb)
128CFG_HW_UNQ_KEY_REQUEST ?= y
129include core/arch/arm/cpu/cortex-armv8-0.mk
130$(call force,CFG_TEE_CORE_NB_CORE,2)
131$(call force,CFG_DRAM0_SIZE,0x80000000)
132$(call force,CFG_CORE_CLUSTER_SHIFT,1)
133$(call force,CFG_ARM_GICV3,y)
134CFG_SHMEM_SIZE ?= 0x00200000
135endif
136
137ifeq ($(platform-flavor-armv8),1)
138$(call force,CFG_WITH_ARM_TRUSTED_FW,y)
139CFG_TZDRAM_START ?= ((CFG_DRAM0_BASE + CFG_DRAM0_SIZE) - CFG_TEE_OS_DRAM0_SIZE)
140CFG_TZDRAM_SIZE ?= ( CFG_TEE_OS_DRAM0_SIZE - CFG_SHMEM_SIZE)
141#CFG_SHMEM_START (Non-Secure shared memory) needs to be 2MB aligned boundary for TZASC 380 configuration.
142CFG_SHMEM_START ?= ((CFG_DRAM0_BASE + CFG_DRAM0_SIZE) - CFG_SHMEM_SIZE)
143$(call force,CFG_ARM64_core,y)
144CFG_USER_TA_TARGETS ?= ta_arm64
145else
146#In ARMv7 platform CFG_SHMEM_SIZE is different to that of ARMv8 platforms.
147CFG_TZDRAM_START ?= ((CFG_DRAM0_BASE + CFG_DRAM0_SIZE) - CFG_TEE_OS_DRAM0_SIZE)
148CFG_TZDRAM_SIZE ?= ( CFG_TEE_OS_DRAM0_SIZE - (2*CFG_SHMEM_SIZE))
149#CFG_SHMEM_START (Non-Secure shared memory) needs to be 2MB aligned boundary for TZASC 380 configuration.
150CFG_SHMEM_START ?= ((CFG_DRAM0_BASE + CFG_DRAM0_SIZE) - (2*CFG_SHMEM_SIZE))
151endif
152
153#Keeping Number of TEE thread equal to number of cores on the SoC
154CFG_NUM_THREADS ?= CFG_TEE_CORE_NB_CORE
155
156ifeq ($(CFG_ARM64_core),y)
157$(call force,CFG_WITH_LPAE,y)
158else
159$(call force,CFG_ARM32_core,y)
160$(call force,CFG_SECONDARY_INIT_CNTFRQ,y)
161endif
162
163CFG_CRYPTO_SIZE_OPTIMIZATION ?= n
164
165# NXP CAAM support is not enabled by default and can be enabled
166# on the command line
167CFG_NXP_CAAM ?= n
168
169ifeq ($(CFG_NXP_CAAM),y)
170# If NXP CAAM Driver is supported, the Crypto Driver interfacing
171# it with generic crypto API can be enabled.
172CFG_CRYPTO_DRIVER ?= y
173CFG_CRYPTO_DRIVER_DEBUG ?= 0
174else
175$(call force,CFG_CRYPTO_DRIVER,n)
176$(call force,CFG_WITH_SOFTWARE_PRNG,y)
177endif
178
179# Cryptographic configuration
180include core/arch/arm/plat-ls/crypto_conf.mk
181