mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 02:22:34 +03:00
gpu: nvgpu: Add platform flag to disable ASPM
Add a platform flag and logic to disable ASPM on boot if a platform does not want ASPM enabled. Bug 200256272 Change-Id: I378997290377ef8ffa21bf8e7f3f59fa134b3d4d Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: http://git-master/r/1263271 (cherry picked from commit 01e4700b74f4b4c6f0b9ffb40747653f2b63ea3c) Reviewed-on: http://git-master/r/1274477 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
c116522b10
commit
ce6b4bac7a
@@ -1084,6 +1084,9 @@ int gk20a_pm_finalize_poweron(struct device *dev)
|
||||
if (g->ops.xve.available_speeds) {
|
||||
u32 speed;
|
||||
|
||||
if (platform->disable_aspm && g->ops.xve.disable_aspm)
|
||||
g->ops.xve.disable_aspm(g);
|
||||
|
||||
g->ops.xve.sw_init(dev);
|
||||
g->ops.xve.available_speeds(g, &speed);
|
||||
|
||||
|
||||
@@ -744,6 +744,7 @@ struct gpu_ops {
|
||||
void (*available_speeds)(struct gk20a *g, u32 *speed_mask);
|
||||
u32 (*xve_readl)(struct gk20a *g, u32 reg);
|
||||
void (*xve_writel)(struct gk20a *g, u32 reg, u32 val);
|
||||
void (*disable_aspm)(struct gk20a *g);
|
||||
} xve;
|
||||
};
|
||||
|
||||
|
||||
@@ -61,6 +61,9 @@ struct gk20a_platform {
|
||||
/* flag to set sync destroy aggressiveness */
|
||||
bool aggressive_sync_destroy;
|
||||
|
||||
/* set if ASPM should be disabled on boot; only makes sense for PCI */
|
||||
bool disable_aspm;
|
||||
|
||||
/* Should be populated by probe. */
|
||||
struct dentry *debugfs;
|
||||
struct dentry *debugfs_alias;
|
||||
|
||||
Reference in New Issue
Block a user