|
@@ -247,6 +247,10 @@ static void __devinit pci_fixed_bar_fixup(struct pci_dev *dev)
|
|
u32 size;
|
|
u32 size;
|
|
int i;
|
|
int i;
|
|
|
|
|
|
|
|
+ /* Must have extended configuration space */
|
|
|
|
+ if (dev->cfg_size < PCIE_CAP_OFFSET + 4)
|
|
|
|
+ return;
|
|
|
|
+
|
|
/* Fixup the BAR sizes for fixed BAR devices and make them unmoveable */
|
|
/* Fixup the BAR sizes for fixed BAR devices and make them unmoveable */
|
|
offset = fixed_bar_cap(dev->bus, dev->devfn);
|
|
offset = fixed_bar_cap(dev->bus, dev->devfn);
|
|
if (!offset || PCI_DEVFN(2, 0) == dev->devfn ||
|
|
if (!offset || PCI_DEVFN(2, 0) == dev->devfn ||
|