On Fri, 16 Feb 2018, Bjorn Helgaas <helgaas@xxxxxxxxxx> wrote: > On Mon, Nov 27, 2017 at 11:57:46AM -0500, Sinan Kaya wrote: >> 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(). >> >> Extract the domain number from drm_device and pass it into >> pci_get_domain_bus_and_slot() function. >> >> Signed-off-by: Sinan Kaya <okaya@xxxxxxxxxxxxxx> > > I don't know what happened to this, and it didn't make it into > v4.16-rc1. I applied it to pci/deprecate-get-bus-and-slot for v4.17 > along with the patch that actually removes pci_get_bus_and_slot(). It fell between the cracks as we couldn't apply it before getting a backmerge on the dependency. Sorry about that. Ack for merging through your tree. Thanks, Jani. > >> --- >> drivers/gpu/drm/i915/i915_drv.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c >> index 9f45cfe..5a8cb79 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.c >> +++ b/drivers/gpu/drm/i915/i915_drv.c >> @@ -419,7 +419,10 @@ static int i915_getparam(struct drm_device *dev, void *data, >> >> static int i915_get_bridge_dev(struct drm_i915_private *dev_priv) >> { >> - dev_priv->bridge_dev = pci_get_bus_and_slot(0, PCI_DEVFN(0, 0)); >> + int domain = pci_domain_nr(dev_priv->drm.pdev->bus); >> + >> + dev_priv->bridge_dev = >> + pci_get_domain_bus_and_slot(domain, 0, PCI_DEVFN(0, 0)); >> if (!dev_priv->bridge_dev) { >> DRM_ERROR("bridge device not found\n"); >> return -1; >> -- >> 1.9.1 >> >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -- Jani Nikula, Intel Open Source Technology Center