oga@ asked me to do further testing on i845 and get a bug report filed with the intel folks.
The in-tree intel-2.4.3 driver *can* somewhat work on i845 without a xorg.conf, but it's buggy (background drawing problems) when it works, and whether or not it even works is intermittent. Before writing a bug report on the old driver we have in the tree, I tried out oga@'s 2.6.1 as well as 2.7.0 and 2.7.1. And yes, like an idiot, I even tried out the newest 2.7.99.1 because I missed the important bit of documentation stating you need a 1.6+ xserver to even use it. The intel-2.7.1 driver corrects most all the problems on i845 but this version (and the previous 2.7.0) requires particular features in the (linux) kernel, namely support for drmSetMaster() and drmDropMaster() according to a few posts I found. It seems our drm implementation is lacking these new features, but the intel-2.7.1 driver works fine with a bit of patching to get around them. I used the following: http://xorg.freedesktop.org/archive/individual/driver/xf86-video-intel-2.7.1.tar.gz Along with the Makefile.bsd-wrapper from oga@'s 2.6.1 driver. And commented out the drmSetMaster and drmDropMaster stuff (patch below). Starting, stopping, restarting, virtual terminals, and most everything is working with the new intel-2.7.1 driver. The existing caveat of the intel driver (all versions) being greedy about resources (either with an xorg.conf, and especially without), is still problematic. With older drivers, you could back off the from the max supported resolution/refresh, and video would play fine via mplayer. With the new intel-2.7.1 driver, I still haven't been able to make the driver play nice, so I get "BadAlloc (insufficient resources for operation)" errors from mplayer, even when forcing a lower res/refresh via xorg.conf. With luck, I'll figure out the needed configuration magic to get mplayer working again, but it's really just a resource management issue (i.e. the hardware won't support video at it's highest possible res/refresh). If I can't figure out a way around the video issue, I'll file a bug with the intel/freedesktop folks, but for the moment, the new intel-2.7.1 is working far better than intel-2.4.3 we have in the current xeno tree. kind regards, jcr --- ./xf86-video-intel-2.7.1/src/i830_driver.c Tue May 12 17:12:11 2009 +++ /usr/xenocara/driver/xf86-video-intel/src/i830_driver.c Sun May 17 12:37:05 2009 @@ -3466,13 +3466,14 @@ if (pI830->AccelInfoRec) pI830->AccelInfoRec->NeedToSync = FALSE; - +/* #ifdef XF86DRI ret = drmDropMaster(pI830->drmSubFD); if (ret) xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "drmDropMaster failed: %s\n", strerror(ret)); #endif +*/ } /* @@ -3487,14 +3488,14 @@ int i, ret; DPRINTF(PFX, "Enter VT\n"); - +/* #ifdef XF86DRI ret = drmSetMaster(pI830->drmSubFD); if (ret) xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "drmDropMaster failed: %s\n", strerror(ret)); #endif - +*/ /* * Only save state once per server generation since that's what most * drivers do. Could change this to save state at each VT enter.
