Skip to content

Commit

Permalink
drm/i915: Simplify intel_mark_busy/idle
Browse files Browse the repository at this point in the history
They use dev_priv exclusively so pass it in instead of dev
for smaller source and binary.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: http://patchwork.freedesktop.org/patch/msgid/1461844620-35360-1-git-send-email-tvrtko.ursulin@linux.intel.com
  • Loading branch information
Tvrtko Ursulin committed May 4, 2016
1 parent 5a8f97e commit 7d99373
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 13 deletions.
4 changes: 2 additions & 2 deletions drivers/gpu/drm/i915/i915_gem.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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)
Expand Down
14 changes: 5 additions & 9 deletions drivers/gpu/drm/i915/intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
}
Expand Down
4 changes: 2 additions & 2 deletions drivers/gpu/drm/i915/intel_drv.h
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down

0 comments on commit 7d99373

Please sign in to comment.