> the v4l module in XF86Config. If I load v4l, the picture goes > away. I'm perfectly happy not to load v41, but I'm curious as to why > it causes the picture not to work. My guess is that my POS video card > (Rage 128) doesn't support something that's required. Is that correct? No, it's a bug in the r128 driver. It doesn't set memPhysBase correctly. Gerd ---------------------------- cut here -------------------- --- xc/programs/Xserver/hw/xfree86/drivers/ati/r128_driver.c.phys Thu Sep 13 10:16:29 2001 +++ xc/programs/Xserver/hw/xfree86/drivers/ati/r128_driver.c Thu Sep 13 10:19:59 2001 @@ -817,6 +817,7 @@ from = X_PROBED; info->LinearAddr = info->PciInfo->memBase[0] & 0xfc000000; + pScrn->memPhysBase = info->LinearAddr; if (dev->MemBase) { xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Linear address override, using 0x%08x instead of 0x%08x\n", --- xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c.phys Thu Sep 13 10:20:35 2001 +++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c Thu Sep 13 10:21:35 2001 @@ -1213,6 +1213,7 @@ from = X_PROBED; info->LinearAddr = info->PciInfo->memBase[0] & 0xfc000000; + pScrn->memPhysBase = info->LinearAddr; if (dev->MemBase) { xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Linear address override, using 0x%08x instead of 0x%08x\n", --- xc/programs/Xserver/hw/xfree86/drivers/v4l/v4l.c.phys Thu Sep 13 11:00:48 2001 +++ xc/programs/Xserver/hw/xfree86/drivers/v4l/v4l.c Thu Sep 13 11:01:04 2001 @@ -207,6 +207,8 @@ static int V4lOpenDevice(PortPrivPtr pPPriv, ScrnInfoPtr pScrn) { + static int first = 1; + if (-1 == V4L_FD) { V4L_FD = open(V4L_NAME, O_RDWR, 0); @@ -215,7 +217,12 @@ pPPriv->rgb_fbuf.depth = pScrn->bitsPerPixel; pPPriv->rgb_fbuf.bytesperline = pScrn->displayWidth * ((pScrn->bitsPerPixel + 7)/8); pPPriv->rgb_fbuf.base = (pointer)(pScrn->memPhysBase + pScrn->fbOffset); - + if (first) { + first = 0; + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 2, + "v4l: memPhysBase=%p\n", pScrn->memPhysBase); + } + switch (pScrn->bitsPerPixel) { case 16: if (pScrn->weight.green == 5) {