summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c')
-rw-r--r--drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c b/drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c
index 6a453096..0977e63a 100644
--- a/drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c
+++ b/drivers/gpu/nvgpu/os/linux/platform_gk20a_tegra.c
@@ -649,7 +649,7 @@ int gk20a_tegra_init_secure_alloc(struct gk20a_platform *platform)
649static struct clk *gk20a_clk_get(struct gk20a *g) 649static struct clk *gk20a_clk_get(struct gk20a *g)
650{ 650{
651 if (!g->clk.tegra_clk) { 651 if (!g->clk.tegra_clk) {
652 struct clk *clk; 652 struct clk *clk, *clk_parent;
653 char clk_dev_id[32]; 653 char clk_dev_id[32];
654 struct device *dev = dev_from_gk20a(g); 654 struct device *dev = dev_from_gk20a(g);
655 655
@@ -661,7 +661,16 @@ static struct clk *gk20a_clk_get(struct gk20a *g)
661 clk_dev_id); 661 clk_dev_id);
662 return NULL; 662 return NULL;
663 } 663 }
664
665 clk_parent = clk_get_parent(clk);
666 if (IS_ERR_OR_NULL(clk_parent)) {
667 nvgpu_err(g, "fail to get tegra gpu clk parent%s/gpu\n",
668 clk_dev_id);
669 return NULL;
670 }
671
664 g->clk.tegra_clk = clk; 672 g->clk.tegra_clk = clk;
673 g->clk.tegra_clk_parent = clk_parent;
665 } 674 }
666 675
667 return g->clk.tegra_clk; 676 return g->clk.tegra_clk;