mirror of https://github.com/acidanthera/audk.git
The non-prefetchable MMIO aperture of a bridge can never fall outside of the 32-bit address space. Namely, the MemoryBase and MemoryLimit fields in PCI_BRIDGE_CONTROL_REGISTER have type UINT16, and based on the PCI-to-PCI Bridge Architecture Spec, Chapter 3.2, the actual MMIO aperture is determined as in: NonPrefetchMemoryBase = (((MemoryBase & 0xFFF0u) >> 4) << 20) | 0x00000 NonPrefetchMemoryLimit = (((MemoryLimit & 0xFFF0u) >> 4) << 20) | 0xFFFFF In "OvmfPkg/PciHotPlugInitDxe", the "mPadding.MmioPadding.AddrSpaceGranularity" field is currently initialized to 64. According to the above, this is useless generality: a non-prefetchable MMIO reservation may only be satisfied from 32-bit address space. Update the field to 32. In practice this change makes no difference, because PciBusDxe already enforces the 32-bit limitation when it sees "non-prefetchable" from (SpecificFlag==0). Quoting commit |
||
---|---|---|
AppPkg | ||
ArmPkg | ||
ArmPlatformPkg | ||
ArmVirtPkg | ||
BaseTools | ||
BeagleBoardPkg | ||
Conf | ||
CorebootModulePkg | ||
CorebootPayloadPkg | ||
CryptoPkg | ||
DuetPkg | ||
EdkCompatibilityPkg | ||
EdkShellBinPkg | ||
EdkShellPkg | ||
EmbeddedPkg | ||
EmulatorPkg | ||
FatBinPkg | ||
FatPkg | ||
IntelFrameworkModulePkg | ||
IntelFrameworkPkg | ||
IntelFsp2Pkg | ||
IntelFsp2WrapperPkg | ||
IntelFspPkg | ||
IntelFspWrapperPkg | ||
IntelSiliconPkg | ||
MdeModulePkg | ||
MdePkg | ||
NetworkPkg | ||
Nt32Pkg | ||
Omap35xxPkg | ||
OptionRomPkg | ||
OvmfPkg | ||
PcAtChipsetPkg | ||
PerformancePkg | ||
QuarkPlatformPkg | ||
QuarkSocPkg | ||
SecurityPkg | ||
ShellBinPkg | ||
ShellPkg | ||
SignedCapsulePkg | ||
SourceLevelDebugPkg | ||
StdLib | ||
StdLibPrivateInternalFiles | ||
UefiCpuPkg | ||
UnixPkg | ||
Vlv2DeviceRefCodePkg | ||
Vlv2TbltDevicePkg | ||
.gitignore | ||
BuildNotes2.txt | ||
Contributions.txt | ||
Edk2Setup.bat | ||
License.txt | ||
Maintainers.txt | ||
Readme.md | ||
edksetup.bat | ||
edksetup.sh |
Readme.md
EDK II Project
A modern, feature-rich, cross-platform firmware development environment for the UEFI and PI specifications from www.uefi.org.
Contributions to the EDK II open source project are covered by the TianoCore Contribution Agreement 1.1
The majority of the content in the EDK II open source project uses a BSD 2-Clause License. The EDK II open source project contains the following components that are covered by additional licenses:
- AppPkg/Applications/Python/Python-2.7.2/Tools/pybench
- AppPkg/Applications/Python/Python-2.7.2
- AppPkg/Applications/Python/Python-2.7.10
- BaseTools/Source/C/BrotliCompress
- MdeModulePkg/Library/BrotliCustomDecompressLib
- OvmfPkg
- CryptoPkg/Library/OpensslLib/openssl
The EDK II Project is composed of packages. The maintainers for each package are listed in Maintainers.txt.