]> git.karo-electronics.de Git - linux-beck.git/commitdiff
drm/i915: inline intel_best_encoder
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 2 Jul 2012 08:45:45 +0000 (10:45 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 6 Sep 2012 05:56:35 +0000 (07:56 +0200)
Also kill the error-path, we have a fixed connector->encoder mapping.

Unfortunately we can't rip out all the ->best_encoder callbacks, these
are all still used by the fb_helper. Neat helper layering violation there.

Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c

index 5dbe03ae4e4de695b33a8e6e4c36675c0c2335d6..9d5c575385b26ac49b97491ae458511789f224ee 100644 (file)
@@ -6644,7 +6644,7 @@ static int intel_crtc_set_config(struct drm_mode_set *set)
        bool mode_changed = false; /* if true do a full mode set */
        bool fb_changed = false; /* if true and !mode_changed just do a flip */
        struct drm_connector *save_connectors, *connector;
-       int count = 0, ro, fail = 0;
+       int count = 0, ro;
        struct drm_mode_set save_set;
        int ret;
        int i;
@@ -6660,7 +6660,6 @@ static int intel_crtc_set_config(struct drm_mode_set *set)
        if (!set->crtc->helper_private)
                return -EINVAL;
 
-
        if (!set->mode)
                set->fb = NULL;
 
@@ -6753,17 +6752,11 @@ static int intel_crtc_set_config(struct drm_mode_set *set)
        /* a) traverse passed in connector list and get encoders for them */
        count = 0;
        list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
-               struct drm_connector_helper_funcs *connector_funcs =
-                       connector->helper_private;
                new_encoder = connector->encoder;
                for (ro = 0; ro < set->num_connectors; ro++) {
                        if (set->connectors[ro] == connector) {
-                               new_encoder = connector_funcs->best_encoder(connector);
-                               /* if we can't get an encoder for a connector
-                                  we are setting now - then fail */
-                               if (new_encoder == NULL)
-                                       /* don't break so fail path works correct */
-                                       fail = 1;
+                               new_encoder =
+                                       &intel_attached_encoder(connector)->base;
                                break;
                        }
                }
@@ -6780,11 +6773,6 @@ static int intel_crtc_set_config(struct drm_mode_set *set)
                }
        }
 
-       if (fail) {
-               ret = -EINVAL;
-               goto fail;
-       }
-
        count = 0;
        list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
                if (!connector->encoder)