sh: pci: Consolidate bus<->resource mapping in pci-lib.
Now that the io and mem offsets are tracked accordingly, the pci-new version of the bus<->resource mappers can be used generically. This moves them in to pci-lib. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
parent
09cfeb133e
commit
5160d3f782
|
@ -39,6 +39,37 @@ void pcibios_align_resource(void *data, struct resource *res,
|
||||||
res->start = start;
|
res->start = start;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
|
||||||
|
struct resource *res)
|
||||||
|
{
|
||||||
|
struct pci_channel *hose = dev->sysdata;
|
||||||
|
unsigned long offset = 0;
|
||||||
|
|
||||||
|
if (res->flags & IORESOURCE_IO)
|
||||||
|
offset = hose->io_offset;
|
||||||
|
else if (res->flags & IORESOURCE_MEM)
|
||||||
|
offset = hose->mem_offset;
|
||||||
|
|
||||||
|
region->start = res->start - offset;
|
||||||
|
region->end = res->end - offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
void __devinit
|
||||||
|
pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
|
||||||
|
struct pci_bus_region *region)
|
||||||
|
{
|
||||||
|
struct pci_channel *hose = dev->sysdata;
|
||||||
|
unsigned long offset = 0;
|
||||||
|
|
||||||
|
if (res->flags & IORESOURCE_IO)
|
||||||
|
offset = hose->io_offset;
|
||||||
|
else if (res->flags & IORESOURCE_MEM)
|
||||||
|
offset = hose->mem_offset;
|
||||||
|
|
||||||
|
res->start = region->start + offset;
|
||||||
|
res->end = region->end + offset;
|
||||||
|
}
|
||||||
|
|
||||||
int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
||||||
enum pci_mmap_state mmap_state, int write_combine)
|
enum pci_mmap_state mmap_state, int write_combine)
|
||||||
{
|
{
|
||||||
|
|
|
@ -147,37 +147,6 @@ void __devinit __weak pcibios_fixup_bus(struct pci_bus *bus)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
|
|
||||||
struct resource *res)
|
|
||||||
{
|
|
||||||
struct pci_channel *hose = dev->sysdata;
|
|
||||||
unsigned long offset = 0;
|
|
||||||
|
|
||||||
if (res->flags & IORESOURCE_IO)
|
|
||||||
offset = hose->io_offset;
|
|
||||||
else if (res->flags & IORESOURCE_MEM)
|
|
||||||
offset = hose->mem_offset;
|
|
||||||
|
|
||||||
region->start = res->start - offset;
|
|
||||||
region->end = res->end - offset;
|
|
||||||
}
|
|
||||||
|
|
||||||
void __devinit
|
|
||||||
pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
|
|
||||||
struct pci_bus_region *region)
|
|
||||||
{
|
|
||||||
struct pci_channel *hose = dev->sysdata;
|
|
||||||
unsigned long offset = 0;
|
|
||||||
|
|
||||||
if (res->flags & IORESOURCE_IO)
|
|
||||||
offset = hose->io_offset;
|
|
||||||
else if (res->flags & IORESOURCE_MEM)
|
|
||||||
offset = hose->mem_offset;
|
|
||||||
|
|
||||||
res->start = region->start + offset;
|
|
||||||
res->end = region->end + offset;
|
|
||||||
}
|
|
||||||
|
|
||||||
int pcibios_enable_device(struct pci_dev *dev, int mask)
|
int pcibios_enable_device(struct pci_dev *dev, int mask)
|
||||||
{
|
{
|
||||||
u16 cmd, old_cmd;
|
u16 cmd, old_cmd;
|
||||||
|
|
|
@ -72,20 +72,6 @@ void __devinit __weak pcibios_fixup_bus(struct pci_bus *bus)
|
||||||
pci_read_bridge_bases(bus);
|
pci_read_bridge_bases(bus);
|
||||||
}
|
}
|
||||||
|
|
||||||
void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
|
|
||||||
struct resource *res)
|
|
||||||
{
|
|
||||||
region->start = res->start;
|
|
||||||
region->end = res->end;
|
|
||||||
}
|
|
||||||
|
|
||||||
void pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
|
|
||||||
struct pci_bus_region *region)
|
|
||||||
{
|
|
||||||
res->start = region->start;
|
|
||||||
res->end = region->end;
|
|
||||||
}
|
|
||||||
|
|
||||||
int pcibios_enable_device(struct pci_dev *dev, int mask)
|
int pcibios_enable_device(struct pci_dev *dev, int mask)
|
||||||
{
|
{
|
||||||
u16 cmd, old_cmd;
|
u16 cmd, old_cmd;
|
||||||
|
|
Loading…
Reference in New Issue