diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/mm_gk20a.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h index a16ab588..b425ec5c 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h | |||
@@ -26,6 +26,7 @@ | |||
26 | 26 | ||
27 | #include <nvgpu/allocator.h> | 27 | #include <nvgpu/allocator.h> |
28 | #include <nvgpu/list.h> | 28 | #include <nvgpu/list.h> |
29 | #include <nvgpu/rbtree.h> | ||
29 | 30 | ||
30 | #ifdef CONFIG_ARM64 | 31 | #ifdef CONFIG_ARM64 |
31 | #define outer_flush_range(a, b) | 32 | #define outer_flush_range(a, b) |
@@ -196,7 +197,7 @@ struct priv_cmd_entry { | |||
196 | 197 | ||
197 | struct mapped_buffer_node { | 198 | struct mapped_buffer_node { |
198 | struct vm_gk20a *vm; | 199 | struct vm_gk20a *vm; |
199 | struct rb_node node; | 200 | struct nvgpu_rbtree_node node; |
200 | struct list_head unmap_list; | 201 | struct list_head unmap_list; |
201 | struct nvgpu_list_node va_buffers_list; | 202 | struct nvgpu_list_node va_buffers_list; |
202 | struct vm_reserved_va_node *va_node; | 203 | struct vm_reserved_va_node *va_node; |
@@ -231,6 +232,13 @@ mapped_buffer_node_from_va_buffers_list(struct nvgpu_list_node *node) | |||
231 | ((uintptr_t)node - offsetof(struct mapped_buffer_node, va_buffers_list)); | 232 | ((uintptr_t)node - offsetof(struct mapped_buffer_node, va_buffers_list)); |
232 | }; | 233 | }; |
233 | 234 | ||
235 | static inline struct mapped_buffer_node * | ||
236 | mapped_buffer_from_rbtree_node(struct nvgpu_rbtree_node *node) | ||
237 | { | ||
238 | return (struct mapped_buffer_node *) | ||
239 | ((uintptr_t)node - offsetof(struct mapped_buffer_node, node)); | ||
240 | }; | ||
241 | |||
234 | struct vm_reserved_va_node { | 242 | struct vm_reserved_va_node { |
235 | struct nvgpu_list_node reserved_va_list; | 243 | struct nvgpu_list_node reserved_va_list; |
236 | struct nvgpu_list_node va_buffers_list; | 244 | struct nvgpu_list_node va_buffers_list; |
@@ -306,7 +314,7 @@ struct vm_gk20a { | |||
306 | struct nvgpu_allocator user; | 314 | struct nvgpu_allocator user; |
307 | struct nvgpu_allocator user_lp; | 315 | struct nvgpu_allocator user_lp; |
308 | 316 | ||
309 | struct rb_root mapped_buffers; | 317 | struct nvgpu_rbtree_node *mapped_buffers; |
310 | 318 | ||
311 | struct nvgpu_list_node reserved_va_list; | 319 | struct nvgpu_list_node reserved_va_list; |
312 | 320 | ||