On Tue, 23 May 2023 at 15:04, Sami Mujawar <sami.muja...@arm.com> wrote: > > The data type used by variables representing the GicDistributorBase > has been inconsistently used in the ArmGic driver and the library. > The PCD defined for the GIC Distributor base address is UINT64. > However, the data types for the variables used is UINTN, INTN, and > at some places UINT32. > > Therefore, update the data types to use UINTN and add necessary > typecasts when reading values from the PCD. This should then be > consistent across AArch32 and AArch64 builds. > > Signed-off-by: Sami Mujawar <sami.muja...@arm.com> > --- > ArmPkg/Drivers/ArmGic/ArmGicCommonDxe.c | 4 ++-- > ArmPkg/Drivers/ArmGic/ArmGicLib.c | 12 ++++++------ > ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c | 4 ++-- > ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c | 4 ++-- > ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c | 4 ++-- > ArmPkg/Include/Library/ArmGicLib.h | 18 +++++++++--------- > 6 files changed, 23 insertions(+), 23 deletions(-) > > diff --git a/ArmPkg/Drivers/ArmGic/ArmGicCommonDxe.c > b/ArmPkg/Drivers/ArmGic/ArmGicCommonDxe.c > index > d560c42fc9f3d5e86c2aece504102f43cb841877..9ac073db36ce92fc14de71e9a264059afd63d729 > 100644 > --- a/ArmPkg/Drivers/ArmGic/ArmGicCommonDxe.c > +++ b/ArmPkg/Drivers/ArmGic/ArmGicCommonDxe.c > @@ -1,6 +1,6 @@ > /*++ > > -Copyright (c) 2013-2017, ARM Ltd. All rights reserved.<BR> > +Copyright (c) 2013-2021, Arm Ltd. All rights reserved.<BR>
off by 2 ? > > SPDX-License-Identifier: BSD-2-Clause-Patent > > @@ -61,7 +61,7 @@ GicGetDistributorIcfgBaseAndBit ( > > RegIndex = Source / ARM_GIC_ICDICFR_F_STRIDE; // NOTE: truncation is > significant > Field = Source % ARM_GIC_ICDICFR_F_STRIDE; > - *RegAddress = PcdGet64 (PcdGicDistributorBase) > + *RegAddress = (UINTN)PcdGet64 (PcdGicDistributorBase) > + ARM_GIC_ICDICFR > + (ARM_GIC_ICDICFR_BYTES * RegIndex); > *Config1Bit = ((Field * ARM_GIC_ICDICFR_F_WIDTH) > diff --git a/ArmPkg/Drivers/ArmGic/ArmGicLib.c > b/ArmPkg/Drivers/ArmGic/ArmGicLib.c > index > dd3670c7ccbb18586bb28f4ac02514055471529f..6e44e89390fcdaa89302d6505f75c43c84ce3535 > 100644 > --- a/ArmPkg/Drivers/ArmGic/ArmGicLib.c > +++ b/ArmPkg/Drivers/ArmGic/ArmGicLib.c > @@ -117,7 +117,7 @@ ArmGicGetInterfaceIdentification ( > UINTN > EFIAPI > ArmGicGetMaxNumInterrupts ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ) > { > UINTN ItLines; > @@ -133,10 +133,10 @@ ArmGicGetMaxNumInterrupts ( > VOID > EFIAPI > ArmGicSendSgiTo ( > - IN INTN GicDistributorBase, > - IN INTN TargetListFilter, > - IN INTN CPUTargetList, > - IN INTN SgiId > + IN UINTN GicDistributorBase, > + IN INTN TargetListFilter, > + IN INTN CPUTargetList, > + IN INTN SgiId > ) > { > MmioWrite32 ( > @@ -390,7 +390,7 @@ ArmGicIsInterruptEnabled ( > VOID > EFIAPI > ArmGicDisableDistributor ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ) > { > // Disable Gic Distributor > diff --git a/ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c > b/ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c > index > aa4f0e2123929e0a86626b0f068d474065ca67fb..c17cbe041e8a9ceb8c8c3a6b953ff88b75f6f206 > 100644 > --- a/ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c > +++ b/ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c > @@ -1,6 +1,6 @@ > /** @file > * > -* Copyright (c) 2011-2015, ARM Limited. All rights reserved. > +* Copyright (c) 2011-2021, Arm Limited. All rights reserved. > * > * SPDX-License-Identifier: BSD-2-Clause-Patent > * > @@ -13,7 +13,7 @@ > VOID > EFIAPI > ArmGicEnableDistributor ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ) > { > ARM_GIC_ARCH_REVISION Revision; > diff --git a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c > b/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c > index > 25290342bde4de907bef050d6f1bdd6e03f8dccc..b7d67d830e46b663e4054990e7456660fb22cda9 > 100644 > --- a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c > +++ b/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c > @@ -2,7 +2,7 @@ > > Copyright (c) 2009, Hewlett-Packard Company. All rights reserved.<BR> > Portions copyright (c) 2010, Apple Inc. All rights reserved.<BR> > -Portions copyright (c) 2011-2017, ARM Ltd. All rights reserved.<BR> > +Portions copyright (c) 2011-2021, Arm Ltd. All rights reserved.<BR> > > SPDX-License-Identifier: BSD-2-Clause-Patent > > @@ -401,7 +401,7 @@ GicV2DxeInitialize ( > ASSERT_PROTOCOL_ALREADY_INSTALLED (NULL, &gHardwareInterruptProtocolGuid); > > mGicInterruptInterfaceBase = PcdGet64 (PcdGicInterruptInterfaceBase); > - mGicDistributorBase = PcdGet64 (PcdGicDistributorBase); > + mGicDistributorBase = (UINTN)PcdGet64 (PcdGicDistributorBase); > mGicNumInterrupts = ArmGicGetMaxNumInterrupts > (mGicDistributorBase); > > for (Index = 0; Index < mGicNumInterrupts; Index++) { > diff --git a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c > b/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c > index > b1f0cd48c752666e8b01eb5a25f8639e49213119..30c3fcbc3eee8e4f41f68a669cbc59650c12ca89 > 100644 > --- a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c > +++ b/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c > @@ -1,6 +1,6 @@ > /** @file > * > -* Copyright (c) 2011-2018, ARM Limited. All rights reserved. > +* Copyright (c) 2011-2021, Arm Limited. All rights reserved. > * > * SPDX-License-Identifier: BSD-2-Clause-Patent > * > @@ -381,7 +381,7 @@ GicV3DxeInitialize ( > // the system. > ASSERT_PROTOCOL_ALREADY_INSTALLED (NULL, &gHardwareInterruptProtocolGuid); > > - mGicDistributorBase = PcdGet64 (PcdGicDistributorBase); > + mGicDistributorBase = (UINTN)PcdGet64 (PcdGicDistributorBase); > mGicRedistributorsBase = PcdGet64 (PcdGicRedistributorsBase); > mGicNumInterrupts = ArmGicGetMaxNumInterrupts (mGicDistributorBase); > > diff --git a/ArmPkg/Include/Library/ArmGicLib.h > b/ArmPkg/Include/Library/ArmGicLib.h > index > 4ab670967598f21852e46f72116bf4c78ca7dd44..72dbd1ca8d626c69d9bb8727d77fd34b4ab3af28 > 100644 > --- a/ArmPkg/Include/Library/ArmGicLib.h > +++ b/ArmPkg/Include/Library/ArmGicLib.h > @@ -121,7 +121,7 @@ VOID > EFIAPI > ArmGicSetupNonSecure ( > IN UINTN MpId, > - IN INTN GicDistributorBase, > + IN UINTN GicDistributorBase, > IN INTN GicInterruptInterfaceBase > ); > > @@ -148,28 +148,28 @@ ArmGicDisableInterruptInterface ( > VOID > EFIAPI > ArmGicEnableDistributor ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ); > > VOID > EFIAPI > ArmGicDisableDistributor ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ); > > UINTN > EFIAPI > ArmGicGetMaxNumInterrupts ( > - IN INTN GicDistributorBase > + IN UINTN GicDistributorBase > ); > > VOID > EFIAPI > ArmGicSendSgiTo ( > - IN INTN GicDistributorBase, > - IN INTN TargetListFilter, > - IN INTN CPUTargetList, > - IN INTN SgiId > + IN UINTN GicDistributorBase, > + IN INTN TargetListFilter, > + IN INTN CPUTargetList, > + IN INTN SgiId > ); > > /* > @@ -251,7 +251,7 @@ VOID > EFIAPI > ArmGicV2SetupNonSecure ( > IN UINTN MpId, > - IN INTN GicDistributorBase, > + IN UINTN GicDistributorBase, > IN INTN GicInterruptInterfaceBase > ); > > -- > 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)' > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#105188): https://edk2.groups.io/g/devel/message/105188 Mute This Topic: https://groups.io/mt/99086452/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-