|
@@ -398,8 +398,7 @@ static int fault_1d(struct drm_gem_object *obj,
|
|
|
pgoff_t pgoff;
|
|
|
|
|
|
/* We don't use vmf->pgoff since that has the fake offset: */
|
|
|
- pgoff = ((unsigned long)vmf->virtual_address -
|
|
|
- vma->vm_start) >> PAGE_SHIFT;
|
|
|
+ pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
|
|
|
|
|
|
if (omap_obj->pages) {
|
|
|
omap_gem_cpu_sync(obj, pgoff);
|
|
@@ -409,11 +408,10 @@ static int fault_1d(struct drm_gem_object *obj,
|
|
|
pfn = (omap_obj->paddr >> PAGE_SHIFT) + pgoff;
|
|
|
}
|
|
|
|
|
|
- VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address,
|
|
|
+ VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
|
|
|
pfn, pfn << PAGE_SHIFT);
|
|
|
|
|
|
- return vm_insert_mixed(vma, (unsigned long)vmf->virtual_address,
|
|
|
- __pfn_to_pfn_t(pfn, PFN_DEV));
|
|
|
+ return vm_insert_mixed(vma, vmf->address, __pfn_to_pfn_t(pfn, PFN_DEV));
|
|
|
}
|
|
|
|
|
|
/* Special handling for the case of faulting in 2d tiled buffers */
|
|
@@ -427,7 +425,7 @@ static int fault_2d(struct drm_gem_object *obj,
|
|
|
struct page *pages[64]; /* XXX is this too much to have on stack? */
|
|
|
unsigned long pfn;
|
|
|
pgoff_t pgoff, base_pgoff;
|
|
|
- void __user *vaddr;
|
|
|
+ unsigned long vaddr;
|
|
|
int i, ret, slots;
|
|
|
|
|
|
/*
|
|
@@ -447,8 +445,7 @@ static int fault_2d(struct drm_gem_object *obj,
|
|
|
const int m = 1 + ((omap_obj->width << fmt) / PAGE_SIZE);
|
|
|
|
|
|
/* We don't use vmf->pgoff since that has the fake offset: */
|
|
|
- pgoff = ((unsigned long)vmf->virtual_address -
|
|
|
- vma->vm_start) >> PAGE_SHIFT;
|
|
|
+ pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
|
|
|
|
|
|
/*
|
|
|
* Actual address we start mapping at is rounded down to previous slot
|
|
@@ -459,7 +456,7 @@ static int fault_2d(struct drm_gem_object *obj,
|
|
|
/* figure out buffer width in slots */
|
|
|
slots = omap_obj->width >> priv->usergart[fmt].slot_shift;
|
|
|
|
|
|
- vaddr = vmf->virtual_address - ((pgoff - base_pgoff) << PAGE_SHIFT);
|
|
|
+ vaddr = vmf->address - ((pgoff - base_pgoff) << PAGE_SHIFT);
|
|
|
|
|
|
entry = &priv->usergart[fmt].entry[priv->usergart[fmt].last];
|
|
|
|
|
@@ -503,12 +500,11 @@ static int fault_2d(struct drm_gem_object *obj,
|
|
|
|
|
|
pfn = entry->paddr >> PAGE_SHIFT;
|
|
|
|
|
|
- VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address,
|
|
|
+ VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
|
|
|
pfn, pfn << PAGE_SHIFT);
|
|
|
|
|
|
for (i = n; i > 0; i--) {
|
|
|
- vm_insert_mixed(vma, (unsigned long)vaddr,
|
|
|
- __pfn_to_pfn_t(pfn, PFN_DEV));
|
|
|
+ vm_insert_mixed(vma, vaddr, __pfn_to_pfn_t(pfn, PFN_DEV));
|
|
|
pfn += priv->usergart[fmt].stride_pfn;
|
|
|
vaddr += PAGE_SIZE * m;
|
|
|
}
|