diff options
Diffstat (limited to 'linux-core')
| -rw-r--r-- | linux-core/drm_modes.c | 11 | 
1 files changed, 9 insertions, 2 deletions
| diff --git a/linux-core/drm_modes.c b/linux-core/drm_modes.c index bf0d85ee..3ed427fb 100644 --- a/linux-core/drm_modes.c +++ b/linux-core/drm_modes.c @@ -276,8 +276,15 @@ EXPORT_SYMBOL(drm_mode_duplicate);   */  bool drm_mode_equal(struct drm_display_mode *mode1, struct drm_display_mode *mode2)  { -	if (mode1->clock == mode2->clock && -	    mode1->hdisplay == mode2->hdisplay && +	/* do clock check convert to PICOS so fb modes get matched +	 * the same */ +	if (mode1->clock && mode2->clock) { +		if (KHZ2PICOS(mode1->clock) != KHZ2PICOS(mode2->clock)) +			return false; +	} else if (mode1->clock != mode2->clock) +		return false; + +	if (mode1->hdisplay == mode2->hdisplay &&  	    mode1->hsync_start == mode2->hsync_start &&  	    mode1->hsync_end == mode2->hsync_end &&  	    mode1->htotal == mode2->htotal && | 
