[git pull] drm-fixes

From: Dave Airlie
Date: Tue Feb 24 2009 - 23:56:57 EST


Hi Linus,

Please pull the 'drm-fixes' branch from
ssh://master.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git drm-fixes

A bunch of KMS fixes from you and F11 testing. Still waiting on some
resolution to the mtrr vs _wc remaps pain.

Dave.

drivers/gpu/drm/drm_crtc_helper.c | 76 ++++++++++++++++++++++++++++++++--
drivers/gpu/drm/drm_edid.c | 6 +-
drivers/gpu/drm/drm_irq.c | 14 ++++--
drivers/gpu/drm/i915/i915_dma.c | 2 +-
drivers/gpu/drm/i915/i915_gem.c | 2 +-
drivers/gpu/drm/i915/intel_bios.c | 6 +++
drivers/gpu/drm/i915/intel_display.c | 2 +-
include/drm/drm_crtc_helper.h | 1 +
include/drm/drm_edid.h | 4 +-
9 files changed, 97 insertions(+), 16 deletions(-)

commit e08fb4f6d1dc95eff5b3fc1d0412bcb5afcae7f2
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Wed Feb 25 14:52:30 2009 +1000

drm/i915: convert DRM_ERROR to DRM_DEBUG in phys object pwrite path

This snuck in when I wrote phys object support.

Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

commit dd0910b3c71b253c08111110f0399b924a8d5853
Author: Dave Airlie <airlied@xxxxxxxx>
Date: Wed Feb 25 14:49:21 2009 +1000

drm/i915: make hw page ioremap use ioremap_wc

However we still have another issue with ioremap_wc not falling back
properly or somehow doing something else stupid, this probably needs
to be tracked down.

Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

commit d61e7380b402a481ab1fa8027068a24918f701c8
Author: Kyle McMartin <kyle@xxxxxxxxxx>
Date: Tue Feb 24 20:31:53 2009 -0500

drm: edid revision 0 is valid

edid->revision == 0 should be valid (at least, so the error message
indicates. :) and wikipedia seems to indicate that EDID 1.0 existed.

We can dump the entire check, since edid->revision is a u8, so
it can't ever be less than 0.

Marko reports in RH bz#476735 that his monitor claims to be
EDID 1.0, and therefore hits the check and is stuck at 800x600 because
of it.

Reported-by: Marko Ristola <marko.ristola@xxxxxxxxxxx>
Signed-off-by: Kyle McMartin <kyle@xxxxxxxxxx>
Acked-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit b3f5e7329df1a508ac58ebe7509fb7a47b9eab6a
Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Date: Thu Feb 19 14:48:22 2009 +0000

drm: Correct unbalanced drm_vblank_put() during mode setting.

The first time we install a mode, the vblank will be disabled for a pipe
and so drm_vblank_get() in drm_vblank_pre_modeset() will fail. As we
unconditionally call drm_vblank_put() afterwards, the vblank reference
counter becomes unbalanced.

Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Acked-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit 7bec756c74b1a5079d5074144bb77a6b3e7d7783
Author: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Date: Mon Feb 23 16:09:34 2009 -0800

drm: disable encoders before re-routing them

In some cases we may receive a mode config that has a different
CRTC<->encoder map that the current configuration. In that case, we
need to disable any re-routed encoders before setting the mode,
otherwise they may not pick up the new CRTC (if the output types are
incompatible for example).

Tested-by: Kristian Høgsberg <krh@xxxxxxxxxxxxx>
Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit fe56cf45f951b3810313584605c1d8a4f20b33a4
Author: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Date: Mon Feb 23 15:36:41 2009 -0800

drm: Fix ordering of bit fields in EDID structure leading huge vsync values.

Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Reviewed-by: Eric Anholt <eric@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit c8766ac5933d6ee75e7ce379a1eb5ceb451fcb83
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Date: Mon Feb 23 08:44:33 2009 -0800

drm: Fix shifts of EDID vsync offset/width fields.

Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Reviewed-by: Eric Anholt <eric@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit 37df96736bfe6f5fd9a141d62946e1083d73e712
Author: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Date: Mon Feb 23 15:36:42 2009 -0800

drm/i915: handle bogus VBT panel timing

We've seen cases in the wild where the VBT sync data is wrong, so add
some code to fix it up in that case, taking care to make sure that the
total is greater than the sync end.

Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>

commit 7c04d1d97a8d918b7ae2ef478229862b71a65f06
Author: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Date: Mon Feb 23 15:36:40 2009 -0800

drm/i915: remove PLL debugging messages

These are normal; we walk through different values looking for the right
one, so why flood the screen with messages?

Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Reviewed-by: Eric Anholt <eric@xxxxxxxxxx>
Signed-off-by: Dave Airlie <airlied@xxxxxxxx>