]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ibft: Deprecate pci_get_bus_and_slot()
authorSinan Kaya <okaya@codeaurora.org>
Tue, 19 Dec 2017 05:37:43 +0000 (00:37 -0500)
committerBjorn Helgaas <helgaas@kernel.org>
Thu, 11 Jan 2018 23:26:55 +0000 (17:26 -0600)
pci_get_bus_and_slot() is restrictive such that it assumes domain=0 as
where a PCI device is present. This restricts the device drivers to be
reused for other domain numbers.

Getting ready to remove pci_get_bus_and_slot() function in favor of
pci_get_domain_bus_and_slot().

We don't search for the device in other domains than zero. This is because
on x86 platforms the BIOS executes only devices which are in domain 0.
Furthermore, the iBFT spec doesn't have a domain id field.

Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Signed-off-by: Bjorn Helgaas <helgaas@kernel.org>
Acked-by: Konrad Rzeszutek Wilk <konrad@kernel.org>
drivers/firmware/iscsi_ibft.c

index 14042a64bdd587078876f7eef81e1e990aee9898..6bc8e6640d713eb890feb37b95083b1303f364a5 100644 (file)
@@ -719,8 +719,9 @@ static int __init ibft_create_kobject(struct acpi_table_ibft *header,
                * executes only devices which are in domain 0. Furthermore, the
                * iBFT spec doesn't have a domain id field :-(
                */
-               pci_dev = pci_get_bus_and_slot((nic->pci_bdf & 0xff00) >> 8,
-                                              (nic->pci_bdf & 0xff));
+               pci_dev = pci_get_domain_bus_and_slot(0,
+                                               (nic->pci_bdf & 0xff00) >> 8,
+                                               (nic->pci_bdf & 0xff));
                if (pci_dev) {
                        rc = sysfs_create_link(&boot_kobj->kobj,
                                               &pci_dev->dev.kobj, "device");