summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-tegra/common.c1
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c5
-rw-r--r--drivers/gpu/nvgpu/gk20a/platform_gk20a_tegra.c3
3 files changed, 6 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 07faddfcfd70..542e2b6dbcc7 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
@@ -135,6 +135,7 @@ phys_addr_t tegra_carveout_start;
phys_addr_t tegra_carveout_size;
phys_addr_t tegra_vpr_start;
phys_addr_t tegra_vpr_size;
+EXPORT_SYMBOL(tegra_vpr_size);
phys_addr_t tegra_tsec_start;
phys_addr_t tegra_tsec_size;
phys_addr_t tegra_lp0_vec_start;
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index 03d466ef3dc8..f5f2c130241d 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1310,11 +1310,10 @@ int gk20a_secure_page_alloc(struct platform_device *pdev)
udelay(10);
err = platform->secure_page_alloc(pdev);
tegra_periph_reset_deassert(platform->clk[0]);
+ if (!err)
+ platform->secure_alloc_ready = true;
}
- if (!err)
- platform->secure_alloc_ready = true;
-
return err;
}
diff --git a/drivers/gpu/nvgpu/gk20a/platform_gk20a_tegra.c b/drivers/gpu/nvgpu/gk20a/platform_gk20a_tegra.c
index edeacdac6e5c..c94d35176c11 100644
--- a/drivers/gpu/nvgpu/gk20a/platform_gk20a_tegra.c
+++ b/drivers/gpu/nvgpu/gk20a/platform_gk20a_tegra.c
@@ -39,6 +39,7 @@
#define TEGRA_GK20A_SIM_SIZE 0x1000 /*tbd: this is a high-side guess */
extern struct device tegra_vpr_dev;
+extern phys_addr_t tegra_vpr_size;
struct gk20a_platform t132_gk20a_tegra_platform;
struct gk20a_emc_params {
@@ -457,6 +458,8 @@ static int gk20a_tegra_probe(struct platform_device *dev)
*platform = t132_gk20a_tegra_platform;
}
+ if (tegra_vpr_size == 0)
+ platform->secure_page_alloc = NULL;
gk20a_tegra_get_clocks(dev);
return 0;