summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r--drivers/gpu/nvgpu/gk20a/fb_gk20a.c6
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h1
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.c4
3 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fb_gk20a.c b/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
index b73be02a..35551939 100644
--- a/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
@@ -55,11 +55,17 @@ static int gk20a_fb_compression_page_size(struct gk20a *g)
55 return SZ_128K; 55 return SZ_128K;
56} 56}
57 57
58static int gk20a_fb_compressible_page_size(struct gk20a *g)
59{
60 return SZ_64K;
61}
62
58void gk20a_init_fb(struct gpu_ops *gops) 63void gk20a_init_fb(struct gpu_ops *gops)
59{ 64{
60 gops->fb.reset = fb_gk20a_reset; 65 gops->fb.reset = fb_gk20a_reset;
61 gops->fb.set_mmu_page_size = gk20a_fb_set_mmu_page_size; 66 gops->fb.set_mmu_page_size = gk20a_fb_set_mmu_page_size;
62 gops->fb.compression_page_size = gk20a_fb_compression_page_size; 67 gops->fb.compression_page_size = gk20a_fb_compression_page_size;
68 gops->fb.compressible_page_size = gk20a_fb_compressible_page_size;
63 gk20a_init_uncompressed_kind_map(); 69 gk20a_init_uncompressed_kind_map();
64 gk20a_init_kind_attr(); 70 gk20a_init_kind_attr();
65} 71}
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index 19c9e786..2b905dcc 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -182,6 +182,7 @@ struct gpu_ops {
182 void (*init_kind_attr)(struct gk20a *g); 182 void (*init_kind_attr)(struct gk20a *g);
183 void (*set_mmu_page_size)(struct gk20a *g); 183 void (*set_mmu_page_size)(struct gk20a *g);
184 int (*compression_page_size)(struct gk20a *g); 184 int (*compression_page_size)(struct gk20a *g);
185 int (*compressible_page_size)(struct gk20a *g);
185 void (*dump_vpr_wpr_info)(struct gk20a *g); 186 void (*dump_vpr_wpr_info)(struct gk20a *g);
186 } fb; 187 } fb;
187 struct { 188 struct {
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
index 8ed9d0aa..d8dacad8 100644
--- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
@@ -1001,8 +1001,8 @@ static int setup_buffer_kind_and_compression(struct vm_gk20a *vm,
1001 } 1001 }
1002 } 1002 }
1003 /* comptags only supported for suitable kinds, 128KB pagesize */ 1003 /* comptags only supported for suitable kinds, 128KB pagesize */
1004 if (unlikely(kind_compressible && 1004 if (kind_compressible &&
1005 (vm->gmmu_page_sizes[pgsz_idx] != vm->big_page_size))) { 1005 vm->gmmu_page_sizes[pgsz_idx] < g->ops.fb.compressible_page_size(g)) {
1006 /* 1006 /*
1007 gk20a_warn(d, "comptags specified" 1007 gk20a_warn(d, "comptags specified"
1008 " but pagesize being used doesn't support it");*/ 1008 " but pagesize being used doesn't support it");*/