> Date: Fri, 2 Mar 2012 21:27:52 -0600 > From: joshua stein <j...@openbsd.org>
Hi Joshua, There is something strange about your diff... > diff --git a/driver/xf86-video-intel/src/intel_driver.c > b/driver/xf86-video-intel/src/intel_driver.c > index 03b1586..8f04695 100644 > --- a/driver/xf86-video-intel/src/intel_driver.c > +++ b/driver/xf86-video-intel/src/intel_driver.c > @@ -1552,7 +1552,7 @@ static Bool I830PreInit(ScrnInfoPtr scrn, int flags) > > if (!intel->use_drm_mode) { > /* console hack, stolen from G80 */ > - if (IS_GEN5(intel)) { > + if (IS_GEN5(intel) || HAS_PCH_SPLIT(intel)) { > if (xf86LoadSubModule(scrn, "int10")) { > intel->int10 = xf86InitInt10(pEnt->index); > if (intel->int10) { > @@ -1779,9 +1779,6 @@ static Bool RestoreHWState(ScrnInfoPtr scrn) > vgaRegPtr vgaReg = &hwp->SavedReg; > int i; > > - if (HAS_PCH_SPLIT(intel)) > - return TRUE; > - Here you remove the bit that skips restoring the saved hardware state on modern Intel GPUs. However, you leave in the bit that skips saving the hardware state on those. That seems wrong. Unfortunately removing that bit as well makes things not working again. I gues we need to figure out what bits of RestoreHWState() are the ones that make restoring textmode using the int10 hack actually work.