Lines Matching refs:vma

236 spufs_mem_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf)  in spufs_mem_mmap_fault()  argument
238 struct spu_context *ctx = vma->vm_file->private_data; in spufs_mem_mmap_fault()
247 psize = get_slice_psize(vma->vm_mm, address); in spufs_mem_mmap_fault()
254 BUG_ON(vma->vm_start & 0xffff); in spufs_mem_mmap_fault()
270 vma->vm_page_prot = pgprot_cached(vma->vm_page_prot); in spufs_mem_mmap_fault()
273 vma->vm_page_prot = pgprot_noncached_wc(vma->vm_page_prot); in spufs_mem_mmap_fault()
276 vm_insert_pfn(vma, address, pfn); in spufs_mem_mmap_fault()
283 static int spufs_mem_mmap_access(struct vm_area_struct *vma, in spufs_mem_mmap_access() argument
287 struct spu_context *ctx = vma->vm_file->private_data; in spufs_mem_mmap_access()
288 unsigned long offset = address - vma->vm_start; in spufs_mem_mmap_access()
291 if (write && !(vma->vm_flags & VM_WRITE)) in spufs_mem_mmap_access()
295 if ((offset + len) > vma->vm_end) in spufs_mem_mmap_access()
296 len = vma->vm_end - offset; in spufs_mem_mmap_access()
311 static int spufs_mem_mmap(struct file *file, struct vm_area_struct *vma) in spufs_mem_mmap() argument
320 " pgoff=0x%lx\n", vma->vm_start, vma->vm_end, in spufs_mem_mmap()
321 vma->vm_pgoff); in spufs_mem_mmap()
322 if (vma->vm_start & 0xffff) in spufs_mem_mmap()
324 if (vma->vm_pgoff & 0xf) in spufs_mem_mmap()
329 if (!(vma->vm_flags & VM_SHARED)) in spufs_mem_mmap()
332 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_mem_mmap()
333 vma->vm_page_prot = pgprot_noncached_wc(vma->vm_page_prot); in spufs_mem_mmap()
335 vma->vm_ops = &spufs_mem_mmap_vmops; in spufs_mem_mmap()
370 static int spufs_ps_fault(struct vm_area_struct *vma, in spufs_ps_fault() argument
375 struct spu_context *ctx = vma->vm_file->private_data; in spufs_ps_fault()
413 vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, in spufs_ps_fault()
427 static int spufs_cntl_mmap_fault(struct vm_area_struct *vma, in spufs_cntl_mmap_fault() argument
430 return spufs_ps_fault(vma, vmf, 0x4000, SPUFS_CNTL_MAP_SIZE); in spufs_cntl_mmap_fault()
440 static int spufs_cntl_mmap(struct file *file, struct vm_area_struct *vma) in spufs_cntl_mmap() argument
442 if (!(vma->vm_flags & VM_SHARED)) in spufs_cntl_mmap()
445 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_cntl_mmap()
446 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_cntl_mmap()
448 vma->vm_ops = &spufs_cntl_mmap_vmops; in spufs_cntl_mmap()
1127 spufs_signal1_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) in spufs_signal1_mmap_fault() argument
1130 return spufs_ps_fault(vma, vmf, 0x14000, SPUFS_SIGNAL_MAP_SIZE); in spufs_signal1_mmap_fault()
1135 return spufs_ps_fault(vma, vmf, 0x10000, SPUFS_SIGNAL_MAP_SIZE); in spufs_signal1_mmap_fault()
1145 static int spufs_signal1_mmap(struct file *file, struct vm_area_struct *vma) in spufs_signal1_mmap() argument
1147 if (!(vma->vm_flags & VM_SHARED)) in spufs_signal1_mmap()
1150 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_signal1_mmap()
1151 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_signal1_mmap()
1153 vma->vm_ops = &spufs_signal1_mmap_vmops; in spufs_signal1_mmap()
1265 spufs_signal2_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) in spufs_signal2_mmap_fault() argument
1268 return spufs_ps_fault(vma, vmf, 0x1c000, SPUFS_SIGNAL_MAP_SIZE); in spufs_signal2_mmap_fault()
1273 return spufs_ps_fault(vma, vmf, 0x10000, SPUFS_SIGNAL_MAP_SIZE); in spufs_signal2_mmap_fault()
1283 static int spufs_signal2_mmap(struct file *file, struct vm_area_struct *vma) in spufs_signal2_mmap() argument
1285 if (!(vma->vm_flags & VM_SHARED)) in spufs_signal2_mmap()
1288 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_signal2_mmap()
1289 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_signal2_mmap()
1291 vma->vm_ops = &spufs_signal2_mmap_vmops; in spufs_signal2_mmap()
1394 spufs_mss_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) in spufs_mss_mmap_fault() argument
1396 return spufs_ps_fault(vma, vmf, 0x0000, SPUFS_MSS_MAP_SIZE); in spufs_mss_mmap_fault()
1406 static int spufs_mss_mmap(struct file *file, struct vm_area_struct *vma) in spufs_mss_mmap() argument
1408 if (!(vma->vm_flags & VM_SHARED)) in spufs_mss_mmap()
1411 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_mss_mmap()
1412 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_mss_mmap()
1414 vma->vm_ops = &spufs_mss_mmap_vmops; in spufs_mss_mmap()
1456 spufs_psmap_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) in spufs_psmap_mmap_fault() argument
1458 return spufs_ps_fault(vma, vmf, 0x0000, SPUFS_PS_MAP_SIZE); in spufs_psmap_mmap_fault()
1468 static int spufs_psmap_mmap(struct file *file, struct vm_area_struct *vma) in spufs_psmap_mmap() argument
1470 if (!(vma->vm_flags & VM_SHARED)) in spufs_psmap_mmap()
1473 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_psmap_mmap()
1474 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_psmap_mmap()
1476 vma->vm_ops = &spufs_psmap_mmap_vmops; in spufs_psmap_mmap()
1516 spufs_mfc_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) in spufs_mfc_mmap_fault() argument
1518 return spufs_ps_fault(vma, vmf, 0x3000, SPUFS_MFC_MAP_SIZE); in spufs_mfc_mmap_fault()
1528 static int spufs_mfc_mmap(struct file *file, struct vm_area_struct *vma) in spufs_mfc_mmap() argument
1530 if (!(vma->vm_flags & VM_SHARED)) in spufs_mfc_mmap()
1533 vma->vm_flags |= VM_IO | VM_PFNMAP; in spufs_mfc_mmap()
1534 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); in spufs_mfc_mmap()
1536 vma->vm_ops = &spufs_mfc_mmap_vmops; in spufs_mfc_mmap()