summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/clk_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/clk_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/clk_gk20a.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/clk_gk20a.c b/drivers/gpu/nvgpu/gk20a/clk_gk20a.c
index 44f8fb64..e10df6ac 100644
--- a/drivers/gpu/nvgpu/gk20a/clk_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/clk_gk20a.c
@@ -629,6 +629,17 @@ static int gk20a_clk_register_export_ops(struct gk20a *g)
629 return ret; 629 return ret;
630} 630}
631 631
632static void gk20a_clk_disable_slowboot(struct gk20a *g)
633{
634 u32 data;
635
636 data = gk20a_readl(g, trim_sys_gpc2clk_out_r());
637 data = set_field(data,
638 trim_sys_gpc2clk_out_bypdiv_m(),
639 trim_sys_gpc2clk_out_bypdiv_f(0));
640 gk20a_writel(g, trim_sys_gpc2clk_out_r(), data);
641}
642
632static int gk20a_init_clk_support(struct gk20a *g) 643static int gk20a_init_clk_support(struct gk20a *g)
633{ 644{
634 struct clk_gk20a *clk = &g->clk; 645 struct clk_gk20a *clk = &g->clk;
@@ -695,6 +706,7 @@ static int gk20a_suspend_clk_support(struct gk20a *g)
695 706
696void gk20a_init_clk_ops(struct gpu_ops *gops) 707void gk20a_init_clk_ops(struct gpu_ops *gops)
697{ 708{
709 gops->clk.disable_slowboot = gk20a_clk_disable_slowboot;
698 gops->clk.init_clk_support = gk20a_init_clk_support; 710 gops->clk.init_clk_support = gk20a_init_clk_support;
699 gops->clk.suspend_clk_support = gk20a_suspend_clk_support; 711 gops->clk.suspend_clk_support = gk20a_suspend_clk_support;
700} 712}