diff options
| -rw-r--r-- | drivers/pci/access.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/drivers/pci/access.c b/drivers/pci/access.c index 769f7e35f1a2..5a5f0a7ba801 100644 --- a/drivers/pci/access.c +++ b/drivers/pci/access.c @@ -442,7 +442,8 @@ static const struct pci_vpd_ops pci_vpd_pci22_ops = {  static ssize_t pci_vpd_f0_read(struct pci_dev *dev, loff_t pos, size_t count,  			       void *arg)  { -	struct pci_dev *tdev = pci_get_slot(dev->bus, PCI_SLOT(dev->devfn)); +	struct pci_dev *tdev = pci_get_slot(dev->bus, +					    PCI_DEVFN(PCI_SLOT(dev->devfn), 0));  	ssize_t ret;  	if (!tdev) @@ -456,7 +457,8 @@ static ssize_t pci_vpd_f0_read(struct pci_dev *dev, loff_t pos, size_t count,  static ssize_t pci_vpd_f0_write(struct pci_dev *dev, loff_t pos, size_t count,  				const void *arg)  { -	struct pci_dev *tdev = pci_get_slot(dev->bus, PCI_SLOT(dev->devfn)); +	struct pci_dev *tdev = pci_get_slot(dev->bus, +					    PCI_DEVFN(PCI_SLOT(dev->devfn), 0));  	ssize_t ret;  	if (!tdev) @@ -475,7 +477,8 @@ static const struct pci_vpd_ops pci_vpd_f0_ops = {  static int pci_vpd_f0_dev_check(struct pci_dev *dev)  { -	struct pci_dev *tdev = pci_get_slot(dev->bus, PCI_SLOT(dev->devfn)); +	struct pci_dev *tdev = pci_get_slot(dev->bus, +					    PCI_DEVFN(PCI_SLOT(dev->devfn), 0));  	int ret = 0;  	if (!tdev) | 
