lkml.org 
[lkml]   [2012]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: Bogus video resolution in Linux 3.5-rc4
Date
Am 25.06.2012 um 17:53 schrieb Takashi Iwai:

> Looking at the EDID data, the problem is likely that your monitor
> doesn't give the proper preferred mode.
> What does xrandr output show?

,----
| Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 8192 x 8192
| DVI-I-1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm
| 1280x1024 75.0* 60.0
| 1024x768 75.1 75.0 70.1 60.0
| 832x624 74.6
| 800x600 72.2 75.0 60.3 56.2
| 640x480 72.8 75.0 66.7 60.0 59.9
| VGA-1 disconnected (normal left inverted right x axis y axis)
`----

I should note that the monitor is actually connected via VGA, not DVI.
This seems to be similar to https://bugs.freedesktop.org/50830, but
since it never caused any real problems for me, I didn't bother.

> And, does the patch below help?

Somewhat: at least I get 1280x1024 again, but at 60 rather than 75 Hz.
The xrandr command shows various bogus modes.

,----
| Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 8192 x 8192
| DVI-I-1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm
| 1280x1024 60.0*+ 75.0
| 1680x945 60.0
| 1400x1050 60.0
| 1600x900 60.0
| 1440x900 75.0 59.9
| 1280x960 60.0
| 1366x768 60.0
| 1360x768 60.0
| 1280x800 74.9 59.8
| 1152x864 75.0
| 1280x768 74.9 59.9
| 1024x768 75.1 75.0 70.1 60.0
| 1024x576 60.0
| 832x624 74.6
| 800x600 72.2 75.0 60.3 56.2
| 848x480 60.0
| 640x480 75.0 72.8 72.8 66.7 60.0 59.9
| VGA-1 disconnected (normal left inverted right x axis y axis)
`----

Cheers,
Sven


> ---
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index 5873e48..dab8580 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -116,6 +116,7 @@ static struct edid_quirk {
>
> /* Proview AY765C */
> { "PTS", 765, EDID_QUIRK_FIRST_DETAILED_PREFERRED },
> + { "PTS", 793, EDID_QUIRK_FIRST_DETAILED_PREFERRED },
>
> /* Samsung SyncMaster 205BW. Note: irony */
> { "SAM", 541, EDID_QUIRK_DETAILED_SYNC_PP },
> @@ -1404,7 +1405,9 @@ do_detailed_mode(struct detailed_timing *timing, void *c)
> if (!newmode)
> return;
>
> - if (closure->preferred)
> + if (closure->preferred ||
> + ((closure->quirks & EDID_QUIRK_FIRST_DETAILED_PREFERRED) &&
> + !closure->modes))
> newmode->type |= DRM_MODE_TYPE_PREFERRED;
>
> drm_mode_probed_add(closure->connector, newmode);


\
 
 \ /
  Last update: 2012-06-25 20:21    [W:2.680 / U:0.388 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site