|
@@ -618,21 +618,15 @@ int pcibios_enable_device(struct pci_dev *dev, int mask)
|
|
|
int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
|
|
enum pci_mmap_state mmap_state, int write_combine)
|
|
|
{
|
|
|
- struct pci_sys_data *root = dev->sysdata;
|
|
|
- unsigned long phys;
|
|
|
-
|
|
|
- if (mmap_state == pci_mmap_io) {
|
|
|
+ if (mmap_state == pci_mmap_io)
|
|
|
return -EINVAL;
|
|
|
- } else {
|
|
|
- phys = vma->vm_pgoff + (root->mem_offset >> PAGE_SHIFT);
|
|
|
- }
|
|
|
|
|
|
/*
|
|
|
* Mark this as IO
|
|
|
*/
|
|
|
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
|
|
|
|
|
|
- if (remap_pfn_range(vma, vma->vm_start, phys,
|
|
|
+ if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff,
|
|
|
vma->vm_end - vma->vm_start,
|
|
|
vma->vm_page_prot))
|
|
|
return -EAGAIN;
|