summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/platform_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/platform_gk20a.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
index 49f386d8..4e454140 100644
--- a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
@@ -20,12 +20,20 @@
20 20
21#include <linux/platform_device.h> 21#include <linux/platform_device.h>
22#include <linux/pm_domain.h> 22#include <linux/pm_domain.h>
23#include <linux/dma-attrs.h>
23 24
24struct gk20a; 25struct gk20a;
25struct channel_gk20a; 26struct channel_gk20a;
26struct gr_ctx_buffer_desc; 27struct gr_ctx_buffer_desc;
27struct gk20a_scale_profile; 28struct gk20a_scale_profile;
28 29
30struct secure_page_buffer {
31 void (*destroy)(struct platform_device *, struct secure_page_buffer *);
32 size_t size;
33 u64 iova;
34 struct dma_attrs attrs;
35};
36
29struct gk20a_platform { 37struct gk20a_platform {
30#ifdef CONFIG_TEGRA_GK20A 38#ifdef CONFIG_TEGRA_GK20A
31 u32 syncpt_base; 39 u32 syncpt_base;
@@ -79,6 +87,13 @@ struct gk20a_platform {
79 struct gr_ctx_buffer_desc *desc, 87 struct gr_ctx_buffer_desc *desc,
80 size_t size); 88 size_t size);
81 89
90 /* Function to allocate a secure buffer of PAGE_SIZE at probe time.
91 * This is also helpful to trigger secure memory resizing
92 * while GPU is off
93 */
94 int (*secure_page_alloc)(struct platform_device *dev);
95 struct secure_page_buffer secure_buffer;
96
82 /* Device is going to be suspended */ 97 /* Device is going to be suspended */
83 int (*suspend)(struct device *); 98 int (*suspend)(struct device *);
84 99