From 3e9ec78b4f54defb9986e11e6f2ac3475755849d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 20 Mar 2007 23:58:48 -0700 Subject: [PATCH] Set the panel fitter to the right pipe on Crestline. --- src/i810_reg.h | 2 ++ src/i830_lvds.c | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/i810_reg.h b/src/i810_reg.h index e4bebafa..eaa8bb52 100644 --- a/src/i810_reg.h +++ b/src/i810_reg.h @@ -830,6 +830,8 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define PFIT_CONTROL 0x61230 # define PFIT_ENABLE (1 << 31) +# define PFIT_PIPE_MASK (3 << 29) +# define PFIT_PIPE_SHIFT 29 # define VERT_INTERP_DISABLE (0 << 10) # define VERT_INTERP_BILINEAR (1 << 10) # define VERT_INTERP_MASK (3 << 10) diff --git a/src/i830_lvds.c b/src/i830_lvds.c index 7e5ce67a..2ad52a75 100644 --- a/src/i830_lvds.c +++ b/src/i830_lvds.c @@ -216,6 +216,7 @@ i830_lvds_mode_set(xf86OutputPtr output, DisplayModePtr mode, { ScrnInfoPtr pScrn = output->scrn; I830Ptr pI830 = I830PTR(pScrn); + I830CrtcPrivatePtr intel_crtc = output->crtc->driver_private; CARD32 pfit_control; /* The LVDS pin pair will already have been turned on in the @@ -230,9 +231,12 @@ i830_lvds_mode_set(xf86OutputPtr output, DisplayModePtr mode, VERT_AUTO_SCALE | HORIZ_AUTO_SCALE | VERT_INTERP_BILINEAR | HORIZ_INTERP_BILINEAR); - if (!IS_I965G(pI830)) + if (!IS_I965G(pI830)) { if (pI830->panel_wants_dither) pfit_control |= PANEL_8TO6_DITHER_ENABLE; + } else { + pfit_control |= intel_crtc->pipe << PFIT_PIPE_SHIFT; + } OUTREG(PFIT_CONTROL, pfit_control); }