xref: /rk3399_ARM-atf/drivers/arm/gic/gic.mk (revision d154fe2bf0616f2e78965207c32b6e83ba12292e)
15d893410SBoyan Karatotev#
25d893410SBoyan Karatotev# Copyright (c) 2025, Arm Limited and Contributors. All rights reserved.
35d893410SBoyan Karatotev#
45d893410SBoyan Karatotev# SPDX-License-Identifier: BSD-3-Clause
55d893410SBoyan Karatotev#
65d893410SBoyan Karatotev
7*8cef63d6SBoyan KaratotevGIC_REVISIONS_ := 1 2 3 5
85d893410SBoyan Karatotevifeq ($(filter $(USE_GIC_DRIVER),$(GIC_REVISIONS_)),)
95d893410SBoyan Karatotev$(error USE_GIC_DRIVER can only be one of $(GIC_REVISIONS_))
105d893410SBoyan Karatotevendif
115d893410SBoyan Karatotev
125d893410SBoyan Karatotevifeq (${USE_GIC_DRIVER},2)
135d893410SBoyan Karatotevinclude drivers/arm/gic/v2/gicv2.mk
145d893410SBoyan KaratotevGIC_SOURCES	:=	${GICV2_SOURCES}			\
155d893410SBoyan Karatotev			drivers/arm/gic/v2/gicv2_base.c	\
165d893410SBoyan Karatotev			plat/common/plat_gicv2.c
175d893410SBoyan Karatotevelse ifeq (${USE_GIC_DRIVER},3)
185d893410SBoyan Karatotevinclude drivers/arm/gic/v3/gicv3.mk
195d893410SBoyan KaratotevGIC_SOURCES	:=	${GICV3_SOURCES}			\
205d893410SBoyan Karatotev			drivers/arm/gic/v3/gicv3_base.c	\
215d893410SBoyan Karatotev			plat/common/plat_gicv3.c
22*8cef63d6SBoyan Karatotevelse ifeq (${USE_GIC_DRIVER},5)
23*8cef63d6SBoyan Karatotevifneq (${ENABLE_FEAT_GCIE},1)
24*8cef63d6SBoyan Karatotev$(error USE_GIC_DRIVER=5 requires ENABLE_FEAT_GCIE=1)
25*8cef63d6SBoyan Karatotevendif
26*8cef63d6SBoyan Karatotev$(warning GICv5 support is experimental!)
27*8cef63d6SBoyan KaratotevGIC_SOURCES	:=	drivers/arm/gicv5/gicv5_iri.c		\
28*8cef63d6SBoyan Karatotev			plat/common/plat_gicv5.c
29*8cef63d6SBoyan Karatotevendif
30*8cef63d6SBoyan Karatotev
31*8cef63d6SBoyan Karatotevifneq (${ENABLE_FEAT_GCIE},0)
32*8cef63d6SBoyan KaratotevGIC_SOURCES	+=	drivers/arm/gicv5/gicv5_cpuif.c		\
33*8cef63d6SBoyan Karatotev			drivers/arm/gicv5/gicv5_main.c
345d893410SBoyan Karatotevendif
355d893410SBoyan Karatotev
365d893410SBoyan Karatotevifeq ($(ARCH),aarch64)
375d893410SBoyan KaratotevBL31_SOURCES	+=	${GIC_SOURCES}
385d893410SBoyan Karatotevelse
395d893410SBoyan KaratotevBL32_SOURCES	+=	${GIC_SOURCES}
405d893410SBoyan Karatotevendif
415d893410SBoyan Karatotev
425d893410SBoyan Karatotev$(eval $(call add_defines,\
435d893410SBoyan Karatotev	USE_GIC_DRIVER \
445d893410SBoyan Karatotev))
45