diff --git a/src/i830_display.c b/src/i830_display.c index 6176447..ebc03b4 100644 --- a/src/i830_display.c +++ b/src/i830_display.c @@ -1103,10 +1103,10 @@ i830_update_dsparb(ScrnInfoPtr pScrn) { xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); I830Ptr pI830 = I830PTR(pScrn); - uint32_t dspacntr, dspbcntr; + uint32_t dspacntr, dspbcntr, fw1, fw2; int total_hdisplay = 0, planea_hdisplay = 0, planeb_hdisplay = 0; int fifo_entries = 0, planea_entries = 0, planeb_entries = 0, i; - +#if 0 dspacntr = INREG(DSPACNTR); dspbcntr = INREG(DSPBCNTR); @@ -1159,10 +1159,17 @@ i830_update_dsparb(ScrnInfoPtr pScrn) (planea_entries << DSPARB_AEND_SHIFT)); else OUTREG(DSPARB, planea_entries << DSPARB_AEND_SHIFT); - +#endif + /* Magic FIFO watermark values for 965+ hw */ + fw1 = INREG(DSPFW1) & 0xff800000; + fw2 = INREG(DSPFW2) & 0xffffc000; + OUTREG(DSPFW1, fw1 | ((8 << 16) | (8 << 8) | 8)); + OUTREG(DSPFW2, fw2 | ((8 << 8) | 8)); +#if 0 OUTREG(DSPACNTR, dspacntr); OUTREG(DSPBCNTR, dspbcntr); i830WaitForVblank(pScrn); +#endif } /**