From 8f3875393e7a6bd0fc03afdb1fa99b7e33b71576 Mon Sep 17 00:00:00 2001 From: Konsta Holtta Date: Tue, 14 Mar 2017 13:47:04 +0200 Subject: gpu: nvgpu: abstract away dma alloc attrs Don't use enum dma_attr in the gk20a_gmmu_alloc_attr* functions, but define nvgpu-internal flags for no kernel mapping, force contiguous, and read only modes. Store the flags in the allocated struct mem_desc and only use gk20a_gmmu_free, remove gk20a_gmmu_free_attr. This helps in OS abstraction. Rename the notion of attr to flags. Add implicit NVGPU_DMA_NO_KERNEL_MAPPING to all vidmem buffers allocated via gk20a_gmmu_alloc_vid for consistency. Fix a bug in gk20a_gmmu_alloc_map_attr that dropped the attr parameter accidentally. Bug 1853519 Change-Id: I1ff67dff9fc425457ae445ce4976a780eb4dcc9f Signed-off-by: Konsta Holtta Reviewed-on: http://git-master/r/1321101 Reviewed-by: svccoveritychecker Reviewed-by: Alex Waterman GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom --- drivers/gpu/nvgpu/gp106/acr_gp106.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'drivers/gpu/nvgpu/gp106') diff --git a/drivers/gpu/nvgpu/gp106/acr_gp106.c b/drivers/gpu/nvgpu/gp106/acr_gp106.c index f5228136..afb9ebe2 100644 --- a/drivers/gpu/nvgpu/gp106/acr_gp106.c +++ b/drivers/gpu/nvgpu/gp106/acr_gp106.c @@ -109,12 +109,14 @@ static int gp106_alloc_blob_space(struct gk20a *g, * Even though this mem_desc wouldn't be used, the wpr region needs to * be reserved in the allocator. */ - err = gk20a_gmmu_alloc_attr_vid_at(g, 0, wpr_inf.size, - &g->acr.wpr_dummy, wpr_inf.wpr_base); + err = gk20a_gmmu_alloc_flags_vid_at(g, + NVGPU_DMA_NO_KERNEL_MAPPING, wpr_inf.size, + &g->acr.wpr_dummy, wpr_inf.wpr_base); if (err) return err; - return gk20a_gmmu_alloc_attr_vid_at(g, 0, wpr_inf.size, mem, + return gk20a_gmmu_alloc_flags_vid_at(g, + NVGPU_DMA_NO_KERNEL_MAPPING, wpr_inf.size, mem, wpr_inf.nonwpr_base); } -- cgit v1.2.2