Lines Matching +full:max +full:- +full:frequency
1 // SPDX-License-Identifier: MIT
18 pr_err("Could not set min frequency to [%u]\n", freq); in slpc_set_min_freq()
31 pr_err("Could not set maximum frequency [%u]\n", in slpc_set_max_freq()
42 struct intel_gt *gt = &i915->gt; in live_slpc_clamp_min()
43 struct intel_guc_slpc *slpc = >->uc.guc.slpc; in live_slpc_clamp_min()
44 struct intel_rps *rps = >->rps; in live_slpc_clamp_min()
51 if (!intel_uc_uses_guc_slpc(>->uc)) in live_slpc_clamp_min()
55 return -ENOMEM; in live_slpc_clamp_min()
58 pr_err("Could not get SLPC max freq\n"); in live_slpc_clamp_min()
59 return -EIO; in live_slpc_clamp_min()
64 return -EIO; in live_slpc_clamp_min()
68 pr_err("Min/Max are fused to the same value\n"); in live_slpc_clamp_min()
69 return -EINVAL; in live_slpc_clamp_min()
82 /* Go from min to max in 5 steps */ in live_slpc_clamp_min()
83 step = (slpc_max_freq - slpc_min_freq) / NUM_STEPS; in live_slpc_clamp_min()
94 engine->kernel_context, in live_slpc_clamp_min()
106 engine->name); in live_slpc_clamp_min()
109 intel_gt_set_wedged(engine->gt); in live_slpc_clamp_min()
110 err = -EIO; in live_slpc_clamp_min()
115 * requested frequency if necessary. in live_slpc_clamp_min()
122 if (req_freq < (min_freq - FREQUENCY_REQ_UNIT)) { in live_slpc_clamp_min()
124 min_freq - FREQUENCY_REQ_UNIT); in live_slpc_clamp_min()
127 err = -EINVAL; in live_slpc_clamp_min()
139 pr_info("Max actual frequency for %s was %d\n", in live_slpc_clamp_min()
140 engine->name, max_act_freq); in live_slpc_clamp_min()
142 /* Actual frequency should rise above min */ in live_slpc_clamp_min()
145 err = -EINVAL; in live_slpc_clamp_min()
152 /* Restore min/max frequencies */ in live_slpc_clamp_min()
156 if (igt_flush_test(gt->i915)) in live_slpc_clamp_min()
157 err = -EIO; in live_slpc_clamp_min()
169 struct intel_gt *gt = &i915->gt; in live_slpc_clamp_max()
178 slpc = >->uc.guc.slpc; in live_slpc_clamp_max()
179 rps = >->rps; in live_slpc_clamp_max()
181 if (!intel_uc_uses_guc_slpc(>->uc)) in live_slpc_clamp_max()
185 return -ENOMEM; in live_slpc_clamp_max()
188 pr_err("Could not get SLPC max freq\n"); in live_slpc_clamp_max()
189 return -EIO; in live_slpc_clamp_max()
194 return -EIO; in live_slpc_clamp_max()
198 pr_err("Min/Max are fused to the same value\n"); in live_slpc_clamp_max()
199 return -EINVAL; in live_slpc_clamp_max()
213 /* Go from max to min in 5 steps */ in live_slpc_clamp_max()
214 step = (slpc_max_freq - slpc_min_freq) / NUM_STEPS; in live_slpc_clamp_max()
217 max_freq -= step) { in live_slpc_clamp_max()
225 engine->kernel_context, in live_slpc_clamp_max()
237 engine->name); in live_slpc_clamp_max()
240 intel_gt_set_wedged(engine->gt); in live_slpc_clamp_max()
241 err = -EIO; in live_slpc_clamp_max()
256 err = -EINVAL; in live_slpc_clamp_max()
271 pr_info("Max actual frequency for %s was %d\n", in live_slpc_clamp_max()
272 engine->name, max_act_freq); in live_slpc_clamp_max()
274 /* Actual frequency should rise above min */ in live_slpc_clamp_max()
277 err = -EINVAL; in live_slpc_clamp_max()
280 if (igt_flush_test(gt->i915)) { in live_slpc_clamp_max()
281 err = -EIO; in live_slpc_clamp_max()
289 /* Restore min/max freq */ in live_slpc_clamp_max()
307 if (intel_gt_is_wedged(&i915->gt)) in intel_slpc_live_selftests()