diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/mm_gk20a.c | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c index d95a2cde..08c99895 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c | |||
@@ -2441,74 +2441,6 @@ int gk20a_vm_map_compbits(struct vm_gk20a *vm, | |||
2441 | return 0; | 2441 | return 0; |
2442 | } | 2442 | } |
2443 | 2443 | ||
2444 | /* | ||
2445 | * Core GMMU map function for the kernel to use. If @addr is 0 then the GPU | ||
2446 | * VA will be allocated for you. If addr is non-zero then the buffer will be | ||
2447 | * mapped at @addr. | ||
2448 | */ | ||
2449 | static u64 __gk20a_gmmu_map(struct vm_gk20a *vm, | ||
2450 | struct sg_table **sgt, | ||
2451 | u64 addr, | ||
2452 | u64 size, | ||
2453 | u32 flags, | ||
2454 | int rw_flag, | ||
2455 | bool priv, | ||
2456 | enum nvgpu_aperture aperture) | ||
2457 | { | ||
2458 | struct gk20a *g = gk20a_from_vm(vm); | ||
2459 | u64 vaddr; | ||
2460 | |||
2461 | nvgpu_mutex_acquire(&vm->update_gmmu_lock); | ||
2462 | vaddr = g->ops.mm.gmmu_map(vm, addr, | ||
2463 | *sgt, /* sg table */ | ||
2464 | 0, /* sg offset */ | ||
2465 | size, | ||
2466 | gmmu_page_size_kernel, | ||
2467 | 0, /* kind */ | ||
2468 | 0, /* ctag_offset */ | ||
2469 | flags, rw_flag, | ||
2470 | false, /* clear_ctags */ | ||
2471 | false, /* sparse */ | ||
2472 | priv, /* priv */ | ||
2473 | NULL, /* mapping_batch handle */ | ||
2474 | aperture); | ||
2475 | nvgpu_mutex_release(&vm->update_gmmu_lock); | ||
2476 | if (!vaddr) { | ||
2477 | nvgpu_err(g, "failed to allocate va space"); | ||
2478 | return 0; | ||
2479 | } | ||
2480 | |||
2481 | return vaddr; | ||
2482 | } | ||
2483 | |||
2484 | u64 gk20a_gmmu_map(struct vm_gk20a *vm, | ||
2485 | struct sg_table **sgt, | ||
2486 | u64 size, | ||
2487 | u32 flags, | ||
2488 | int rw_flag, | ||
2489 | bool priv, | ||
2490 | enum nvgpu_aperture aperture) | ||
2491 | { | ||
2492 | return __gk20a_gmmu_map(vm, sgt, 0, size, flags, rw_flag, priv, | ||
2493 | aperture); | ||
2494 | } | ||
2495 | |||
2496 | /* | ||
2497 | * Like gk20a_gmmu_map() except it works on a fixed address instead. | ||
2498 | */ | ||
2499 | u64 gk20a_gmmu_fixed_map(struct vm_gk20a *vm, | ||
2500 | struct sg_table **sgt, | ||
2501 | u64 addr, | ||
2502 | u64 size, | ||
2503 | u32 flags, | ||
2504 | int rw_flag, | ||
2505 | bool priv, | ||
2506 | enum nvgpu_aperture aperture) | ||
2507 | { | ||
2508 | return __gk20a_gmmu_map(vm, sgt, addr, size, flags, rw_flag, priv, | ||
2509 | aperture); | ||
2510 | } | ||
2511 | |||
2512 | #if defined(CONFIG_GK20A_VIDMEM) | 2444 | #if defined(CONFIG_GK20A_VIDMEM) |
2513 | static int gk20a_gmmu_clear_vidmem_mem(struct gk20a *g, struct nvgpu_mem *mem) | 2445 | static int gk20a_gmmu_clear_vidmem_mem(struct gk20a *g, struct nvgpu_mem *mem) |
2514 | { | 2446 | { |