microblaze/PCI: Implement pci_resource_to_user() with pcibios_resource_to_bus()
authorBjorn Helgaas <bhelgaas@google.com>
Fri, 17 Jun 2016 19:43:34 +0000 (14:43 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 17 Jun 2016 19:43:34 +0000 (14:43 -0500)
commit0ad8f06d589900b0e7006dd5194904f1c0be352c
tree4fce85cd8707c428fbe635ea5c7d14c8b86472f9
parent8221a013528597edc18d371b22667e8eefca599b
microblaze/PCI: Implement pci_resource_to_user() with pcibios_resource_to_bus()

"User" addresses are shown in /sys/devices/pci.../.../resource and
/proc/bus/pci/devices and used as mmap offsets for /proc/bus/pci/BB/DD.F
files.  For I/O port resources on microblaze, these are PCI bus addresses,
i.e., raw BAR values.

Previously pci_resource_to_user() computed the user address by subtracting
"hose->io_base_virt - _IO_BASE" from the resource start:

  pci_resource_to_user()
    if (IO)
      offset = (unsigned long)hose->io_base_virt - _IO_BASE;
    *start = rsrc->start - offset;

We've already told the PCI core about that "hose->io_base_virt - _IO_BASE"
offset:

  pcibios_setup_phb_resources()
    res = &hose->io_resource;
    pci_add_resource_offset(resources, res, hose->io_base_virt - _IO_BASE);

so pcibios_resource_to_bus() knows how to do that translation.

No functional change intended.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Yinghai Lu <yinghai@kernel.org>
arch/microblaze/pci/pci-common.c