]> git.proxmox.com Git - mirror_edk2.git/blobdiff - DuetPkg/PciBusNoEnumerationDxe/PciEnumeratorSupport.c
ArmPlatformPkg/ArmVExpressPkg: Enable specifying firmware version string on build
[mirror_edk2.git] / DuetPkg / PciBusNoEnumerationDxe / PciEnumeratorSupport.c
index 421a92c8fce171b85be2a59e69974b28bbd9a0b6..fb41727e7ac4ff082ddc6d069028b4ab82f6f1fd 100644 (file)
@@ -1,7 +1,7 @@
 /*++\r
 \r
-Copyright (c) 2005 - 2007, Intel Corporation                                                         \r
-All rights reserved. This program and the accompanying materials                          \r
+Copyright (c) 2005 - 2014, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials                          \r
 are licensed and made available under the terms and conditions of the BSD License         \r
 which accompanies this distribution.  The full text of the license may be found at        \r
 http://opensource.org/licenses/bsd-license.php                                            \r
@@ -196,8 +196,9 @@ Returns:
   PCI_IO_DEVICE       *PciIoDevice;\r
   EFI_PCI_IO_PROTOCOL *PciIo;\r
 \r
-  Status  = EFI_SUCCESS;\r
-  SecBus  = 0;\r
+  Status      = EFI_SUCCESS;\r
+  SecBus      = 0;\r
+  PciIoDevice = NULL;\r
 \r
   for (Device = 0; Device <= PCI_MAX_DEVICE; Device++) {\r
 \r
@@ -818,7 +819,7 @@ Returns:
     // will block forwarding 0x100-0x3ff for each 1KB in the \r
     // first 64KB I/O range.\r
     //\r
-    if (!BridgeControl & EFI_PCI_BRIDGE_CONTROL_ISA) {\r
+    if ((BridgeControl & EFI_PCI_BRIDGE_CONTROL_ISA) != 0) {\r
       PciIoDevice->Attributes |= EFI_PCI_IO_ATTRIBUTE_ISA_IO;\r
     } \r
 \r
@@ -864,16 +865,12 @@ Returns:
 --*/\r
 {\r
   UINT32      Value;\r
-  //UINT64      BarValue64;\r
   UINT32      OriginalValue;\r
   UINT32      Mask;\r
-  UINT32      Data;\r
-  UINT8       Index;\r
   EFI_STATUS  Status;\r
 \r
   OriginalValue = 0;\r
   Value         = 0;\r
-  //BarValue64    = 0;\r
 \r
   Status = BarExisted (\r
             PciIoDevice,\r
@@ -991,12 +988,7 @@ Returns:
       //\r
       // Fix the length to support some spefic 64 bit BAR\r
       //\r
-      Data  = Value;\r
-      Index = 0;\r
-      for (Data = Value; Data != 0; Data >>= 1) {\r
-       Index ++;\r
-      }\r
-      Value |= ((UINT32)(-1) << Index); \r
+      Value |= ((UINT32)(-1) << HighBitSet32 (Value)); \r
 \r
       //\r
       // Calculate the size of 64bit bar\r