summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/nvgpu/gk20a/fb_gk20a.c8
-rw-r--r--drivers/gpu/nvgpu/gk20a/hw_mc_gk20a.h16
-rw-r--r--drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h16
3 files changed, 40 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fb_gk20a.c b/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
index 568aed7a..b73be02a 100644
--- a/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fb_gk20a.c
@@ -22,12 +22,20 @@
22 22
23static void fb_gk20a_reset(struct gk20a *g) 23static void fb_gk20a_reset(struct gk20a *g)
24{ 24{
25 u32 val;
26
25 gk20a_dbg_info("reset gk20a fb"); 27 gk20a_dbg_info("reset gk20a fb");
26 28
27 gk20a_reset(g, mc_enable_pfb_enabled_f() 29 gk20a_reset(g, mc_enable_pfb_enabled_f()
28 | mc_enable_l2_enabled_f() 30 | mc_enable_l2_enabled_f()
29 | mc_enable_xbar_enabled_f() 31 | mc_enable_xbar_enabled_f()
30 | mc_enable_hub_enabled_f()); 32 | mc_enable_hub_enabled_f());
33
34 val = gk20a_readl(g, mc_elpg_enable_r());
35 val |= mc_elpg_enable_xbar_enabled_f()
36 | mc_elpg_enable_pfb_enabled_f()
37 | mc_elpg_enable_hub_enabled_f();
38 gk20a_writel(g, mc_elpg_enable_r(), val);
31} 39}
32 40
33static void gk20a_fb_set_mmu_page_size(struct gk20a *g) 41static void gk20a_fb_set_mmu_page_size(struct gk20a *g)
diff --git a/drivers/gpu/nvgpu/gk20a/hw_mc_gk20a.h b/drivers/gpu/nvgpu/gk20a/hw_mc_gk20a.h
index 97517a77..ea3c2528 100644
--- a/drivers/gpu/nvgpu/gk20a/hw_mc_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/hw_mc_gk20a.h
@@ -266,4 +266,20 @@ static inline u32 mc_enable_pb_sel_f(u32 v, u32 i)
266{ 266{
267 return (v & 0x1) << (0 + i*1); 267 return (v & 0x1) << (0 + i*1);
268} 268}
269static inline u32 mc_elpg_enable_r(void)
270{
271 return 0x0000020c;
272}
273static inline u32 mc_elpg_enable_xbar_enabled_f(void)
274{
275 return 0x4;
276}
277static inline u32 mc_elpg_enable_pfb_enabled_f(void)
278{
279 return 0x100000;
280}
281static inline u32 mc_elpg_enable_hub_enabled_f(void)
282{
283 return 0x20000000;
284}
269#endif 285#endif
diff --git a/drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h
index 3750de06..ed114e32 100644
--- a/drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h
+++ b/drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h
@@ -262,4 +262,20 @@ static inline u32 mc_enable_pb_sel_f(u32 v, u32 i)
262{ 262{
263 return (v & 0x1) << (0 + i*1); 263 return (v & 0x1) << (0 + i*1);
264} 264}
265static inline u32 mc_elpg_enable_r(void)
266{
267 return 0x0000020c;
268}
269static inline u32 mc_elpg_enable_xbar_enabled_f(void)
270{
271 return 0x4;
272}
273static inline u32 mc_elpg_enable_pfb_enabled_f(void)
274{
275 return 0x100000;
276}
277static inline u32 mc_elpg_enable_hub_enabled_f(void)
278{
279 return 0x20000000;
280}
265#endif 281#endif