The existing HardwareInterrupt protocol lacked a means to configure the level/edge properties of an interrupt. The new HardwareInterrupt2 protocol introduced this capability. This patch updates the GIC drivers to provide the new interfaces. The changes comprise: Update to use HardwareInterrupt2 protocol Additions to register info in ArmGicLib.h Added new functionality (GetTriggerType and SetTriggerType) The requirement for this change derives from a problem detected on ARM Juno boards, but the change is of generic (ARM) relevance. This commit is in response to review on the mailing list and, as suggested there, rolls Girish's updates onto Ard's original example. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Girish Pathak <girish.pathak@arm.com> Signed-off-by: Evan Lloyd <evan.lloyd@arm.com> Tested-by: Girish Pathak <girish.pathak@arm.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
62 lines
1.6 KiB
INI
62 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
|
|
|
|
[Protocols]
|
|
gHardwareInterruptProtocolGuid
|
|
gHardwareInterrupt2ProtocolGuid
|
|
gEfiCpuArchProtocolGuid
|
|
|
|
[Pcd.common]
|
|
gArmTokenSpaceGuid.PcdGicDistributorBase
|
|
gArmTokenSpaceGuid.PcdGicRedistributorsBase
|
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
|
|
gArmTokenSpaceGuid.PcdArmGicV3WithV2Legacy
|
|
|
|
[Depex]
|
|
gEfiCpuArchProtocolGuid
|