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