summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gp106/gr_gp106.c
diff options
context:
space:
mode:
authorSami Kiminki <skiminki@nvidia.com>2016-08-10 14:57:30 -0400
committerDeepak Nibade <dnibade@nvidia.com>2016-12-27 04:56:49 -0500
commit190e97f89bd486363db9916967a173e0bde5f43b (patch)
tree2795a577e3a8533dbbc47a69c84128d5f25487f2 /drivers/gpu/nvgpu/gp106/gr_gp106.c
parentf107ff488c8f1ccd225cdd4c40c82f79c45136c7 (diff)
gpu: nvgpu: gp106: Add NVC097_SET_GO_IDLE_TIMEOUT SW method
Add the NVC097_SET_GO_IDLE_TIMEOUT SW method for GP106. This enables booting the X server. Bug 1732372 Bug 1792002 Change-Id: I73abaaea240039dc91c66e3862ec01a342db2fa9 Signed-off-by: Sami Kiminki <skiminki@nvidia.com> Reviewed-on: http://git-master/r/1200637 (cherry picked from commit 0d24a6f3d8e421ea5205279166c6dc2d0f15c6a0) Reviewed-on: http://git-master/r/1223101 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106/gr_gp106.c')
-rw-r--r--drivers/gpu/nvgpu/gp106/gr_gp106.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gp106/gr_gp106.c b/drivers/gpu/nvgpu/gp106/gr_gp106.c
index 01d06975..8d8376d3 100644
--- a/drivers/gpu/nvgpu/gp106/gr_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/gr_gp106.c
@@ -56,6 +56,11 @@ static u32 gr_gp106_pagepool_default_size(struct gk20a *g)
56 return gr_scc_pagepool_total_pages_hwmax_value_v(); 56 return gr_scc_pagepool_total_pages_hwmax_value_v();
57} 57}
58 58
59static void gr_gp106_set_go_idle_timeout(struct gk20a *g, u32 data)
60{
61 gk20a_writel(g, gr_fe_go_idle_timeout_r(), data);
62}
63
59static int gr_gp106_handle_sw_method(struct gk20a *g, u32 addr, 64static int gr_gp106_handle_sw_method(struct gk20a *g, u32 addr,
60 u32 class_num, u32 offset, u32 data) 65 u32 class_num, u32 offset, u32 data)
61{ 66{
@@ -82,6 +87,9 @@ static int gr_gp106_handle_sw_method(struct gk20a *g, u32 addr,
82 case NVC097_SET_ALPHA_CIRCULAR_BUFFER_SIZE: 87 case NVC097_SET_ALPHA_CIRCULAR_BUFFER_SIZE:
83 g->ops.gr.set_alpha_circular_buffer_size(g, data); 88 g->ops.gr.set_alpha_circular_buffer_size(g, data);
84 break; 89 break;
90 case NVC097_SET_GO_IDLE_TIMEOUT:
91 gr_gp106_set_go_idle_timeout(g, data);
92 break;
85 default: 93 default:
86 goto fail; 94 goto fail;
87 } 95 }