xref: /rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk (revision ecadac7cd21fa755a7d9fcaa92ec4be23dc263b2)
1558a6f44SRadoslaw Biernacki#
2c681d02cSMarcin Juszkiewicz# Copyright (c) 2019-2023, Linaro Limited and Contributors. All rights reserved.
3558a6f44SRadoslaw Biernacki#
4558a6f44SRadoslaw Biernacki# SPDX-License-Identifier: BSD-3-Clause
5558a6f44SRadoslaw Biernacki#
6558a6f44SRadoslaw Biernacki
7886688d1SMarcin JuszkiewiczPLAT_QEMU_PATH		:=	plat/qemu/qemu_sbsa
8886688d1SMarcin JuszkiewiczPLAT_QEMU_COMMON_PATH	:=	plat/qemu/common
9886688d1SMarcin Juszkiewicz
104a2e7547SMarcin JuszkiewiczCRASH_REPORTING		:= 1
114a2e7547SMarcin Juszkiewicz
124a2e7547SMarcin Juszkiewicz# Disable the PSCI platform compatibility layer
134a2e7547SMarcin JuszkiewiczENABLE_PLAT_COMPAT	:= 0
144a2e7547SMarcin Juszkiewicz
154a2e7547SMarcin JuszkiewiczSEPARATE_CODE_AND_RODATA := 1
164a2e7547SMarcin JuszkiewiczENABLE_STACK_PROTECTOR	 := 0
174a2e7547SMarcin Juszkiewicz
186a2426a9SMasahisa Kojimaifeq (${SPM_MM},1)
196a2426a9SMasahisa KojimaNEED_BL32		:=	yes
206a2426a9SMasahisa KojimaEL3_EXCEPTION_HANDLING	:=	1
216a2426a9SMasahisa Kojimaendif
226a2426a9SMasahisa Kojima
23941fc383SMarcin Juszkiewiczinclude plat/qemu/common/common.mk
24941fc383SMarcin Juszkiewicz
25558a6f44SRadoslaw Biernacki# Enable new version of image loading on QEMU platforms
26558a6f44SRadoslaw BiernackiLOAD_IMAGE_V2		:=	1
27558a6f44SRadoslaw Biernacki
28558a6f44SRadoslaw Biernackiifeq ($(NEED_BL32),yes)
29558a6f44SRadoslaw Biernacki$(eval $(call add_define,QEMU_LOAD_BL32))
30558a6f44SRadoslaw Biernackiendif
31558a6f44SRadoslaw Biernacki
32a6ea06f5SAlexei Fedorov# Include GICv3 driver files
33a6ea06f5SAlexei Fedorovinclude drivers/arm/gic/v3/gicv3.mk
34a6ea06f5SAlexei Fedorov
35a6ea06f5SAlexei FedorovQEMU_GIC_SOURCES	:=	${GICV3_SOURCES}				\
361e67b1b1SMarcin Juszkiewicz				plat/common/plat_gicv3.c
37558a6f44SRadoslaw Biernacki
3818884750SMarcin JuszkiewiczBL31_SOURCES		+=	${PLAT_QEMU_PATH}/sbsa_gic.c 			\
39*ecadac7cSMathieu Poirier				${PLAT_QEMU_PATH}/sbsa_platform.c		\
402fb5ed47SGraeme Gregory				${PLAT_QEMU_PATH}/sbsa_pm.c			\
41c681d02cSMarcin Juszkiewicz				${PLAT_QEMU_PATH}/sbsa_sip_svc.c		\
4218884750SMarcin Juszkiewicz				${PLAT_QEMU_PATH}/sbsa_topology.c
431fa05dabSChris Kay
441fa05dabSChris KayBL31_SOURCES		+=	${FDT_WRAPPERS_SOURCES}
451fa05dabSChris Kay
466a2426a9SMasahisa Kojimaifeq (${SPM_MM},1)
476a2426a9SMasahisa Kojima	BL31_SOURCES		+=	${PLAT_QEMU_COMMON_PATH}/qemu_spm.c
486a2426a9SMasahisa Kojimaendif
49558a6f44SRadoslaw Biernacki
50558a6f44SRadoslaw Biernacki# Use known base for UEFI if not given from command line
51558a6f44SRadoslaw Biernacki# By default BL33 is at FLASH1 base
52558a6f44SRadoslaw BiernackiPRELOADED_BL33_BASE	?= 0x10000000
53558a6f44SRadoslaw Biernacki
54558a6f44SRadoslaw Biernacki# Qemu SBSA plafrom only support SEC_SRAM
55558a6f44SRadoslaw BiernackiBL32_RAM_LOCATION_ID	= SEC_SRAM_ID
56558a6f44SRadoslaw Biernacki$(eval $(call add_define,BL32_RAM_LOCATION_ID))
57558a6f44SRadoslaw Biernacki
5874464d5bSAndrew Walbran# Don't have the Linux kernel as a BL33 image by default
5974464d5bSAndrew WalbranARM_LINUX_KERNEL_AS_BL33	:=	0
6074464d5bSAndrew Walbran$(eval $(call assert_boolean,ARM_LINUX_KERNEL_AS_BL33))
6174464d5bSAndrew Walbran$(eval $(call add_define,ARM_LINUX_KERNEL_AS_BL33))
6274464d5bSAndrew Walbran
6374464d5bSAndrew WalbranARM_PRELOADED_DTB_BASE := PLAT_QEMU_DT_BASE
6474464d5bSAndrew Walbran$(eval $(call add_define,ARM_PRELOADED_DTB_BASE))
65