diff options
| author | Phil Noh <Phil.Noh@amd.com> | 2026-06-25 23:41:25 +0300 |
|---|---|---|
| committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2026-07-17 12:03:00 +0300 |
| commit | c70637de12e0d5cee78ebf5a0b5d09cdb1db53c9 (patch) | |
| tree | d5aa2a20161594ef1654992d3f0675b19a559527 /BaseTools/Source/Python | |
| parent | 3613891d774d8a66c6fde2ae45a1f06a576d9684 (diff) | |
| download | edk2-c70637de12e0d5cee78ebf5a0b5d09cdb1db53c9.tar.xz | |
MdeModulePkg/PciBusDxe: Honor SpecificFlag for PMem64 in UpdatePciInfo
When UpdatePciInfo() downgrades a PciBarTypePMem64 BAR to a 32-bit type
via EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL, it unconditionally
assigns PciBarTypePMem32 regardless of SpecificFlag, placing the BAR in
the prefetchable bridge window even when the platform intended the
non-prefetchable window.
The ACPI resource descriptor's SpecificFlag field encodes the intended
prefetchability of the constrained resource, using the bit:
EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_PREFETCHABLE.
Fix this by checking the bit in SpecificFlag to select PciBarTypePMem32 or
PciBarTypeMem32, consistent with DumpPpbPaddingResource() in
PciEnumeratorSupport.c that uses the bit as the sole discriminator
between the two 32-bit BAR types.
Signed-off-by: Phil Noh <Phil.Noh@amd.com>
Diffstat (limited to 'BaseTools/Source/Python')
0 files changed, 0 insertions, 0 deletions
