Lines Matching +full:vco +full:- +full:offset
28 #include <xorg-config.h>
46 unsigned long MinClock, /* Min VCO rating */ in IBMramdac640CalculateMNPCForClock()
47 unsigned long MaxClock, /* Max VCO rating */ in IBMramdac640CalculateMNPCForClock()
55 unsigned long IntRef, VCO, Clock; in IBMramdac640CalculateMNPCForClock() local
64 VCO = IntRef * (M + 1); in IBMramdac640CalculateMNPCForClock()
65 if ((VCO < MinClock) || (VCO > MaxClock)) in IBMramdac640CalculateMNPCForClock()
73 freqErr = (Clock - ReqClock); in IBMramdac640CalculateMNPCForClock()
80 freqErr = -freqErr; in IBMramdac640CalculateMNPCForClock()
87 *rC = (VCO <= 1280000 ? 1 : 2); in IBMramdac640CalculateMNPCForClock()
106 unsigned long MinClock, /* Min VCO rating */ in IBMramdac526CalculateMNPCForClock()
107 unsigned long MaxClock, /* Max VCO rating */ in IBMramdac526CalculateMNPCForClock()
115 unsigned long IntRef, VCO, Clock; in IBMramdac526CalculateMNPCForClock() local
124 VCO = IntRef * (M + 1); in IBMramdac526CalculateMNPCForClock()
125 if ((VCO < MinClock) || (VCO > MaxClock)) in IBMramdac526CalculateMNPCForClock()
131 Clock = VCO; in IBMramdac526CalculateMNPCForClock()
133 freqErr = (Clock - ReqClock); in IBMramdac526CalculateMNPCForClock()
140 freqErr = -freqErr; in IBMramdac526CalculateMNPCForClock()
147 *rC = (VCO <= 1280000 ? 1 : 2); in IBMramdac526CalculateMNPCForClock()
168 switch (ramdacPtr->RamDacType) { in IBMramdacRestore()
182 (*ramdacPtr->WriteDAC) in IBMramdacRestore()
183 (pScrn, i, (ramdacReg->DacRegs[i] & 0xFF00) >> 8, in IBMramdacRestore()
184 ramdacReg->DacRegs[i]); in IBMramdacRestore()
186 (*ramdacPtr->WriteAddress) (pScrn, 0); in IBMramdacRestore()
188 (*ramdacPtr->WriteData) (pScrn, ramdacReg->DAC[i]); in IBMramdacRestore()
197 switch (ramdacPtr->RamDacType) { in IBMramdacSave()
208 (*ramdacPtr->ReadAddress) (pScrn, 0); in IBMramdacSave()
210 ramdacReg->DAC[i] = (*ramdacPtr->ReadData) (pScrn); in IBMramdacSave()
213 ramdacReg->DacRegs[i] = (*ramdacPtr->ReadDAC) (pScrn, i); in IBMramdacSave()
224 int IBMramdac_ID = -1; in IBMramdacProbe()
229 rev = (*ramdacPtr->ReadDAC) (pScrn, IBMRGB_rev); in IBMramdacProbe()
230 id = (*ramdacPtr->ReadDAC) (pScrn, IBMRGB_id); in IBMramdacProbe()
233 (*ramdacPtr->WriteDAC) (pScrn, ~rev, 0, IBMRGB_rev); in IBMramdacProbe()
234 (*ramdacPtr->WriteDAC) (pScrn, ~id, 0, IBMRGB_id); in IBMramdacProbe()
235 rev2 = (*ramdacPtr->ReadDAC) (pScrn, IBMRGB_rev); in IBMramdacProbe()
236 id2 = (*ramdacPtr->ReadDAC) (pScrn, IBMRGB_id); in IBMramdacProbe()
266 /* check for 128bit VRAM -> RGB528 */ in IBMramdacProbe()
267 if (((*ramdacPtr->ReadDAC) (pScrn, IBMRGB_misc1) & 0x03) == 0x03) { in IBMramdacProbe()
275 (*ramdacPtr->WriteDAC) (pScrn, rev, 0, IBMRGB_rev); in IBMramdacProbe()
276 (*ramdacPtr->WriteDAC) (pScrn, id, 0, IBMRGB_id); in IBMramdacProbe()
278 if (IBMramdac_ID == -1) { in IBMramdacProbe()
279 xf86DrvMsg(pScrn->scrnIndex, X_PROBED, in IBMramdacProbe()
284 xf86DrvMsg(pScrn->scrnIndex, X_PROBED, in IBMramdacProbe()
289 for (i = 0; ramdacs[i].token != -1; i++) { in IBMramdacProbe()
295 xf86DrvMsg(pScrn->scrnIndex, X_PROBED, in IBMramdacProbe()
304 ramdacHelperPtr->SetBpp = IBMramdac526SetBpp; in IBMramdacProbe()
305 ramdacHelperPtr->HWCursorInit = IBMramdac526HWCursorInit; in IBMramdacProbe()
308 ramdacHelperPtr->SetBpp = IBMramdac640SetBpp; in IBMramdacProbe()
309 ramdacHelperPtr->HWCursorInit = IBMramdac640HWCursorInit; in IBMramdacProbe()
312 ramdacPtr->RamDacType = IBMramdac_ID; in IBMramdacProbe()
313 ramdacHelperPtr->RamDacType = IBMramdac_ID; in IBMramdacProbe()
314 ramdacHelperPtr->Save = IBMramdacSave; in IBMramdacProbe()
315 ramdacHelperPtr->Restore = IBMramdacRestore; in IBMramdacProbe()
323 ramdacReg->DacRegs[IBMRGB_key_control] = 0x00; /* Disable Chroma Key */ in IBMramdac526SetBpp()
325 switch (pScrn->bitsPerPixel) { in IBMramdac526SetBpp()
327 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_32BPP; in IBMramdac526SetBpp()
328 ramdacReg->DacRegs[IBMRGB_32bpp] = B32_DCOL_DIRECT; in IBMramdac526SetBpp()
329 ramdacReg->DacRegs[IBMRGB_24bpp] = 0; in IBMramdac526SetBpp()
330 ramdacReg->DacRegs[IBMRGB_16bpp] = 0; in IBMramdac526SetBpp()
331 ramdacReg->DacRegs[IBMRGB_8bpp] = 0; in IBMramdac526SetBpp()
332 if (pScrn->overlayFlags & OVERLAY_8_32_PLANAR) { in IBMramdac526SetBpp()
333 ramdacReg->DacRegs[IBMRGB_key_control] = 0x01; /* Enable Key */ in IBMramdac526SetBpp()
334 ramdacReg->DacRegs[IBMRGB_key] = 0xFF; in IBMramdac526SetBpp()
335 ramdacReg->DacRegs[IBMRGB_key_mask] = 0xFF; in IBMramdac526SetBpp()
339 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_24BPP; in IBMramdac526SetBpp()
340 ramdacReg->DacRegs[IBMRGB_32bpp] = 0; in IBMramdac526SetBpp()
341 ramdacReg->DacRegs[IBMRGB_24bpp] = B24_DCOL_DIRECT; in IBMramdac526SetBpp()
342 ramdacReg->DacRegs[IBMRGB_16bpp] = 0; in IBMramdac526SetBpp()
343 ramdacReg->DacRegs[IBMRGB_8bpp] = 0; in IBMramdac526SetBpp()
346 if (pScrn->depth == 16) { in IBMramdac526SetBpp()
347 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_16BPP; in IBMramdac526SetBpp()
348 ramdacReg->DacRegs[IBMRGB_32bpp] = 0; in IBMramdac526SetBpp()
349 ramdacReg->DacRegs[IBMRGB_24bpp] = 0; in IBMramdac526SetBpp()
350 ramdacReg->DacRegs[IBMRGB_16bpp] = B16_DCOL_DIRECT | B16_LINEAR | in IBMramdac526SetBpp()
352 ramdacReg->DacRegs[IBMRGB_8bpp] = 0; in IBMramdac526SetBpp()
355 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_16BPP; in IBMramdac526SetBpp()
356 ramdacReg->DacRegs[IBMRGB_32bpp] = 0; in IBMramdac526SetBpp()
357 ramdacReg->DacRegs[IBMRGB_24bpp] = 0; in IBMramdac526SetBpp()
358 ramdacReg->DacRegs[IBMRGB_16bpp] = B16_DCOL_DIRECT | B16_LINEAR | in IBMramdac526SetBpp()
360 ramdacReg->DacRegs[IBMRGB_8bpp] = 0; in IBMramdac526SetBpp()
364 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_8BPP; in IBMramdac526SetBpp()
365 ramdacReg->DacRegs[IBMRGB_32bpp] = 0; in IBMramdac526SetBpp()
366 ramdacReg->DacRegs[IBMRGB_24bpp] = 0; in IBMramdac526SetBpp()
367 ramdacReg->DacRegs[IBMRGB_16bpp] = 0; in IBMramdac526SetBpp()
368 ramdacReg->DacRegs[IBMRGB_8bpp] = B8_DCOL_INDIRECT; in IBMramdac526SetBpp()
371 ramdacReg->DacRegs[IBMRGB_pix_fmt] = PIXEL_FORMAT_4BPP; in IBMramdac526SetBpp()
372 ramdacReg->DacRegs[IBMRGB_32bpp] = 0; in IBMramdac526SetBpp()
373 ramdacReg->DacRegs[IBMRGB_24bpp] = 0; in IBMramdac526SetBpp()
374 ramdacReg->DacRegs[IBMRGB_16bpp] = 0; in IBMramdac526SetBpp()
375 ramdacReg->DacRegs[IBMRGB_8bpp] = 0; in IBMramdac526SetBpp()
390 unsigned char offset = 0x00; in IBMramdac640SetBpp() local
393 ramdacReg->DacRegs[RGB640_SER_WID_03_00] = 0x00; in IBMramdac640SetBpp()
394 ramdacReg->DacRegs[RGB640_SER_WID_07_04] = 0x00; in IBMramdac640SetBpp()
395 ramdacReg->DacRegs[RGB640_DIAGS] = 0x07; in IBMramdac640SetBpp()
397 switch (pScrn->depth) { in IBMramdac640SetBpp()
399 ramdacReg->DacRegs[RGB640_SER_07_00] = 0x00; in IBMramdac640SetBpp()
400 ramdacReg->DacRegs[RGB640_SER_15_08] = 0x00; in IBMramdac640SetBpp()
401 ramdacReg->DacRegs[RGB640_SER_23_16] = 0x00; in IBMramdac640SetBpp()
402 ramdacReg->DacRegs[RGB640_SER_31_24] = 0x00; in IBMramdac640SetBpp()
403 ramdacReg->DacRegs[RGB640_SER_MODE] = IBM640_SER_16_1; /*16:1 Mux */ in IBMramdac640SetBpp()
404 ramdacReg->DacRegs[RGB640_MISC_CONF] = IBM640_PCLK_8; /* pll / 8 */ in IBMramdac640SetBpp()
408 ramdacReg->DacRegs[RGB640_SER_07_00] = 0x10; in IBMramdac640SetBpp()
409 ramdacReg->DacRegs[RGB640_SER_15_08] = 0x11; in IBMramdac640SetBpp()
410 ramdacReg->DacRegs[RGB640_SER_23_16] = 0x00; in IBMramdac640SetBpp()
411 ramdacReg->DacRegs[RGB640_SER_31_24] = 0x00; in IBMramdac640SetBpp()
412 ramdacReg->DacRegs[RGB640_SER_MODE] = IBM640_SER_8_1; /* 8:1 Mux */ in IBMramdac640SetBpp()
413 ramdacReg->DacRegs[RGB640_MISC_CONF] = IBM640_PCLK_8; /* pll / 8 */ in IBMramdac640SetBpp()
417 ramdacReg->DacRegs[RGB640_SER_07_00] = 0x10; in IBMramdac640SetBpp()
418 ramdacReg->DacRegs[RGB640_SER_15_08] = 0x11; in IBMramdac640SetBpp()
419 ramdacReg->DacRegs[RGB640_SER_23_16] = 0x00; in IBMramdac640SetBpp()
420 ramdacReg->DacRegs[RGB640_SER_31_24] = 0x00; in IBMramdac640SetBpp()
421 ramdacReg->DacRegs[RGB640_SER_MODE] = IBM640_SER_8_1; /* 8:1 Mux */ in IBMramdac640SetBpp()
422 ramdacReg->DacRegs[RGB640_MISC_CONF] = IBM640_PCLK_8; /* pll / 8 */ in IBMramdac640SetBpp()
426 ramdacReg->DacRegs[RGB640_SER_07_00] = 0x30; in IBMramdac640SetBpp()
427 ramdacReg->DacRegs[RGB640_SER_15_08] = 0x31; in IBMramdac640SetBpp()
428 ramdacReg->DacRegs[RGB640_SER_23_16] = 0x32; in IBMramdac640SetBpp()
429 ramdacReg->DacRegs[RGB640_SER_31_24] = 0x33; in IBMramdac640SetBpp()
430 ramdacReg->DacRegs[RGB640_SER_MODE] = IBM640_SER_4_1; /* 4:1 Mux */ in IBMramdac640SetBpp()
431 ramdacReg->DacRegs[RGB640_MISC_CONF] = IBM640_PCLK_8; /* pll / 8 */ in IBMramdac640SetBpp()
433 if (pScrn->overlayFlags & OVERLAY_8_32_PLANAR) { in IBMramdac640SetBpp()
434 ramdacReg->DacRegs[RGB640_SER_WID_07_04] = 0x04; in IBMramdac640SetBpp()
435 ramdacReg->DacRegs[RGB640_CHROMA_KEY0] = 0xFF; in IBMramdac640SetBpp()
436 ramdacReg->DacRegs[RGB640_CHROMA_MASK0] = 0xFF; in IBMramdac640SetBpp()
437 offset = 0x04; in IBMramdac640SetBpp()
443 ramdacReg->DacRegs[RGB640_SER_07_00] = 0x30; in IBMramdac640SetBpp()
444 ramdacReg->DacRegs[RGB640_SER_15_08] = 0x31; in IBMramdac640SetBpp()
445 ramdacReg->DacRegs[RGB640_SER_23_16] = 0x32; in IBMramdac640SetBpp()
446 ramdacReg->DacRegs[RGB640_SER_31_24] = 0x33; in IBMramdac640SetBpp()
447 ramdacReg->DacRegs[RGB640_SER_MODE] = IBM640_SER_4_1; /* 4:1 Mux */ in IBMramdac640SetBpp()
448 ramdacReg->DacRegs[RGB640_MISC_CONF] = IBM640_PSIZE10 | IBM640_PCLK_8; /* pll / 8 */ in IBMramdac640SetBpp()
458 ramdacReg->DacRegs[i + 0] = bpp; in IBMramdac640SetBpp()
459 ramdacReg->DacRegs[i + 1] = offset; in IBMramdac640SetBpp()
460 ramdacReg->DacRegs[i + 2] = 0x00; in IBMramdac640SetBpp()
461 ramdacReg->DacRegs[i + 3] = 0x00; in IBMramdac640SetBpp()
463 ramdacReg->DacRegs[i + 0x100] = overlaybpp; in IBMramdac640SetBpp()
464 ramdacReg->DacRegs[i + 0x101] = 0x00; in IBMramdac640SetBpp()
465 ramdacReg->DacRegs[i + 0x102] = 0x00; in IBMramdac640SetBpp()
466 ramdacReg->DacRegs[i + 0x103] = dispcont; in IBMramdac640SetBpp()
476 /* Enable cursor - X11 mode */ in IBMramdac526ShowCursor()
477 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs, 0x00, 0x07); in IBMramdac526ShowCursor()
485 /* Enable cursor - mode2 (x11 mode) */ in IBMramdac640ShowCursor()
486 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURSOR_CONTROL, 0x00, 0x0B); in IBMramdac640ShowCursor()
487 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CROSSHAIR_CONTROL, 0x00, 0x00); in IBMramdac640ShowCursor()
495 /* Disable cursor - X11 mode */ in IBMramdac526HideCursor()
496 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs, 0x00, 0x24); in IBMramdac526HideCursor()
504 /* Disable cursor - mode2 (x11 mode) */ in IBMramdac640HideCursor()
505 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURSOR_CONTROL, 0x00, 0x08); in IBMramdac640HideCursor()
516 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_hot_x, 0x00, 0x3f); in IBMramdac526SetCursorPosition()
517 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_hot_y, 0x00, 0x3f); in IBMramdac526SetCursorPosition()
518 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_xl, 0x00, x & 0xff); in IBMramdac526SetCursorPosition()
519 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_xh, 0x00, (x >> 8) & 0xf); in IBMramdac526SetCursorPosition()
520 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_yl, 0x00, y & 0xff); in IBMramdac526SetCursorPosition()
521 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_yh, 0x00, (y >> 8) & 0xf); in IBMramdac526SetCursorPosition()
532 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_OFFSETX, 0x00, 0x3f); in IBMramdac640SetCursorPosition()
533 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_OFFSETY, 0x00, 0x3f); in IBMramdac640SetCursorPosition()
534 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_X_LOW, 0x00, x & 0xff); in IBMramdac640SetCursorPosition()
535 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_X_HIGH, 0x00, (x >> 8) & 0xf); in IBMramdac640SetCursorPosition()
536 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_Y_LOW, 0x00, y & 0xff); in IBMramdac640SetCursorPosition()
537 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_Y_HIGH, 0x00, (y >> 8) & 0xf); in IBMramdac640SetCursorPosition()
545 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col1_r, 0x00, bg >> 16); in IBMramdac526SetCursorColors()
546 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col1_g, 0x00, bg >> 8); in IBMramdac526SetCursorColors()
547 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col1_b, 0x00, bg); in IBMramdac526SetCursorColors()
548 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col2_r, 0x00, fg >> 16); in IBMramdac526SetCursorColors()
549 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col2_g, 0x00, fg >> 8); in IBMramdac526SetCursorColors()
550 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_col2_b, 0x00, fg); in IBMramdac526SetCursorColors()
558 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_COL0, 0x00, 0); in IBMramdac640SetCursorColors()
559 (*ramdacPtr->WriteData) (pScrn, fg >> 16); in IBMramdac640SetCursorColors()
560 (*ramdacPtr->WriteData) (pScrn, fg >> 8); in IBMramdac640SetCursorColors()
561 (*ramdacPtr->WriteData) (pScrn, fg); in IBMramdac640SetCursorColors()
562 (*ramdacPtr->WriteData) (pScrn, bg >> 16); in IBMramdac640SetCursorColors()
563 (*ramdacPtr->WriteData) (pScrn, bg >> 8); in IBMramdac640SetCursorColors()
564 (*ramdacPtr->WriteData) (pScrn, bg); in IBMramdac640SetCursorColors()
565 (*ramdacPtr->WriteData) (pScrn, fg >> 16); in IBMramdac640SetCursorColors()
566 (*ramdacPtr->WriteData) (pScrn, fg >> 8); in IBMramdac640SetCursorColors()
567 (*ramdacPtr->WriteData) (pScrn, fg); in IBMramdac640SetCursorColors()
568 (*ramdacPtr->WriteData) (pScrn, bg >> 16); in IBMramdac640SetCursorColors()
569 (*ramdacPtr->WriteData) (pScrn, bg >> 8); in IBMramdac640SetCursorColors()
570 (*ramdacPtr->WriteData) (pScrn, bg); in IBMramdac640SetCursorColors()
584 (*ramdacPtr->WriteDAC) (pScrn, IBMRGB_curs_array + i, 0x00, (*src++)); in IBMramdac526LoadCursorImage()
599 (*ramdacPtr->WriteDAC) (pScrn, RGB640_CURS_WRITE + i, 0x00, (*src++)); in IBMramdac640LoadCursorImage()
618 infoPtr->MaxWidth = 64; in IBMramdac526HWCursorInit()
619 infoPtr->MaxHeight = 64; in IBMramdac526HWCursorInit()
620 infoPtr->Flags = HARDWARE_CURSOR_TRUECOLOR_AT_8BPP | in IBMramdac526HWCursorInit()
623 infoPtr->SetCursorColors = IBMramdac526SetCursorColors; in IBMramdac526HWCursorInit()
624 infoPtr->SetCursorPosition = IBMramdac526SetCursorPosition; in IBMramdac526HWCursorInit()
625 infoPtr->LoadCursorImageCheck = IBMramdac526LoadCursorImage; in IBMramdac526HWCursorInit()
626 infoPtr->HideCursor = IBMramdac526HideCursor; in IBMramdac526HWCursorInit()
627 infoPtr->ShowCursor = IBMramdac526ShowCursor; in IBMramdac526HWCursorInit()
628 infoPtr->UseHWCursor = IBMramdac526UseHWCursor; in IBMramdac526HWCursorInit()
634 infoPtr->MaxWidth = 64; in IBMramdac640HWCursorInit()
635 infoPtr->MaxHeight = 64; in IBMramdac640HWCursorInit()
636 infoPtr->Flags = HARDWARE_CURSOR_TRUECOLOR_AT_8BPP | in IBMramdac640HWCursorInit()
639 infoPtr->SetCursorColors = IBMramdac640SetCursorColors; in IBMramdac640HWCursorInit()
640 infoPtr->SetCursorPosition = IBMramdac640SetCursorPosition; in IBMramdac640HWCursorInit()
641 infoPtr->LoadCursorImageCheck = IBMramdac640LoadCursorImage; in IBMramdac640HWCursorInit()
642 infoPtr->HideCursor = IBMramdac640HideCursor; in IBMramdac640HWCursorInit()
643 infoPtr->ShowCursor = IBMramdac640ShowCursor; in IBMramdac640HWCursorInit()
644 infoPtr->UseHWCursor = IBMramdac640UseHWCursor; in IBMramdac640HWCursorInit()