diff options
author | Adam Jackson <ajax@redhat.com> | 2012-04-13 22:33:30 +0200 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-04-20 13:56:56 +0200 |
commit | f8b46a05e6ced02e75cd782c015a57e67d5c644d (patch) | |
tree | 64706f9c431c47023455374dc319cf4068702ccf /drivers/gpu/drm/drm_edid.c | |
parent | drm/edid: Document drm_mode_find_dmt (diff) | |
download | linux-f8b46a05e6ced02e75cd782c015a57e67d5c644d.tar.xz linux-f8b46a05e6ced02e75cd782c015a57e67d5c644d.zip |
drm/edid: Rewrite drm_mode_find_dmt search loop
No functional change, but will make an upcoming change clearer.
Signed-off-by: Adam Jackson <ajax@redhat.com>
Tested-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/drm_edid.c')
-rw-r--r-- | drivers/gpu/drm/drm_edid.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index a75aefef528e..9c8fa8860f6b 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -499,20 +499,21 @@ static void edid_fixup_preferred(struct drm_connector *connector, struct drm_display_mode *drm_mode_find_dmt(struct drm_device *dev, int hsize, int vsize, int fresh) { - struct drm_display_mode *mode = NULL; int i; for (i = 0; i < drm_num_dmt_modes; i++) { const struct drm_display_mode *ptr = &drm_dmt_modes[i]; - if (hsize == ptr->hdisplay && - vsize == ptr->vdisplay && - fresh == drm_mode_vrefresh(ptr)) { - /* get the expected default mode */ - mode = drm_mode_duplicate(dev, ptr); - break; - } + if (hsize != ptr->hdisplay) + continue; + if (vsize != ptr->vdisplay) + continue; + if (fresh != drm_mode_vrefresh(ptr)) + continue; + + return drm_mode_duplicate(dev, ptr); } - return mode; + + return NULL; } EXPORT_SYMBOL(drm_mode_find_dmt); |