[Intel-gfx] drm/i915/slpc: Update freq min/max softlimits
Chris Wilson
chris at chris-wilson.co.uk
Sun Aug 21 08:39:54 UTC 2016
On Sun, Aug 21, 2016 at 11:39:22AM +0530, Kamble, Sagar A wrote:
>
>
> On 8/20/2016 1:32 PM, Chris Wilson wrote:
> >On Sat, Aug 20, 2016 at 10:39:25AM +0530, Sagar Arun Kamble wrote:
> >>+ obj = dev_priv->guc.slpc.vma->obj;
> >>+ if (obj) {
> >OOPS.
> Fixed in next series.
> >
> >>+ intel_slpc_query_task_state(dev_priv);
> >>+
> >>+ page = i915_gem_object_get_page(obj, 0);
> >>+ if (page)
> >>+ pv = kmap_atomic(page);
> >>+ }
> >>+
> >>+ if (pv) {
> >>+ data = *(struct slpc_shared_data *) pv;
> >>+ kunmap_atomic(pv);
> >Can kmap_atomic return zero?
> Fixed in next series.
> >
> >>+
> >>+ /*
> >>+ * TODO: Define separate variables for slice and unslice
> >>+ * frequencies for driver state variable.
> >>+ */
> >>+ dev_priv->rps.max_freq_softlimit =
> >>+ data.task_state_data.freq_unslice_max;
> >>+ dev_priv->rps.min_freq_softlimit =
> >>+ data.task_state_data.freq_unslice_min;
> >These are user values, you do not get to arbitrarily rewrite them.
> >
> >You control dev_priv->rps.[min|max]_freq.
> With SLPC, GuC firmware SLPC S/W requested frequency be operated in
> the softlimits analogous to
> Host softlimits. Limits might be different with SLPC and can be
> controlled through regular interfaces.
> dev_priv->rps.[min|max]_freq are HW Min/Max.
Exactly. The soft limits are *only* set by the user. They are not to
modified by the driver. (The caveat would be a dynamic update of the hw
range, but that too should never be required.)
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list