diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2016-11-29 01:51:19 +0300 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2016-11-30 03:05:09 +0300 |
commit | 286c2378aaccc7343ebf17ec6cd86567659caf70 (patch) | |
tree | 5dd94f0ec77397ace66536e162c9e8be74d3768d /drivers/pci/pci.c | |
parent | 546ba9f8f22f71b0202b6ba8967be5cc6dae4e21 (diff) | |
download | linux-286c2378aaccc7343ebf17ec6cd86567659caf70.tar.xz |
PCI: Remove pci_resource_bar() and pci_iov_resource_bar()
pci_std_update_resource() only deals with standard BARs, so we don't have
to worry about the complications of VF BARs in an SR-IOV capability.
Compute the BAR address inline and remove pci_resource_bar(). That makes
pci_iov_resource_bar() unused, so remove that as well.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Diffstat (limited to 'drivers/pci/pci.c')
-rw-r--r-- | drivers/pci/pci.c | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 631eac2bed78..ec3f16d13307 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -4827,36 +4827,6 @@ int pci_select_bars(struct pci_dev *dev, unsigned long flags) } EXPORT_SYMBOL(pci_select_bars); -/** - * pci_resource_bar - get position of the BAR associated with a resource - * @dev: the PCI device - * @resno: the resource number - * @type: the BAR type to be filled in - * - * Returns BAR position in config space, or 0 if the BAR is invalid. - */ -int pci_resource_bar(struct pci_dev *dev, int resno, enum pci_bar_type *type) -{ - int reg; - - if (resno < PCI_ROM_RESOURCE) { - *type = pci_bar_unknown; - return PCI_BASE_ADDRESS_0 + 4 * resno; - } else if (resno == PCI_ROM_RESOURCE) { - *type = pci_bar_mem32; - return dev->rom_base_reg; - } else if (resno < PCI_BRIDGE_RESOURCES) { - /* device specific resource */ - *type = pci_bar_unknown; - reg = pci_iov_resource_bar(dev, resno); - if (reg) - return reg; - } - - dev_err(&dev->dev, "BAR %d: invalid resource\n", resno); - return 0; -} - /* Some architectures require additional programming to enable VGA */ static arch_set_vga_state_t arch_set_vga_state; |