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/fifo_gm20b.c4
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h18
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_ccsr_gm20b.h10
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h22
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h10
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h26
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h8
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h8
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_pwr_gm20b.h6
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_ram_gm20b.h10
10 files changed, 114 insertions, 8 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
index 188d1781..8586262f 100644
--- a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c
@@ -34,7 +34,9 @@ static void channel_gm20b_bind(struct channel_gk20a *c)
34 34
35 gk20a_writel(g, ccsr_channel_inst_r(c->hw_chid), 35 gk20a_writel(g, ccsr_channel_inst_r(c->hw_chid),
36 ccsr_channel_inst_ptr_f(inst_ptr) | 36 ccsr_channel_inst_ptr_f(inst_ptr) |
37 ccsr_channel_inst_target_vid_mem_f() | 37 (g->mm.vidmem_is_vidmem ?
38 ccsr_channel_inst_target_sys_mem_ncoh_f() :
39 ccsr_channel_inst_target_vid_mem_f()) |
38 ccsr_channel_inst_bind_true_f()); 40 ccsr_channel_inst_bind_true_f());
39 41
40 gk20a_writel(g, ccsr_channel_r(c->hw_chid), 42 gk20a_writel(g, ccsr_channel_r(c->hw_chid),
diff --git a/drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h
index 004f8e1e..6e412e17 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014-2015, 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,
@@ -62,6 +62,14 @@ static inline u32 bus_bar1_block_target_vid_mem_f(void)
62{ 62{
63 return 0x0; 63 return 0x0;
64} 64}
65static inline u32 bus_bar1_block_target_sys_mem_coh_f(void)
66{
67 return 0x20000000;
68}
69static inline u32 bus_bar1_block_target_sys_mem_ncoh_f(void)
70{
71 return 0x30000000;
72}
65static inline u32 bus_bar1_block_mode_virtual_f(void) 73static inline u32 bus_bar1_block_mode_virtual_f(void)
66{ 74{
67 return 0x80000000; 75 return 0x80000000;
@@ -78,6 +86,14 @@ static inline u32 bus_bar2_block_target_vid_mem_f(void)
78{ 86{
79 return 0x0; 87 return 0x0;
80} 88}
89static inline u32 bus_bar2_block_target_sys_mem_coh_f(void)
90{
91 return 0x20000000;
92}
93static inline u32 bus_bar2_block_target_sys_mem_ncoh_f(void)
94{
95 return 0x30000000;
96}
81static inline u32 bus_bar2_block_mode_virtual_f(void) 97static inline u32 bus_bar2_block_mode_virtual_f(void)
82{ 98{
83 return 0x80000000; 99 return 0x80000000;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_ccsr_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_ccsr_gm20b.h
index 9dd03ee1..2fdf73ae 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_ccsr_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_ccsr_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,
@@ -66,6 +66,14 @@ static inline u32 ccsr_channel_inst_target_vid_mem_f(void)
66{ 66{
67 return 0x0; 67 return 0x0;
68} 68}
69static inline u32 ccsr_channel_inst_target_sys_mem_coh_f(void)
70{
71 return 0x20000000;
72}
73static inline u32 ccsr_channel_inst_target_sys_mem_ncoh_f(void)
74{
75 return 0x30000000;
76}
69static inline u32 ccsr_channel_inst_bind_false_f(void) 77static inline u32 ccsr_channel_inst_bind_false_f(void)
70{ 78{
71 return 0x0; 79 return 0x0;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h
index d68f6479..a6010696 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014-2015, 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,
@@ -114,6 +114,10 @@ static inline u32 fb_mmu_invalidate_pdb_aperture_vid_mem_f(void)
114{ 114{
115 return 0x0; 115 return 0x0;
116} 116}
117static inline u32 fb_mmu_invalidate_pdb_aperture_sys_mem_f(void)
118{
119 return 0x2;
120}
117static inline u32 fb_mmu_invalidate_pdb_addr_f(u32 v) 121static inline u32 fb_mmu_invalidate_pdb_addr_f(u32 v)
118{ 122{
119 return (v & 0xfffffff) << 4; 123 return (v & 0xfffffff) << 4;
@@ -174,6 +178,14 @@ static inline u32 fb_mmu_debug_wr_aperture_vid_mem_f(void)
174{ 178{
175 return 0x0; 179 return 0x0;
176} 180}
181static inline u32 fb_mmu_debug_wr_aperture_sys_mem_coh_f(void)
182{
183 return 0x2;
184}
185static inline u32 fb_mmu_debug_wr_aperture_sys_mem_ncoh_f(void)
186{
187 return 0x3;
188}
177static inline u32 fb_mmu_debug_wr_vol_false_f(void) 189static inline u32 fb_mmu_debug_wr_vol_false_f(void)
178{ 190{
179 return 0x0; 191 return 0x0;
@@ -202,6 +214,14 @@ static inline u32 fb_mmu_debug_rd_aperture_vid_mem_f(void)
202{ 214{
203 return 0x0; 215 return 0x0;
204} 216}
217static inline u32 fb_mmu_debug_rd_aperture_sys_mem_coh_f(void)
218{
219 return 0x2;
220}
221static inline u32 fb_mmu_debug_rd_aperture_sys_mem_ncoh_f(void)
222{
223 return 0x3;
224}
205static inline u32 fb_mmu_debug_rd_vol_false_f(void) 225static inline u32 fb_mmu_debug_rd_vol_false_f(void)
206{ 226{
207 return 0x0; 227 return 0x0;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h
index eb9f1694..8aa1c6a4 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014-2015, 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,
@@ -82,6 +82,14 @@ static inline u32 fifo_runlist_base_target_vid_mem_f(void)
82{ 82{
83 return 0x0; 83 return 0x0;
84} 84}
85static inline u32 fifo_runlist_base_target_sys_mem_coh_f(void)
86{
87 return 0x20000000;
88}
89static inline u32 fifo_runlist_base_target_sys_mem_ncoh_f(void)
90{
91 return 0x30000000;
92}
85static inline u32 fifo_runlist_r(void) 93static inline u32 fifo_runlist_r(void)
86{ 94{
87 return 0x00002274; 95 return 0x00002274;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h
index 572f727f..3b272948 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h
@@ -1,5 +1,5 @@
1/* 1/*
2 * Copyright (c) 2014-2015, 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,
@@ -62,6 +62,14 @@ static inline u32 gmmu_pde_aperture_big_video_memory_f(void)
62{ 62{
63 return 0x1; 63 return 0x1;
64} 64}
65static inline u32 gmmu_pde_aperture_big_sys_mem_coh_f(void)
66{
67 return 0x2;
68}
69static inline u32 gmmu_pde_aperture_big_sys_mem_ncoh_f(void)
70{
71 return 0x3;
72}
65static inline u32 gmmu_pde_size_w(void) 73static inline u32 gmmu_pde_size_w(void)
66{ 74{
67 return 0; 75 return 0;
@@ -90,6 +98,14 @@ static inline u32 gmmu_pde_aperture_small_video_memory_f(void)
90{ 98{
91 return 0x1; 99 return 0x1;
92} 100}
101static inline u32 gmmu_pde_aperture_small_sys_mem_coh_f(void)
102{
103 return 0x2;
104}
105static inline u32 gmmu_pde_aperture_small_sys_mem_ncoh_f(void)
106{
107 return 0x3;
108}
93static inline u32 gmmu_pde_vol_small_w(void) 109static inline u32 gmmu_pde_vol_small_w(void)
94{ 110{
95 return 1; 111 return 1;
@@ -186,6 +202,14 @@ static inline u32 gmmu_pte_aperture_video_memory_f(void)
186{ 202{
187 return 0x0; 203 return 0x0;
188} 204}
205static inline u32 gmmu_pte_aperture_sys_mem_coh_f(void)
206{
207 return 0x4;
208}
209static inline u32 gmmu_pte_aperture_sys_mem_ncoh_f(void)
210{
211 return 0x6;
212}
189static inline u32 gmmu_pte_read_only_w(void) 213static inline u32 gmmu_pte_read_only_w(void)
190{ 214{
191 return 0; 215 return 0;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h
index 4930d4c7..dbe54860 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h
@@ -838,6 +838,14 @@ static inline u32 gr_fecs_current_ctx_target_vid_mem_f(void)
838{ 838{
839 return 0x0; 839 return 0x0;
840} 840}
841static inline u32 gr_fecs_current_ctx_target_sys_mem_coh_f(void)
842{
843 return 0x20000000;
844}
845static inline u32 gr_fecs_current_ctx_target_sys_mem_ncoh_f(void)
846{
847 return 0x30000000;
848}
841static inline u32 gr_fecs_current_ctx_valid_s(void) 849static inline u32 gr_fecs_current_ctx_valid_s(void)
842{ 850{
843 return 1; 851 return 1;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h
index 19b3bc44..cabf3ba4 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h
@@ -322,6 +322,14 @@ static inline u32 pbdma_userd_target_vid_mem_f(void)
322{ 322{
323 return 0x0; 323 return 0x0;
324} 324}
325static inline u32 pbdma_userd_target_sys_mem_coh_f(void)
326{
327 return 0x2;
328}
329static inline u32 pbdma_userd_target_sys_mem_ncoh_f(void)
330{
331 return 0x3;
332}
325static inline u32 pbdma_userd_addr_f(u32 v) 333static inline u32 pbdma_userd_addr_f(u32 v)
326{ 334{
327 return (v & 0x7fffff) << 9; 335 return (v & 0x7fffff) << 9;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_pwr_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_pwr_gm20b.h
index 7f1814f0..b4dae452 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_pwr_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_pwr_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,
@@ -538,6 +538,10 @@ static inline u32 pwr_pmu_new_instblk_target_sys_coh_f(void)
538{ 538{
539 return 0x20000000; 539 return 0x20000000;
540} 540}
541static inline u32 pwr_pmu_new_instblk_target_sys_ncoh_f(void)
542{
543 return 0x30000000;
544}
541static inline u32 pwr_pmu_new_instblk_valid_f(u32 v) 545static inline u32 pwr_pmu_new_instblk_valid_f(u32 v)
542{ 546{
543 return (v & 0x1) << 30; 547 return (v & 0x1) << 30;
diff --git a/drivers/gpu/nvgpu/gm20b/hw_ram_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_ram_gm20b.h
index a05f1c2b..e7367003 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_ram_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_ram_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,
@@ -70,6 +70,14 @@ static inline u32 ram_in_page_dir_base_target_vid_mem_f(void)
70{ 70{
71 return 0x0; 71 return 0x0;
72} 72}
73static inline u32 ram_in_page_dir_base_target_sys_mem_coh_f(void)
74{
75 return 0x2;
76}
77static inline u32 ram_in_page_dir_base_target_sys_mem_ncoh_f(void)
78{
79 return 0x3;
80}
73static inline u32 ram_in_page_dir_base_vol_w(void) 81static inline u32 ram_in_page_dir_base_vol_w(void)
74{ 82{
75 return 128; 83 return 128;