+ if (Index == mNumberOfPciRomImages) {\r
+ //\r
+ // Rom Image Table buffer needs to grow.\r
+ //\r
+ if (mNumberOfPciRomImages == mMaxNumberOfPciRomImages) {\r
+ NewTable = ReallocatePool (\r
+ mMaxNumberOfPciRomImages * sizeof (PCI_ROM_IMAGE),\r
+ (mMaxNumberOfPciRomImages + 0x20) * sizeof (PCI_ROM_IMAGE),\r
+ mRomImageTable\r
+ );\r
+ if (NewTable == NULL) {\r
+ return ;\r
+ }\r
+\r
+ mRomImageTable = NewTable;\r
+ mMaxNumberOfPciRomImages += 0x20;\r
+ }\r
+ //\r
+ // Record the new PCI device\r
+ //\r
+ mRomImageTable[Index].Seg = Seg;\r
+ mRomImageTable[Index].Bus = Bus;\r
+ mRomImageTable[Index].Dev = Dev;\r
+ mRomImageTable[Index].Func = Func;\r
+ mNumberOfPciRomImages++;\r