Lines Matching refs:scrn
153 I810GetRec(ScrnInfoPtr scrn)
155 if (((uintptr_t)scrn->driverPrivate & 3) == 0)
158 scrn->driverPrivate = xnfcalloc(sizeof(I810Rec), 1);
163 I810FreeRec(ScrnInfoPtr scrn)
165 if (!scrn)
167 if (!scrn->driverPrivate)
169 free(scrn->driverPrivate);
170 scrn->driverPrivate = NULL;
189 I810ProbeDDC(ScrnInfoPtr scrn, int index)
193 if (xf86LoadSubModule(scrn, "vbe")) {
201 I810DoDDC(ScrnInfoPtr scrn, int index)
205 I810Ptr pI810 = I810PTR(scrn);
212 if (xf86LoadSubModule(scrn, "vbe") && (pVbe = VBEInit(NULL, index))) {
215 xf86SetDDCproperties(scrn, MonInfo);
218 xf86DrvMsg(scrn->scrnIndex, X_INFO,
233 I810PreInit(ScrnInfoPtr scrn, int flags)
244 if (scrn->numEntities != 1)
248 if (!I810GetRec(scrn))
251 pI810 = I810PTR(scrn);
253 pI810->pEnt = xf86GetEntityInfo(scrn->entityList[0]);
258 I810ProbeDDC(scrn, pI810->pEnt->index);
263 if (!xf86LoadSubModule(scrn, "vgahw"))
267 if (!vgaHWGetHWRec(scrn))
272 /* Set scrn->monitor */
273 scrn->monitor = scrn->confScreen->monitor;
276 if (!xf86SetDepthBpp(scrn, 16, 0, 16, flags24)) {
279 switch (scrn->depth) {
286 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
288 scrn->depth);
292 xf86PrintDepthBpp(scrn);
294 switch (scrn->bitsPerPixel) {
300 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
302 scrn->bitsPerPixel);
306 if (!xf86SetWeight(scrn, defaultWeight, defaultWeight))
309 if (!xf86SetDefaultVisual(scrn, -1))
313 scrn->progClock = TRUE;
315 pI810->cpp = scrn->bitsPerPixel / 8;
318 xf86CollectOptions(scrn, NULL);
322 xf86ProcessOptions(scrn->scrnIndex, scrn->options, pI810->Options);
324 scrn->rgbBits = 8;
326 scrn->rgbBits = 6;
335 scrn->bitsPerPixel > 8) {
345 if (!pI810->noAccel && !xf86LoadSubModule(scrn, "xaa"))
353 if (scrn->depth!=16) {
354 xf86DrvMsg(scrn->scrnIndex, X_WARNING, "DRI is disabled because it "
365 I810DoDDC(scrn, pI810->pEnt->index);
367 intel_detect_chipset(scrn, NULL);
370 xf86DrvMsg(scrn->scrnIndex, X_PROBED, "Linear framebuffer at 0x%lX\n",
374 xf86DrvMsg(scrn->scrnIndex, X_PROBED, "IO registers at addr 0x%lX\n",
381 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
408 mem = I810CheckAvailableMemory(scrn);
410 scrn->videoRam = 8192;
412 scrn->videoRam = 16384; /* < 192 MB */
414 scrn->videoRam = 24576;
419 scrn->videoRam = pI810->pEnt->device->videoRam;
423 if (mem > 0 && mem < scrn->videoRam) {
424 xf86DrvMsg(scrn->scrnIndex, X_WARNING, "%dk of memory was requested,"
426 scrn->videoRam, mem);
429 xf86DrvMsg(scrn->scrnIndex, X_INFO,
431 scrn->videoRam = 4096;
433 xf86DrvMsg(scrn->scrnIndex, X_ERROR, "Less than 6MB of AGP memory"
435 I810FreeRec(scrn);
440 xf86DrvMsg(scrn->scrnIndex, from,
441 "Will alloc AGP framebuffer: %d kByte\n", scrn->videoRam);
468 if (!xf86SetGamma(scrn, zeros)) {
475 switch (scrn->bitsPerPixel) {
492 switch (scrn->bitsPerPixel) {
515 i = xf86ValidateModes(scrn, scrn->monitor->Modes,
516 scrn->display->modes, clockRanges,
518 0, 320, 1600, 64 * scrn->bitsPerPixel,
520 i810_pitches, 0, 0, 64 * scrn->bitsPerPixel,
523 scrn->display->virtualX, scrn->display->virtualY,
524 scrn->videoRam * 1024, LOOKUP_BEST_REFRESH);
527 I810FreeRec(scrn);
531 xf86PruneDriverModes(scrn);
533 if (!i || !scrn->modes) {
534 xf86DrvMsg(scrn->scrnIndex, X_ERROR, "No valid modes found\n");
535 I810FreeRec(scrn);
539 xf86SetCrtcForModes(scrn, INTERLACE_HALVE_V);
541 scrn->currentMode = scrn->modes;
543 xf86PrintModes(scrn);
545 xf86SetDpi(scrn, 0, 0);
547 if (!xf86LoadSubModule(scrn, "fb")) {
548 I810FreeRec(scrn);
553 if (!xf86LoadSubModule(scrn, "ramdac")) {
554 I810FreeRec(scrn);
561 xf86DrvMsg(scrn->scrnIndex, X_CONFIG,
564 pI810->colorKey = (1 << scrn->offset.red) |
565 (1 << scrn->offset.green) |
566 (((scrn->mask.blue >> scrn->offset.blue) -
567 1) << scrn->offset.blue);
578 if (!xf86LoadSubModule(scrn, "shadowfb")) {
580 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
585 xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "page flipping %s\n",
593 xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "%d XvMC Surfaces Requested.\n",
596 xf86DrvMsg(scrn->scrnIndex, X_PROBED,
601 xf86DrvMsg(scrn->scrnIndex, X_PROBED,
606 xf86DrvMsg(scrn->scrnIndex, X_INFO,
614 xf86LoadSubModule(scrn, "dri");
622 I810MapMMIO(ScrnInfoPtr scrn)
624 I810Ptr pI810 = I810PTR(scrn);
635 xf86DrvMsg (scrn->scrnIndex, X_ERROR,
644 I810MapMem(ScrnInfoPtr scrn)
646 I810Ptr pI810 = I810PTR(scrn);
650 if (!I810MapMMIO(scrn))
660 xf86DrvMsg (scrn->scrnIndex, X_ERROR,
672 I810UnmapMMIO(ScrnInfoPtr scrn)
674 I810Ptr pI810 = I810PTR(scrn);
681 I810UnmapMem(ScrnInfoPtr scrn)
683 I810Ptr pI810 = I810PTR(scrn);
687 I810UnmapMMIO(scrn);
694 I810PrintErrorState(ScrnInfoPtr scrn)
696 I810Ptr pI810 = I810PTR(scrn);
730 DoSave(ScrnInfoPtr scrn, vgaRegPtr vgaReg, I810RegPtr i810Reg,
737 pI810 = I810PTR(scrn);
738 hwp = VGAHWPTR(scrn);
745 vgaHWSave(scrn, vgaReg, VGA_SR_MODE | VGA_SR_FONTS | VGA_SR_CMAP);
747 vgaHWSave(scrn, vgaReg, VGA_SR_MODE | VGA_SR_CMAP);
785 I810PrintErrorState(scrn);
791 I810Save(ScrnInfoPtr scrn)
797 hwp = VGAHWPTR(scrn);
798 pI810 = I810PTR(scrn);
799 DoSave(scrn, &hwp->SavedReg, &pI810->SavedReg, TRUE);
871 DoRestore(ScrnInfoPtr scrn, vgaRegPtr vgaReg, I810RegPtr i810Reg,
880 pI810 = I810PTR(scrn);
881 hwp = VGAHWPTR(scrn);
888 vgaHWProtect(scrn, TRUE);
932 vgaHWRestore(scrn, vgaReg, VGA_SR_FONTS | VGA_SR_MODE | VGA_SR_CMAP);
934 vgaHWRestore(scrn, vgaReg, VGA_SR_MODE | VGA_SR_CMAP);
1047 vgaHWRestore(scrn, vgaReg,
1050 vgaHWRestore(scrn, vgaReg, VGA_SR_MODE | VGA_SR_CMAP);
1053 vgaHWProtect(scrn, FALSE);
1062 I810SetRingRegs(ScrnInfoPtr scrn)
1065 I810Ptr pI810 = I810PTR(scrn);
1082 I810Restore(ScrnInfoPtr scrn)
1087 hwp = VGAHWPTR(scrn);
1088 pI810 = I810PTR(scrn);
1090 DoRestore(scrn, &hwp->SavedReg, &pI810->SavedReg, TRUE);
1107 I810CalcVCLK(ScrnInfoPtr scrn, double freq)
1109 I810Ptr pI810 = I810PTR(scrn);
1154 xf86DrvMsgVerb(scrn->scrnIndex, X_INFO, 3,
1162 I810SetMode(ScrnInfoPtr scrn, DisplayModePtr mode)
1164 I810Ptr pI810 = I810PTR(scrn);
1166 vgaRegPtr pVga = &VGAHWPTR(scrn)->ModeReg;
1169 switch (scrn->bitsPerPixel) {
1171 pVga->CRTC[0x13] = scrn->displayWidth >> 3;
1172 i810Reg->ExtOffset = scrn->displayWidth >> 11;
1177 if (scrn->weight.green == 5) {
1182 pVga->CRTC[0x13] = scrn->displayWidth >> 2;
1183 i810Reg->ExtOffset = scrn->displayWidth >> 10;
1190 pVga->CRTC[0x13] = (scrn->displayWidth * 3) >> 3;
1191 i810Reg->ExtOffset = (scrn->displayWidth * 3) >> 11;
1276 I810CalcVCLK(scrn, dclk);
1282 i810Reg->LMI_FIFO_Watermark = I810CalcWatermark(scrn, dclk, FALSE);
1299 I810ModeInit(ScrnInfoPtr scrn, DisplayModePtr mode)
1304 hwp = VGAHWPTR(scrn);
1305 pI810 = I810PTR(scrn);
1309 if (!vgaHWInit(scrn, mode))
1312 scrn->vtSema = TRUE;
1314 if (!I810SetMode(scrn, mode))
1319 DRILock(xf86ScrnToScreen(scrn), 0);
1324 DoRestore(scrn, &hwp->ModeReg, &pI810->ModeReg, FALSE);
1328 DRIUnlock(xf86ScrnToScreen(scrn));
1337 I810LoadPalette15(ScrnInfoPtr scrn, int numColors, int *indices,
1344 hwp = VGAHWPTR(scrn);
1361 I810LoadPalette16(ScrnInfoPtr scrn, int numColors, int *indices,
1368 hwp = VGAHWPTR(scrn);
1425 I810LoadPalette24(ScrnInfoPtr scrn, int numColors, int *indices,
1432 hwp = VGAHWPTR(scrn);
1447 I810AllocateFront(ScrnInfoPtr scrn)
1449 I810Ptr pI810 = I810PTR(scrn);
1458 pI810->FbMemBox.x2 = scrn->displayWidth;
1460 pI810->FbMemBox.y2 = scrn->virtualY;
1466 cache_lines = (scrn->depth == 24) ? 256 : 384;
1467 if (scrn->displayWidth <= 1024)
1483 maxCacheLines = (scrn->videoRam * 1024 /
1484 (scrn->bitsPerPixel / 8) /
1485 scrn->displayWidth) - scrn->virtualY;
1493 xf86DrvMsg(scrn->scrnIndex, X_INFO,
1504 xf86DrvMsg(scrn->scrnIndex,
1517 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1524 xf86DrvMsg(scrn->scrnIndex, X_INFO, "Allocated Scratch Memory\n");
1526 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1538 ScrnInfoPtr scrn;
1543 scrn = xf86ScreenToScrn(screen);
1544 pI810 = I810PTR(scrn);
1545 hwp = VGAHWPTR(scrn);
1549 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1557 if (!miSetVisualTypes(scrn->depth, miGetDefaultVisualMask(scrn->depth),
1558 scrn->rgbBits, scrn->defaultVisual))
1593 if (!I810AllocateGARTMemory(scrn))
1595 if (!I810AllocateFront(scrn))
1599 if (!I810MapMem(scrn))
1602 scrn->memPhysBase = (unsigned long)pI810->LinearAddr;
1603 scrn->fbOffset = 0;
1607 if (!vgaHWMapMem(scrn))
1610 I810Save(scrn);
1611 if (!I810ModeInit(scrn, scrn->currentMode))
1615 I810AdjustFrame(ADJUST_FRAME_ARGS(scrn, scrn->frameX0, scrn->frameY0));
1617 if (!fbScreenInit(screen, pI810->FbBase + scrn->fbOffset,
1618 scrn->virtualX, scrn->virtualY,
1619 scrn->xDpi, scrn->yDpi,
1620 scrn->displayWidth, scrn->bitsPerPixel))
1623 if (scrn->bitsPerPixel > 8) {
1628 visual->offsetRed = scrn->offset.red;
1629 visual->offsetGreen = scrn->offset.green;
1630 visual->offsetBlue = scrn->offset.blue;
1631 visual->redMask = scrn->mask.red;
1632 visual->greenMask = scrn->mask.green;
1633 visual->blueMask = scrn->mask.blue;
1650 if (!I810AllocateGARTMemory(scrn))
1652 if (!I810AllocateFront(scrn))
1662 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1668 I810SetRingRegs(scrn);
1671 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1675 I810EmitFlush(scrn);
1685 xf86DrvMsg(scrn->scrnIndex, X_ERROR,
1694 if (scrn->bitsPerPixel == 16) {
1695 if (scrn->depth == 15) {
1733 xf86DrvMsg(scrn->scrnIndex, X_INFO, "Direct rendering enabled\n");
1735 xf86DrvMsg(scrn->scrnIndex, X_WARNING, "Direct rendering disabled\n");
1743 xf86ShowUnusedOptions(scrn->scrnIndex, scrn->options);
1753 I810Ptr pI810 = I810PTR(scrn);
1776 I810RefreshRing(scrn);
1777 I810Sync(scrn);
1780 I810Restore(scrn);
1784 if (!I810DRILeave(scrn))
1786 if (!I810DRIEnter(scrn))
1796 return I810ModeInit(scrn, mode);
1803 I810Ptr pI810 = I810PTR(scrn);
1804 vgaHWPtr hwp = VGAHWPTR(scrn);
1810 ((scrn->displayWidth * scrn->bitsPerPixel) / 8);
1811 lastline -= scrn->currentMode->VDisplay;
1813 y += scrn->currentMode->VDisplay;
1817 Base = (y * scrn->displayWidth + x) >> 2;
1822 switch (scrn->bitsPerPixel) {
1857 I810Ptr pI810 = I810PTR(scrn);
1863 if (!I810BindGARTMemory(scrn)) {
1867 if (!I810DRIEnter(scrn)) {
1873 DRIUnlock(xf86ScrnToScreen(scrn));
1878 if (!I810ModeInit(scrn, scrn->currentMode))
1880 I810AdjustFrame(ADJUST_FRAME_ARGS(scrn, scrn->frameX0, scrn->frameY0));
1888 vgaHWPtr hwp = VGAHWPTR(scrn);
1889 I810Ptr pI810 = I810PTR(scrn);
1898 DRILock(xf86ScrnToScreen(scrn), 0);
1905 I810RefreshRing(scrn);
1906 I810Sync(scrn);
1910 I810Restore(scrn);
1912 if (!I810UnbindGARTMemory(scrn))
1915 if (!I810DRILeave(scrn))
1925 ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
1926 vgaHWPtr hwp = VGAHWPTR(scrn);
1927 I810Ptr pI810 = I810PTR(scrn);
1932 if (scrn->vtSema == TRUE) {
1935 I810RefreshRing(scrn);
1936 I810Sync(scrn);
1940 I810Restore(scrn);
1950 if (scrn->vtSema == TRUE) {
1951 I810UnbindGARTMemory(scrn);
1952 I810Restore(scrn);
1956 I810UnmapMem(scrn);
1957 vgaHWUnmapMem(scrn);
1987 xf86GARTCloseScreen(scrn->scrnIndex);
1992 scrn->vtSema = FALSE;
2001 I810FreeRec(scrn);
2003 vgaHWFreeHWRec(scrn);
2012 xf86DrvMsg(scrn->scrnIndex, X_PROBED,
2027 I810DisplayPowerManagementSet(ScrnInfoPtr scrn, int PowerManagementMode,
2035 pI810 = I810PTR(scrn);
2059 hwp = VGAHWPTR(scrn);
2076 Bool lg_i810_init(ScrnInfoPtr scrn)
2078 scrn->PreInit = I810PreInit;
2079 scrn->ScreenInit = I810ScreenInit;
2080 scrn->SwitchMode = I810SwitchMode;
2081 scrn->AdjustFrame = I810AdjustFrame;
2082 scrn->EnterVT = I810EnterVT;
2083 scrn->LeaveVT = I810LeaveVT;
2084 scrn->FreeScreen = I810FreeScreen;
2085 scrn->ValidMode = I810ValidMode;