x86, pci: Add sanity check for PCI fixed bar probing
While probing for the PCI fixed BAR capability in the extended PCI configuration space we need to make sure raw_pci_ext_ops is actually initialized. Signed-off-by: Jacob Pan <jacob.jun.pan@intel.com> LKML-Reference: <43F901BD926A4E43B106BF17856F0755A321E8F7@orsmsx508.amr.corp.intel.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
parent
9eeeb09edb
commit
c54113823c
1 changed files with 4 additions and 0 deletions
|
@ -57,6 +57,10 @@ static int fixed_bar_cap(struct pci_bus *bus, unsigned int devfn)
|
||||||
u32 pcie_cap = 0, cap_data;
|
u32 pcie_cap = 0, cap_data;
|
||||||
|
|
||||||
pos = PCIE_CAP_OFFSET;
|
pos = PCIE_CAP_OFFSET;
|
||||||
|
|
||||||
|
if (!raw_pci_ext_ops)
|
||||||
|
return 0;
|
||||||
|
|
||||||
while (pos) {
|
while (pos) {
|
||||||
if (raw_pci_ext_ops->read(pci_domain_nr(bus), bus->number,
|
if (raw_pci_ext_ops->read(pci_domain_nr(bus), bus->number,
|
||||||
devfn, pos, 4, &pcie_cap))
|
devfn, pos, 4, &pcie_cap))
|
||||||
|
|
Loading…
Reference in a new issue