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.
-Chris


_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to