summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gm20b
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b')
-rw-r--r--drivers/gpu/nvgpu/gm20b/acr_gm20b.c2
-rw-r--r--drivers/gpu/nvgpu/gm20b/fifo_gm20b.c4
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h6
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h10
-rw-r--r--drivers/gpu/nvgpu/gm20b/ltc_gm20b.c3
-rw-r--r--drivers/gpu/nvgpu/gm20b/therm_gm20b.c1
6 files changed, 21 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/acr_gm20b.c b/drivers/gpu/nvgpu/gm20b/acr_gm20b.c
index 9f137246..8a0be106 100644
--- a/drivers/gpu/nvgpu/gm20b/acr_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/acr_gm20b.c
@@ -362,7 +362,7 @@ int prepare_ucode_blob(struct gk20a *g)
362 gm20b_dbg_pmu("prepare ucode blob return 0\n"); 362 gm20b_dbg_pmu("prepare ucode blob return 0\n");
363 free_acr_resources(g, plsfm); 363 free_acr_resources(g, plsfm);
364 free_sgt: 364 free_sgt:
365 kfree(sgt); 365 gk20a_free_sgtable(&sgt);
366 return err; 366 return err;
367} 367}
368 368
diff --git a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
index d1deffb9..b9763224 100644
--- a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * GM20B Fifo 2 * GM20B Fifo
3 * 3 *
4 * Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved. 4 * Copyright (c) 2014-2016, NVIDIA CORPORATION. All rights reserved.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify it 6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License, 7 * under the terms and conditions of the GNU General Public License,
@@ -114,6 +114,7 @@ void gm20b_init_fifo(struct gpu_ops *gops)
114 gops->fifo.free_inst = channel_gk20a_free_inst; 114 gops->fifo.free_inst = channel_gk20a_free_inst;
115 gops->fifo.setup_ramfc = channel_gk20a_setup_ramfc; 115 gops->fifo.setup_ramfc = channel_gk20a_setup_ramfc;
116 gops->fifo.channel_set_priority = gk20a_channel_set_priority; 116 gops->fifo.channel_set_priority = gk20a_channel_set_priority;
117 gops->fifo.channel_set_timeslice = gk20a_channel_set_timeslice;
117 118
118 gops->fifo.preempt_channel = gk20a_fifo_preempt_channel; 119 gops->fifo.preempt_channel = gk20a_fifo_preempt_channel;
119 gops->fifo.update_runlist = gk20a_fifo_update_runlist; 120 gops->fifo.update_runlist = gk20a_fifo_update_runlist;
@@ -121,4 +122,5 @@ void gm20b_init_fifo(struct gpu_ops *gops)
121 gops->fifo.wait_engine_idle = gk20a_fifo_wait_engine_idle; 122 gops->fifo.wait_engine_idle = gk20a_fifo_wait_engine_idle;
122 gops->fifo.get_num_fifos = gm20b_fifo_get_num_fifos; 123 gops->fifo.get_num_fifos = gm20b_fifo_get_num_fifos;
123 gops->fifo.get_pbdma_signature = gk20a_fifo_get_pbdma_signature; 124 gops->fifo.get_pbdma_signature = gk20a_fifo_get_pbdma_signature;
125 gops->fifo.set_runlist_interleave = gk20a_fifo_set_runlist_interleave;
124} 126}
diff --git a/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h
index 95e0c43d..aa01e945 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014, NVIDIA CORPORATION. All rights reserved. 2 * Copyright (c) 2014-2016, NVIDIA CORPORATION. All rights reserved.
3 * 3 *
4 * This program is free software; you can redistribute it and/or modify it 4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License, 5 * under the terms and conditions of the GNU General Public License,
@@ -286,6 +286,10 @@ static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_access_m(void)
286{ 286{
287 return 0x1 << 30; 287 return 0x1 << 30;
288} 288}
289static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_m(void)
290{
291 return 0x1 << 21;
292}
289static inline u32 ltc_ltc0_lts0_intr_r(void) 293static inline u32 ltc_ltc0_lts0_intr_r(void)
290{ 294{
291 return 0x0014040c; 295 return 0x0014040c;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h
index 126f7c8c..06d02522 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014, NVIDIA CORPORATION. All rights reserved. 2 * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
3 * 3 *
4 * This program is free software; you can redistribute it and/or modify it 4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License, 5 * under the terms and conditions of the GNU General Public License,
@@ -98,4 +98,12 @@ static inline u32 timer_pri_timeout_fecs_errcode_r(void)
98{ 98{
99 return 0x0000908c; 99 return 0x0000908c;
100} 100}
101static inline u32 timer_time_0_r(void)
102{
103 return 0x00009400;
104}
105static inline u32 timer_time_1_r(void)
106{
107 return 0x00009410;
108}
101#endif 109#endif
diff --git a/drivers/gpu/nvgpu/gm20b/ltc_gm20b.c b/drivers/gpu/nvgpu/gm20b/ltc_gm20b.c
index 5b6bff7f..ffc36903 100644
--- a/drivers/gpu/nvgpu/gm20b/ltc_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/ltc_gm20b.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * GM20B L2 2 * GM20B L2
3 * 3 *
4 * Copyright (c) 2014-2015 NVIDIA CORPORATION. All rights reserved. 4 * Copyright (c) 2014-2016 NVIDIA CORPORATION. All rights reserved.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify it 6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License, 7 * under the terms and conditions of the GNU General Public License,
@@ -190,6 +190,7 @@ void gm20b_ltc_init_fs_state(struct gk20a *g)
190 reg = gk20a_readl(g, ltc_ltcs_ltss_intr_r()); 190 reg = gk20a_readl(g, ltc_ltcs_ltss_intr_r());
191 reg &= ~ltc_ltcs_ltss_intr_en_evicted_cb_m(); 191 reg &= ~ltc_ltcs_ltss_intr_en_evicted_cb_m();
192 reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_access_m(); 192 reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_access_m();
193 reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_m();
193 gk20a_writel(g, ltc_ltcs_ltss_intr_r(), reg); 194 gk20a_writel(g, ltc_ltcs_ltss_intr_r(), reg);
194} 195}
195 196
diff --git a/drivers/gpu/nvgpu/gm20b/therm_gm20b.c b/drivers/gpu/nvgpu/gm20b/therm_gm20b.c
index 5bd22841..6ebc4c91 100644
--- a/drivers/gpu/nvgpu/gm20b/therm_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/therm_gm20b.c
@@ -15,6 +15,7 @@
15 15
16#include "gk20a/gk20a.h" 16#include "gk20a/gk20a.h"
17#include "hw_therm_gm20b.h" 17#include "hw_therm_gm20b.h"
18#include "therm_gm20b.h"
18 19
19static int gm20b_init_therm_setup_hw(struct gk20a *g) 20static int gm20b_init_therm_setup_hw(struct gk20a *g)
20{ 21{