intel g45 - outputs detected wrong with KMS
Colin Guthrie
gmane at colin.guthr.ie
Sat Jun 13 06:02:55 PDT 2009
'Twas brillig, and Christoph Schied at 12/06/09 18:30 did gyre and gimble:
> Hi!
>
> xrandr reports not existing connected DVI outputs and is missing
> resoltions for my LVDS when i enable KMS.
>
> i'm using:
> - xf86-video-intel cdbf84f20295c8a78624318aa6fdfff3f5c8ce27
> - xorg-server 1.6.1.901
> - linux 2.6.30
> - libdrm 2.4.11
> - mesa 7.4.2
>
> As you can see in the attached xrandr output, I can only set 1280x800
> for my LVDS, without KMS I can use lower resolution as well.
>
> I also cant figure out how to disable vsync for opengl applications, I
> disabled it with driconf but it's still enabled.
>
This message from Keith on the intel-gfx list probably explains it:
'Twas brillig, and Keith Packard at 11/06/09 22:48 did gyre and gimble:
> On Thu, 2009-06-11 at 12:42 +0200, Adam Lantos wrote:
>
>> When starting X with VGA _unplugged_, KMS enables the VGA connector
>> and xrandr extendes my desktop.
>
> 2.6.30 is missing a patch that makes load-detect work.
>
> (It's in Eric's tree, commit 03d6069912babc07a3da20e715dd6a5dc8f0f867):
>
> commit 03d6069912babc07a3da20e715dd6a5dc8f0f867
> Author: Keith Packard <keithp at keithp.com>
> Date: Fri Jun 5 18:19:56 2009 -0700
>
> drm/i915: Hook connector to encoder during load detection (fixes
tv/vga detect)
>
> With the DRM-driven DPMS code, encoders are considered idle unless a
> connector is hooked to them, so mode setting is skipped. This
makes load
> detection fail as none of the hardware is enabled.
>
> Signed-off-by: Keith Packard <keithp at keithp.com>
> Signed-off-by: Eric Anholt <eric at anholt.net>
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c
b/drivers/gpu/drm/i915/intel_display.c
> index a87eeff..b32a51f 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -2136,6 +2136,7 @@ struct drm_crtc
*intel_get_load_detect_pipe(struct intel_output *intel_output,
> }
>
> encoder->crtc = crtc;
> + intel_output->base.encoder = encoder;
> intel_output->load_detect_temp = true;
>
> intel_crtc = to_intel_crtc(crtc);
> @@ -2171,6 +2172,7 @@ void intel_release_load_detect_pipe(struct
intel_output *intel_output, int dpms_
>
> if (intel_output->load_detect_temp) {
> encoder->crtc = NULL;
> + intel_output->base.encoder = NULL;
> intel_output->load_detect_temp = false;
> crtc->enabled = drm_helper_crtc_in_use(crtc);
> drm_helper_disable_unused_functions(dev);
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/
Day Job:
Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
Mandriva Linux Contributor [http://www.mandriva.com/]
PulseAudio Hacker [http://www.pulseaudio.org/]
Trac Hacker [http://trac.edgewall.org/]
More information about the xorg
mailing list