Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7d993739 authored by Tvrtko Ursulin's avatar Tvrtko Ursulin
Browse files

drm/i915: Simplify intel_mark_busy/idle



They use dev_priv exclusively so pass it in instead of dev
for smaller source and binary.

Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Link: http://patchwork.freedesktop.org/patch/msgid/1461844620-35360-1-git-send-email-tvrtko.ursulin@linux.intel.com
parent 5a8f97ea
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2662,7 +2662,7 @@ void __i915_add_request(struct drm_i915_gem_request *request,
	queue_delayed_work(dev_priv->wq,
			   &dev_priv->mm.retire_work,
			   round_jiffies_up_relative(HZ));
	intel_mark_busy(dev_priv->dev);
	intel_mark_busy(dev_priv);

	/* Sanity check that the reserved size was large enough. */
	ret = intel_ring_get_tail(ringbuf) - request_start;
@@ -3044,7 +3044,7 @@ i915_gem_idle_work_handler(struct work_struct *work)
	 * Also locking seems to be fubar here, engine->request_list is protected
	 * by dev->struct_mutex. */

	intel_mark_idle(dev);
	intel_mark_idle(dev_priv);

	if (mutex_trylock(&dev->struct_mutex)) {
		for_each_engine(engine, dev_priv)
+5 −9
Original line number Diff line number Diff line
@@ -10802,31 +10802,27 @@ struct drm_display_mode *intel_crtc_mode_get(struct drm_device *dev,
	return mode;
}

void intel_mark_busy(struct drm_device *dev)
void intel_mark_busy(struct drm_i915_private *dev_priv)
{
	struct drm_i915_private *dev_priv = dev->dev_private;

	if (dev_priv->mm.busy)
		return;

	intel_runtime_pm_get(dev_priv);
	i915_update_gfx_val(dev_priv);
	if (INTEL_INFO(dev)->gen >= 6)
	if (INTEL_GEN(dev_priv) >= 6)
		gen6_rps_busy(dev_priv);
	dev_priv->mm.busy = true;
}

void intel_mark_idle(struct drm_device *dev)
void intel_mark_idle(struct drm_i915_private *dev_priv)
{
	struct drm_i915_private *dev_priv = dev->dev_private;

	if (!dev_priv->mm.busy)
		return;

	dev_priv->mm.busy = false;

	if (INTEL_INFO(dev)->gen >= 6)
		gen6_rps_idle(dev->dev_private);
	if (INTEL_GEN(dev_priv) >= 6)
		gen6_rps_idle(dev_priv);

	intel_runtime_pm_put(dev_priv);
}
+2 −2
Original line number Diff line number Diff line
@@ -1115,8 +1115,8 @@ extern const struct drm_plane_funcs intel_plane_funcs;
void intel_init_display_hooks(struct drm_i915_private *dev_priv);
unsigned int intel_rotation_info_size(const struct intel_rotation_info *rot_info);
bool intel_has_pending_fb_unpin(struct drm_device *dev);
void intel_mark_busy(struct drm_device *dev);
void intel_mark_idle(struct drm_device *dev);
void intel_mark_busy(struct drm_i915_private *dev_priv);
void intel_mark_idle(struct drm_i915_private *dev_priv);
void intel_crtc_restore_mode(struct drm_crtc *crtc);
int intel_display_suspend(struct drm_device *dev);
void intel_encoder_destroy(struct drm_encoder *encoder);