drm/i915: Use for_each_crtc() when iterating through the CRTCs
authorDamien Lespiau <damien.lespiau@intel.com>
Tue, 13 May 2014 22:32:24 +0000 (23:32 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 13 May 2014 22:38:46 +0000 (00:38 +0200)
Patch done using the following semantic patch (thanks Daniel for the
help!)

  @@
  iterator name list_for_each_entry;
  iterator name for_each_crtc;
  struct drm_crtc * crtc;
  struct drm_device * dev;
  @@
  -list_for_each_entry(crtc,&dev->mode_config.crtc_list, head) {
  +for_each_crtc(dev,crtc) {
   ...
  }

Followed by a couple of fixups by hand (that spatch doesn't match the
cases where list_for_each_entry() is not followed by a set of '{', '}',
but I couldn't figure out a way to leave the '{' out of the iterator
match).

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_fbdev.c
drivers/gpu/drm/i915/intel_pm.c

index 6868bc0eabd34336fc19095bf568d4bd9e27735a..b948c7110be89c2319592a968650120b90a198e0 100644 (file)
@@ -486,7 +486,7 @@ static int i915_drm_freeze(struct drm_device *dev)
                 * for _thaw.
                 */
                mutex_lock(&dev->mode_config.mutex);
-               list_for_each_entry(crtc, &dev->mode_config.crtc_list, head)
+               for_each_crtc(dev, crtc)
                        dev_priv->display.crtc_disable(crtc);
                mutex_unlock(&dev->mode_config.mutex);
 
index f5327d13837688eca256b08887ea1d4f310f1a1a..9914ab235b7bac488838c06743d153ac88d7c650 100644 (file)
@@ -2312,7 +2312,7 @@ static void intel_find_plane_obj(struct intel_crtc *intel_crtc,
         * Failed to alloc the obj, check to see if we should share
         * an fb with another CRTC instead
         */
-       list_for_each_entry(c, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, c) {
                i = to_intel_crtc(c);
 
                if (c == &intel_crtc->base)
@@ -2540,7 +2540,7 @@ void intel_display_handle_reset(struct drm_device *dev)
         * pending_flip_queue really got woken up.
         */
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
                enum plane plane = intel_crtc->plane;
 
@@ -2548,7 +2548,7 @@ void intel_display_handle_reset(struct drm_device *dev)
                intel_finish_page_flip_plane(dev, plane);
        }
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
 
                mutex_lock(&crtc->mutex);
@@ -8298,7 +8298,7 @@ bool intel_get_load_detect_pipe(struct drm_connector *connector,
        }
 
        /* Find an unused one (if possible) */
-       list_for_each_entry(possible_crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, possible_crtc) {
                i++;
                if (!(encoder->possible_crtcs & (1 << i)))
                        continue;
@@ -8689,7 +8689,7 @@ void intel_mark_idle(struct drm_device *dev)
        if (!i915.powersave)
                goto out;
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                if (!crtc->primary->fb)
                        continue;
 
@@ -8712,7 +8712,7 @@ void intel_mark_fb_busy(struct drm_i915_gem_object *obj,
        if (!i915.powersave)
                return;
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                if (!crtc->primary->fb)
                        continue;
 
@@ -10336,7 +10336,7 @@ static int intel_set_config_save_state(struct drm_device *dev,
         * restored, not the drivers personal bookkeeping.
         */
        count = 0;
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                config->save_crtc_enabled[count++] = crtc->enabled;
        }
 
@@ -12045,7 +12045,7 @@ void intel_modeset_gem_init(struct drm_device *dev)
         * for this.
         */
        mutex_lock(&dev->struct_mutex);
-       list_for_each_entry(c, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, c) {
                if (!c->primary->fb)
                        continue;
 
@@ -12091,7 +12091,7 @@ void intel_modeset_cleanup(struct drm_device *dev)
 
        intel_unregister_dsm_handler();
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                /* Skip inactive CRTCs */
                if (!crtc->primary->fb)
                        continue;
index fce4a0d93c0b19b7d51f4d2578331b13aef51399..634f0b07ae6411d076a6f7d2e2d0e21b0b8e22ed 100644 (file)
@@ -488,7 +488,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
                return false;
 
        /* Find the largest fb */
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                intel_crtc = to_intel_crtc(crtc);
 
                if (!intel_crtc->active || !crtc->primary->fb) {
@@ -512,7 +512,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
        }
 
        /* Now make sure all the pipes will fit into it */
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                unsigned int cur_size;
 
                intel_crtc = to_intel_crtc(crtc);
@@ -577,7 +577,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
        drm_framebuffer_reference(&ifbdev->fb->base);
 
        /* Final pass to check if any active pipes don't have fbs */
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                intel_crtc = to_intel_crtc(crtc);
 
                if (!intel_crtc->active)
index cc8bbd1e62f9ed01346b0312dadcd1e8522c4a93..a1d96875d9968611ac0e626355758b4834e972cb 100644 (file)
@@ -487,7 +487,7 @@ void intel_update_fbc(struct drm_device *dev)
         *   - new fb is too large to fit in compressed buffer
         *   - going to an unsupported config (interlace, pixel multiply, etc.)
         */
-       list_for_each_entry(tmp_crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, tmp_crtc) {
                if (intel_crtc_active(tmp_crtc) &&
                    to_intel_crtc(tmp_crtc)->primary_enabled) {
                        if (crtc) {
@@ -1010,7 +1010,7 @@ static struct drm_crtc *single_enabled_crtc(struct drm_device *dev)
 {
        struct drm_crtc *crtc, *enabled = NULL;
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
+       for_each_crtc(dev, crtc) {
                if (intel_crtc_active(crtc)) {
                        if (enabled)
                                return NULL;
@@ -2747,7 +2747,7 @@ void ilk_wm_get_hw_state(struct drm_device *dev)
        struct ilk_wm_values *hw = &dev_priv->wm.hw;
        struct drm_crtc *crtc;
 
-       list_for_each_entry(crtc, &dev->mode_config.crtc_list, head)
+       for_each_crtc(dev, crtc)
                ilk_pipe_wm_get_hw_state(crtc);
 
        hw->wm_lp[0] = I915_READ(WM1_LP_ILK);