diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c index fceed5e9..687147ed 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c | |||
@@ -94,7 +94,19 @@ static ssize_t blcg_enable_store(struct device *device, | |||
94 | g->blcg_enabled = false; | 94 | g->blcg_enabled = false; |
95 | 95 | ||
96 | gk20a_busy(g->dev); | 96 | gk20a_busy(g->dev); |
97 | if (g->ops.clock_gating.blcg_bus_load_gating_prod) | ||
98 | g->ops.clock_gating.blcg_bus_load_gating_prod(g, g->blcg_enabled); | ||
99 | if (g->ops.clock_gating.blcg_ctxsw_firmware_load_gating_prod) | ||
100 | g->ops.clock_gating.blcg_ctxsw_firmware_load_gating_prod(g, g->blcg_enabled); | ||
101 | if (g->ops.clock_gating.blcg_fb_load_gating_prod) | ||
102 | g->ops.clock_gating.blcg_fb_load_gating_prod(g, g->blcg_enabled); | ||
103 | if (g->ops.clock_gating.blcg_fifo_load_gating_prod) | ||
104 | g->ops.clock_gating.blcg_fifo_load_gating_prod(g, g->blcg_enabled); | ||
97 | g->ops.clock_gating.blcg_gr_load_gating_prod(g, g->blcg_enabled); | 105 | g->ops.clock_gating.blcg_gr_load_gating_prod(g, g->blcg_enabled); |
106 | if (g->ops.clock_gating.blcg_ltc_load_gating_prod) | ||
107 | g->ops.clock_gating.blcg_ltc_load_gating_prod(g, g->blcg_enabled); | ||
108 | if (g->ops.clock_gating.blcg_pmu_load_gating_prod) | ||
109 | g->ops.clock_gating.blcg_pmu_load_gating_prod(g, g->blcg_enabled); | ||
98 | gk20a_idle(g->dev); | 110 | gk20a_idle(g->dev); |
99 | 111 | ||
100 | dev_info(device, "BLCG is %s.\n", g->blcg_enabled ? "enabled" : | 112 | dev_info(device, "BLCG is %s.\n", g->blcg_enabled ? "enabled" : |
@@ -136,8 +148,28 @@ static ssize_t slcg_enable_store(struct device *device, | |||
136 | * it is added to init, we should add it here too. | 148 | * it is added to init, we should add it here too. |
137 | */ | 149 | */ |
138 | gk20a_busy(g->dev); | 150 | gk20a_busy(g->dev); |
151 | if (g->ops.clock_gating.slcg_bus_load_gating_prod) | ||
152 | g->ops.clock_gating.slcg_bus_load_gating_prod(g, g->slcg_enabled); | ||
153 | if (g->ops.clock_gating.slcg_ce2_load_gating_prod) | ||
154 | g->ops.clock_gating.slcg_ce2_load_gating_prod(g, g->slcg_enabled); | ||
155 | if (g->ops.clock_gating.slcg_chiplet_load_gating_prod) | ||
156 | g->ops.clock_gating.slcg_chiplet_load_gating_prod(g, g->slcg_enabled); | ||
157 | if (g->ops.clock_gating.slcg_ctxsw_firmware_load_gating_prod) | ||
158 | g->ops.clock_gating.slcg_ctxsw_firmware_load_gating_prod(g, g->slcg_enabled); | ||
159 | if (g->ops.clock_gating.slcg_fb_load_gating_prod) | ||
160 | g->ops.clock_gating.slcg_fb_load_gating_prod(g, g->slcg_enabled); | ||
161 | if (g->ops.clock_gating.slcg_fifo_load_gating_prod) | ||
162 | g->ops.clock_gating.slcg_fifo_load_gating_prod(g, g->slcg_enabled); | ||
139 | g->ops.clock_gating.slcg_gr_load_gating_prod(g, g->slcg_enabled); | 163 | g->ops.clock_gating.slcg_gr_load_gating_prod(g, g->slcg_enabled); |
164 | if (g->ops.clock_gating.slcg_ltc_load_gating_prod) | ||
165 | g->ops.clock_gating.slcg_ltc_load_gating_prod(g, g->slcg_enabled); | ||
140 | g->ops.clock_gating.slcg_perf_load_gating_prod(g, g->slcg_enabled); | 166 | g->ops.clock_gating.slcg_perf_load_gating_prod(g, g->slcg_enabled); |
167 | if (g->ops.clock_gating.slcg_priring_load_gating_prod) | ||
168 | g->ops.clock_gating.slcg_priring_load_gating_prod(g, g->slcg_enabled); | ||
169 | if (g->ops.clock_gating.slcg_pmu_load_gating_prod) | ||
170 | g->ops.clock_gating.slcg_pmu_load_gating_prod(g, g->slcg_enabled); | ||
171 | if (g->ops.clock_gating.slcg_xbar_load_gating_prod) | ||
172 | g->ops.clock_gating.slcg_xbar_load_gating_prod(g, g->slcg_enabled); | ||
141 | gk20a_idle(g->dev); | 173 | gk20a_idle(g->dev); |
142 | 174 | ||
143 | dev_info(device, "SLCG is %s.\n", g->slcg_enabled ? "enabled" : | 175 | dev_info(device, "SLCG is %s.\n", g->slcg_enabled ? "enabled" : |