diff options
author | rsun3 <rsun3@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-12-14 09:52:38 +0000 |
---|---|---|
committer | rsun3 <rsun3@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-12-14 09:52:38 +0000 |
commit | 7afa5ea8003e5d3b47a4b42cd2ef353f62126afa (patch) | |
tree | a428d3614074b9731087aab1a4cc9ea56b5e3335 | |
parent | 3a0e054598963d0dedcda04612fe759513e8f75c (diff) | |
download | edk2-platforms-7afa5ea8003e5d3b47a4b42cd2ef353f62126afa.tar.xz |
Add special treatment for EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE and EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM, because these attributes are only for PCI IO, while not supported by PCI Root Bridge IO.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11165 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c | 3 | ||||
-rw-r--r-- | MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c index 2a399c2ec2..c8689c0421 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c @@ -1063,6 +1063,9 @@ DetermineDeviceAttribute ( if (EFI_ERROR (Status)) {
return Status;
}
+ PciIoDevice->Supports |= (EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE |
+ EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM);
+
} else {
//
diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c index 86c9135afd..c39de9dd7e 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c @@ -1269,6 +1269,13 @@ ModifyRootBridgeAttributes ( }
//
+ // Mask off EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE &
+ // EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM, which are not supported by PCI root bridge.
+ //
+ Attributes &= ~(UINT64)(EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE |
+ EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM);
+
+ //
// Record the new attribute of the Root Bridge
//
if (Operation == EfiPciIoAttributeOperationEnable) {
|