mirror of
https://github.com/tianocore/edk2
synced 2026-08-27 00:23:19 -04:00
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> |
||
|---|---|---|
| .. | ||
| Ata | ||
| I2c/I2cDxe | ||
| Isa | ||
| Pci | ||
| Scsi | ||
| Sd | ||
| Spi | ||
| Ufs | ||
| Usb | ||