ia64/PCI: Use ioremap() instead of open-coded equivalent
Depositing __IA64_UNCACHED_OFFSET in the upper address bits is essentially equivalent to ioremap(): it converts a CPU physical address to a virtual address using the ia64 uncacheable identity map. Call ioremap() instead of doing the phys-to-virt conversion manually with __IA64_UNCACHED_OFFSET. Note that this makes it obvious that (a) we're putting a virtual address in a struct resource, and (b) we're passing a virtual address to ioremap() below in the PCI_ROM_RESOURCE case. These are both pre-existing problems that I'll resolve next. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
parent
ab97b8cc56
commit
f976721e82
|
@ -185,9 +185,8 @@ sn_io_slot_fixup(struct pci_dev *dev)
|
|||
if (size == 0)
|
||||
continue;
|
||||
|
||||
addr = pcidev_info->pdi_pio_mapped_addr[idx];
|
||||
addr = ((addr << 4) >> 4) | __IA64_UNCACHED_OFFSET;
|
||||
res->start = addr;
|
||||
res->start = ioremap(pcidev_info->pdi_pio_mapped_addr[idx],
|
||||
size + 1);
|
||||
res->end = addr + size;
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue