summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2012-07-02 12:45:45 +0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-09-06 09:56:35 +0400
commit6d832d189bb671cfa2c681d97625bab2d6463c66 (patch)
treea413389740692f096e0995a968459f7347879077
parent4f660f49b9d68e53d85f5ce4f5bbf167257e7fc2 (diff)
downloadlinux-6d832d189bb671cfa2c681d97625bab2d6463c66.tar.xz
drm/i915: inline intel_best_encoder
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>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 5dbe03ae4e4d..9d5c575385b2 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -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)