diff --git a/MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c b/MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c index b07c1293d6..c836ad6a91 100644 --- a/MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c +++ b/MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c @@ -598,7 +598,7 @@ CoherentPciIoMap ( // Dev = NON_DISCOVERABLE_PCI_DEVICE_FROM_PCI_IO(This); if ((Dev->Attributes & EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE) == 0 && - (UINTN)HostAddress + *NumberOfBytes > SIZE_4GB) { + (EFI_PHYSICAL_ADDRESS)(UINTN)HostAddress + *NumberOfBytes > SIZE_4GB) { // // Bounce buffering is not possible for consistent mappings @@ -1006,7 +1006,7 @@ NonCoherentPciIoMap ( // a bounce buffer and copy over the data in case HostAddress >= 4 GB. // Bounce = ((Dev->Attributes & EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE) == 0 && - (UINTN)HostAddress + *NumberOfBytes > SIZE_4GB); + (EFI_PHYSICAL_ADDRESS)(UINTN)HostAddress + *NumberOfBytes > SIZE_4GB); if (!Bounce) { switch (Operation) { diff --git a/MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/NonDiscoverableDeviceRegistrationLib.c b/MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/NonDiscoverableDeviceRegistrationLib.c index 6f46dfac0f..536dfc7297 100644 --- a/MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/NonDiscoverableDeviceRegistrationLib.c +++ b/MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/NonDiscoverableDeviceRegistrationLib.c @@ -163,7 +163,7 @@ RegisterNonDiscoverableMmioDevice ( Desc->AddrLen = Size; Desc->AddrRangeMax = Base + Size - 1; Desc->ResType = ACPI_ADDRESS_SPACE_TYPE_MEM; - Desc->AddrSpaceGranularity = (Base + Size > SIZE_4GB) ? 64 : 32; + Desc->AddrSpaceGranularity = ((EFI_PHYSICAL_ADDRESS)Base + Size > SIZE_4GB) ? 64 : 32; Desc->AddrTranslationOffset = 0; } VA_END (Args);