summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gp106/xve_gp106.c
diff options
context:
space:
mode:
authorAlex Waterman <alexw@nvidia.com>2016-12-01 14:03:54 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-01-04 18:53:56 -0500
commitd59c7d1b98395bac25c721d0318fe4b32f0b13cd (patch)
treeab34239cb7bb8c6fdd0353ebbac15c13bfaa072b /drivers/gpu/nvgpu/gp106/xve_gp106.c
parentbe42a5bffb1ddc24618a1a52615fbad02abad786 (diff)
gpu: nvgpu: Implement permanent disable_aspm
Implement the permanent disable_aspm() function for XVE on gp106. Bug 200256272 Change-Id: I63338415542381d8a43d746d9d4404a74a5f01cd Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: http://git-master/r/1263273 (cherry picked from commit 7890419f242a50c6d8ec27c3e8eb331823230ed9) Reviewed-on: http://git-master/r/1280309 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp106/xve_gp106.c')
-rw-r--r--drivers/gpu/nvgpu/gp106/xve_gp106.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gp106/xve_gp106.c b/drivers/gpu/nvgpu/gp106/xve_gp106.c
index 23a02fbd..71580e40 100644
--- a/drivers/gpu/nvgpu/gp106/xve_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/xve_gp106.c
@@ -139,6 +139,19 @@ static void set_xve_l1_mask(struct gk20a *g, int status)
139} 139}
140 140
141/** 141/**
142 * Disable ASPM permanently.
143 */
144static void xve_disable_aspm_gp106(struct gk20a *g)
145{
146 u32 xve_priv;
147
148 xve_priv = g->ops.xve.xve_readl(g, xve_priv_xv_r());
149
150 set_xve_l0s_mask(g, true);
151 set_xve_l1_mask(g, true);
152}
153
154/**
142 * When doing the speed change disable power saving features. 155 * When doing the speed change disable power saving features.
143 */ 156 */
144static void disable_aspm_gp106(struct gk20a *g) 157static void disable_aspm_gp106(struct gk20a *g)
@@ -618,6 +631,7 @@ int gp106_init_xve_ops(struct gpu_ops *gops)
618 gops->xve.available_speeds = xve_available_speeds_gp106; 631 gops->xve.available_speeds = xve_available_speeds_gp106;
619 gops->xve.xve_readl = xve_xve_readl_gp106; 632 gops->xve.xve_readl = xve_xve_readl_gp106;
620 gops->xve.xve_writel = xve_xve_writel_gp106; 633 gops->xve.xve_writel = xve_xve_writel_gp106;
634 gops->xve.disable_aspm = xve_disable_aspm_gp106;
621 635
622 return 0; 636 return 0;
623} 637}