summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c3
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h1
-rw-r--r--drivers/gpu/nvgpu/gk20a/platform_gk20a.h3
3 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index bed728cf..77d708dd 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1084,6 +1084,9 @@ int gk20a_pm_finalize_poweron(struct device *dev)
1084 if (g->ops.xve.available_speeds) { 1084 if (g->ops.xve.available_speeds) {
1085 u32 speed; 1085 u32 speed;
1086 1086
1087 if (platform->disable_aspm && g->ops.xve.disable_aspm)
1088 g->ops.xve.disable_aspm(g);
1089
1087 g->ops.xve.sw_init(dev); 1090 g->ops.xve.sw_init(dev);
1088 g->ops.xve.available_speeds(g, &speed); 1091 g->ops.xve.available_speeds(g, &speed);
1089 1092
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index dc130e33..9e0dd64a 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -744,6 +744,7 @@ struct gpu_ops {
744 void (*available_speeds)(struct gk20a *g, u32 *speed_mask); 744 void (*available_speeds)(struct gk20a *g, u32 *speed_mask);
745 u32 (*xve_readl)(struct gk20a *g, u32 reg); 745 u32 (*xve_readl)(struct gk20a *g, u32 reg);
746 void (*xve_writel)(struct gk20a *g, u32 reg, u32 val); 746 void (*xve_writel)(struct gk20a *g, u32 reg, u32 val);
747 void (*disable_aspm)(struct gk20a *g);
747 } xve; 748 } xve;
748}; 749};
749 750
diff --git a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
index 2b17d32a..c2aec6e3 100644
--- a/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/platform_gk20a.h
@@ -61,6 +61,9 @@ struct gk20a_platform {
61 /* flag to set sync destroy aggressiveness */ 61 /* flag to set sync destroy aggressiveness */
62 bool aggressive_sync_destroy; 62 bool aggressive_sync_destroy;
63 63
64 /* set if ASPM should be disabled on boot; only makes sense for PCI */
65 bool disable_aspm;
66
64 /* Should be populated by probe. */ 67 /* Should be populated by probe. */
65 struct dentry *debugfs; 68 struct dentry *debugfs;
66 struct dentry *debugfs_alias; 69 struct dentry *debugfs_alias;