提交 cb5264be 编写于 作者: S Sinan Kaya 提交者: Bjorn Helgaas

ibft: Deprecate pci_get_bus_and_slot()

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: NSinan Kaya <okaya@codeaurora.org>
Signed-off-by: NBjorn Helgaas <helgaas@kernel.org>
Acked-by: NKonrad Rzeszutek Wilk <konrad@kernel.org>
上级 2c2457a4
...@@ -719,8 +719,9 @@ static int __init ibft_create_kobject(struct acpi_table_ibft *header, ...@@ -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 * executes only devices which are in domain 0. Furthermore, the
* iBFT spec doesn't have a domain id field :-( * iBFT spec doesn't have a domain id field :-(
*/ */
pci_dev = pci_get_bus_and_slot((nic->pci_bdf & 0xff00) >> 8, pci_dev = pci_get_domain_bus_and_slot(0,
(nic->pci_bdf & 0xff)); (nic->pci_bdf & 0xff00) >> 8,
(nic->pci_bdf & 0xff));
if (pci_dev) { if (pci_dev) {
rc = sysfs_create_link(&boot_kobj->kobj, rc = sysfs_create_link(&boot_kobj->kobj,
&pci_dev->dev.kobj, "device"); &pci_dev->dev.kobj, "device");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册