Correct the right bits judgment for get size of OptionROM.
authorklu2 <klu2@de2fecce-e211-0410-80a6-f3fac2684e05>
Fri, 12 Jan 2007 06:20:33 +0000 (06:20 +0000)
committerklu2 <klu2@de2fecce-e211-0410-80a6-f3fac2684e05>
Fri, 12 Jan 2007 06:20:33 +0000 (06:20 +0000)
git-svn-id: https://edk2.tianocore.org/svn/edk2/trunk@2236 de2fecce-e211-0410-80a6-f3fac2684e05

edk2/EdkModulePkg/Bus/Pci/PciBus/Dxe/PciOptionRomSupport.c

index 3ec7698..449d0dc 100644 (file)
@@ -64,7 +64,7 @@ Returns:
   PciRootBridgeIo = PciIoDevice->PciRootBridgeIo;\r
 \r
   //\r
-  // offset is 48 if is not ppb\r
+  // offset is 0x30 if is not ppb\r
   //\r
 \r
   //\r
@@ -112,15 +112,16 @@ Returns:
   if (EFI_ERROR (Status)) {\r
     return Status;\r
   }\r
-\r
-  AllOnes &= 0xFFFFFFFC;\r
-  if ((AllOnes == 0) || (AllOnes == 0xFFFFFFFC)) {\r
+  //\r
+  // Bits [1, 10] are reserved\r
+  //\r
+  AllOnes &= 0xFFFFF800;\r
+  if ((AllOnes == 0) || (AllOnes == 0xFFFFF800)) {\r
     return EFI_NOT_FOUND;\r
   }\r
 \r
   PciIoDevice->RomSize = (UINT64) ((~AllOnes) + 1);\r
   return EFI_SUCCESS;\r
-\r
 }\r
 \r
 EFI_STATUS\r