diff options
| author | Bjorn Helgaas <[email protected]> | 2012-03-16 23:48:24 +0000 |
|---|---|---|
| committer | Jesse Barnes <[email protected]> | 2012-03-20 17:42:01 +0000 |
| commit | a031589bc04086250d0a4d89dd277a70d74ed8fa (patch) | |
| tree | 8e5be9945ffc950952d86b970c92af8738a9fe45 /lib/string_helpers.c | |
| parent | powerpc/PCI: allow reallocation on PA Semi (diff) | |
| download | kernel-a031589bc04086250d0a4d89dd277a70d74ed8fa.tar.gz kernel-a031589bc04086250d0a4d89dd277a70d74ed8fa.zip | |
sparc/PCI: convert devtree and arch-probed bus addresses to resource
Normal PCI enumeration via PCI config space uses __pci_read_base(), where
the PCI core applies any bus-to-resource offset. But sparc sometimes
reads PCI config space itself, and sometimes it gets addresses from the
device tree.
In ac1edcc579b6, I converted sparc to use the PCI core bus-to-resource
conversion, but I missed these sparc-specific paths. I don't have a way
to test it, but I think sparc is broken between that commit and this one.
This patch replaces the sparc-specific pci_resource_adjust() with the
generic pcibios_bus_to_resource() in the following paths:
pci_cfg_fake_ranges() (addresses read from PCI config)
apb_fake_ranges() (addresses computed based on PCI config)
of_scan_pci_bridge() (addresses from OF "ranges" property)
N.B.: Resources of non-P2P bridge devices are set in pci_parse_of_addrs()
and, as far as I can see, never converted to CPU addresses. I do not
understand why these would be treated differently than bridge windows.
CC: "David S. Miller" <[email protected]>
CC: [email protected]
Signed-off-by: Bjorn Helgaas <[email protected]>
Signed-off-by: Jesse Barnes <[email protected]>
Diffstat (limited to 'lib/string_helpers.c')
0 files changed, 0 insertions, 0 deletions
