"ArmGicDxe.inf" currently does not document how the protocols in the [Protocols] section are used. Such comments help us analyze behavior, so let's add them now. - gHardwareInterruptProtocolGuid and gHardwareInterrupt2ProtocolGuid are always produced on the InterruptDxeInitialize() -> (GicV2DxeInitialize() | GicV3DxeInitialize()) -> InstallAndRegisterInterruptService() call path. - gEfiCpuArchProtocolGuid is consumed in the CpuArchEventProtocolNotify() protocol notify callback. (Technically this is "conditional"; however the firmware cannot work without architectural protocols, so we can call it unconditional.) While at it, drop the gArmGicDxeFileGuid comment from FILE_GUID; we're going to make that GUID uninteresting soon. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Steve Capper <steve.capper@linaro.org> Cc: Supreeth Venkatesh <Supreeth.Venkatesh@arm.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Steve Capper <steve.capper@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
63 lines
1.6 KiB
INI
63 lines
1.6 KiB
INI
#/** @file
|
|
#
|
|
# Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
|
|
# Copyright (c) 2012 - 2017, ARM Ltd. All rights reserved.<BR>
|
|
#
|
|
# This program and the accompanying materials
|
|
# are licensed and made available under the terms and conditions of the BSD License
|
|
# which accompanies this distribution. The full text of the license may be found at
|
|
# http://opensource.org/licenses/bsd-license.php
|
|
#
|
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
#
|
|
#**/
|
|
|
|
[Defines]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = ArmGicDxe
|
|
FILE_GUID = DE371F7C-DEC4-4D21-ADF1-593ABCC15882
|
|
MODULE_TYPE = DXE_DRIVER
|
|
VERSION_STRING = 1.0
|
|
|
|
ENTRY_POINT = InterruptDxeInitialize
|
|
|
|
[Sources.common]
|
|
ArmGicDxe.c
|
|
ArmGicCommonDxe.c
|
|
|
|
GicV2/ArmGicV2Dxe.c
|
|
GicV3/ArmGicV3Dxe.c
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
EmbeddedPkg/EmbeddedPkg.dec
|
|
ArmPkg/ArmPkg.dec
|
|
|
|
[LibraryClasses]
|
|
ArmGicLib
|
|
BaseLib
|
|
UefiLib
|
|
UefiBootServicesTableLib
|
|
DebugLib
|
|
PrintLib
|
|
MemoryAllocationLib
|
|
UefiDriverEntryPoint
|
|
IoLib
|
|
PcdLib
|
|
UefiLib
|
|
|
|
[Protocols]
|
|
gHardwareInterruptProtocolGuid ## PRODUCES
|
|
gHardwareInterrupt2ProtocolGuid ## PRODUCES
|
|
gEfiCpuArchProtocolGuid ## CONSUMES ## NOTIFY
|
|
|
|
[Pcd.common]
|
|
gArmTokenSpaceGuid.PcdGicDistributorBase
|
|
gArmTokenSpaceGuid.PcdGicRedistributorsBase
|
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
|
|
gArmTokenSpaceGuid.PcdArmGicV3WithV2Legacy
|
|
|
|
[Depex]
|
|
TRUE
|