diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/mm_gk20a.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h index 0ff11d09..e07b95fe 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h | |||
@@ -186,7 +186,13 @@ struct mapped_buffer_node { | |||
186 | u32 ctag_offset; | 186 | u32 ctag_offset; |
187 | u32 ctag_lines; | 187 | u32 ctag_lines; |
188 | u32 ctag_allocated_lines; | 188 | u32 ctag_allocated_lines; |
189 | |||
190 | /* For comptag mapping, these are the mapping window parameters */ | ||
189 | bool ctags_mappable; | 191 | bool ctags_mappable; |
192 | u64 ctag_map_win_addr; /* non-zero if mapped */ | ||
193 | u64 ctag_map_win_size; /* non-zero if ctags_mappable */ | ||
194 | u32 ctag_map_win_ctagline; /* ctagline at win start, set if | ||
195 | * ctags_mappable */ | ||
190 | 196 | ||
191 | u32 flags; | 197 | u32 flags; |
192 | u32 kind; | 198 | u32 kind; |
@@ -504,6 +510,19 @@ u64 gk20a_vm_map(struct vm_gk20a *vm, | |||
504 | u64 buffer_offset, | 510 | u64 buffer_offset, |
505 | u64 mapping_size); | 511 | u64 mapping_size); |
506 | 512 | ||
513 | int gk20a_vm_get_compbits_info(struct vm_gk20a *vm, | ||
514 | u64 mapping_gva, | ||
515 | u64 *compbits_win_size, | ||
516 | u32 *compbits_win_ctagline, | ||
517 | u32 *mapping_ctagline, | ||
518 | u32 *flags); | ||
519 | |||
520 | int gk20a_vm_map_compbits(struct vm_gk20a *vm, | ||
521 | u64 mapping_gva, | ||
522 | u64 *compbits_win_gva, | ||
523 | u64 *mapping_iova, | ||
524 | u32 flags); | ||
525 | |||
507 | /* unmap handle from kernel */ | 526 | /* unmap handle from kernel */ |
508 | void gk20a_vm_unmap(struct vm_gk20a *vm, u64 offset); | 527 | void gk20a_vm_unmap(struct vm_gk20a *vm, u64 offset); |
509 | 528 | ||