summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/hal_gv11b.c')
-rw-r--r--drivers/gpu/nvgpu/gv11b/hal_gv11b.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
index 7c38b611..14b7a541 100644
--- a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
@@ -29,9 +29,11 @@
29#include "gk20a/bus_gk20a.h" 29#include "gk20a/bus_gk20a.h"
30#include "gk20a/flcn_gk20a.h" 30#include "gk20a/flcn_gk20a.h"
31#include "gk20a/regops_gk20a.h" 31#include "gk20a/regops_gk20a.h"
32#include "gk20a/fb_gk20a.h"
32 33
33#include "gm20b/ltc_gm20b.h" 34#include "gm20b/ltc_gm20b.h"
34#include "gm20b/gr_gm20b.h" 35#include "gm20b/gr_gm20b.h"
36#include "gm20b/fb_gm20b.h"
35#include "gm20b/fifo_gm20b.h" 37#include "gm20b/fifo_gm20b.h"
36 38
37#include "gp10b/ltc_gp10b.h" 39#include "gp10b/ltc_gp10b.h"
@@ -41,6 +43,7 @@
41#include "gp10b/priv_ring_gp10b.h" 43#include "gp10b/priv_ring_gp10b.h"
42#include "gp10b/fifo_gp10b.h" 44#include "gp10b/fifo_gp10b.h"
43#include "gp10b/fecs_trace_gp10b.h" 45#include "gp10b/fecs_trace_gp10b.h"
46#include "gp10b/fb_gp10b.h"
44 47
45#include "hal_gv11b.h" 48#include "hal_gv11b.h"
46#include "gr_gv11b.h" 49#include "gr_gv11b.h"
@@ -178,6 +181,23 @@ static const struct gpu_ops gv11b_ops = {
178 .isr_nonstall = gp10b_ce_nonstall_isr, 181 .isr_nonstall = gp10b_ce_nonstall_isr,
179 .get_num_pce = gv11b_ce_get_num_pce, 182 .get_num_pce = gv11b_ce_get_num_pce,
180 }, 183 },
184 .fb = {
185 .reset = gv11b_fb_reset,
186 .init_hw = gk20a_fb_init_hw,
187 .init_fs_state = gv11b_fb_init_fs_state,
188 .init_cbc = gv11b_fb_init_cbc,
189 .set_mmu_page_size = gm20b_fb_set_mmu_page_size,
190 .set_use_full_comp_tag_line =
191 gm20b_fb_set_use_full_comp_tag_line,
192 .compression_page_size = gp10b_fb_compression_page_size,
193 .compressible_page_size = gp10b_fb_compressible_page_size,
194 .vpr_info_fetch = gm20b_fb_vpr_info_fetch,
195 .dump_vpr_wpr_info = gm20b_fb_dump_vpr_wpr_info,
196 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled,
197 .set_debug_mode = gm20b_fb_set_debug_mode,
198 .tlb_invalidate = gk20a_fb_tlb_invalidate,
199 .hub_isr = gv11b_fb_hub_isr,
200 },
181 .clock_gating = { 201 .clock_gating = {
182 .slcg_bus_load_gating_prod = 202 .slcg_bus_load_gating_prod =
183 gv11b_slcg_bus_load_gating_prod, 203 gv11b_slcg_bus_load_gating_prod,
@@ -408,6 +428,7 @@ int gv11b_init_hal(struct gk20a *g)
408 428
409 gops->ltc = gv11b_ops.ltc; 429 gops->ltc = gv11b_ops.ltc;
410 gops->ce2 = gv11b_ops.ce2; 430 gops->ce2 = gv11b_ops.ce2;
431 gops->fb = gv11b_ops.fb;
411 gops->clock_gating = gv11b_ops.clock_gating; 432 gops->clock_gating = gv11b_ops.clock_gating;
412 gops->fifo = gv11b_ops.fifo; 433 gops->fifo = gv11b_ops.fifo;
413 gops->gr_ctx = gv11b_ops.gr_ctx; 434 gops->gr_ctx = gv11b_ops.gr_ctx;
@@ -435,10 +456,12 @@ int gv11b_init_hal(struct gk20a *g)
435 __nvgpu_set_enabled(g, NVGPU_SEC_SECUREGPCCS, false); 456 __nvgpu_set_enabled(g, NVGPU_SEC_SECUREGPCCS, false);
436 457
437 gv11b_init_gr(g); 458 gv11b_init_gr(g);
438 gv11b_init_fb(gops);
439 gv11b_init_mm(gops); 459 gv11b_init_mm(gops);
440 gv11b_init_pmu_ops(g); 460 gv11b_init_pmu_ops(g);
441 461
462 gv11b_init_uncompressed_kind_map();
463 gv11b_init_kind_attr();
464
442 g->name = "gv11b"; 465 g->name = "gv11b";
443 466
444 c->twod_class = FERMI_TWOD_A; 467 c->twod_class = FERMI_TWOD_A;