From 5a3a6aa787dacb4d1c34a2ece72effc72e45ac21 Mon Sep 17 00:00:00 2001 From: rsun3 Date: Tue, 18 Oct 2011 03:33:03 +0000 Subject: MdeModulePkg PciBusDxe: Allows PCI device drivers to set the EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE attribute for a PCI device. Signed-off-by: rsun3 Reviewed-by: mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12545 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c | 6 +++++- MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c | 6 +++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c index 620933779c..ccec37b287 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumeratorSupport.c @@ -1130,8 +1130,12 @@ DetermineDeviceAttribute ( if (EFI_ERROR (Status)) { return Status; } + // + // Assume the PCI Root Bridge supports DAC + // PciIoDevice->Supports |= (EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE | - EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM); + EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM | + EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE); } else { diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c index e4bde1ebe9..64f1f1b7c8 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c @@ -1305,11 +1305,11 @@ ModifyRootBridgeAttributes ( } // - // Mask off EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE & - // EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM, which are not supported by PCI root bridge. + // Mask off attributes not supported by PCI root bridge. // Attributes &= ~(UINT64)(EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE | - EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM); + EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM | + EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE); // // Record the new attribute of the Root Bridge -- cgit v1.2.3