Lines Matching refs:var

254 static int vgaHWInit(const struct fb_var_screeninfo *var,
257 int hsync_end = var->xres + var->right_margin + var->hsync_len;
258 int htotal = (hsync_end + var->left_margin) >> 3;
259 int vsync_start = var->yres + var->lower_margin;
260 int vsync_end = vsync_start + var->vsync_len;
261 int vtotal = vsync_end + var->upper_margin;
265 if (!(var->sync & FB_SYNC_HOR_HIGH_ACT))
268 if (!(var->sync & FB_SYNC_VERT_HIGH_ACT))
284 par->CRTC[1] = (var->xres >> 3) - 1;
285 par->CRTC[2] = (var->xres >> 3) - 1;
287 par->CRTC[4] = ((var->xres + var->right_margin) >> 3);
292 | (((var->yres - 1) & 0x100) >> 7)
294 | (((var->yres - 1) & 0x100) >> 5)
296 | (((var->yres - 1) & 0x200) >> 3)
299 par->CRTC[9] = (((var->yres - 1) & 0x200) >> 4) | 0x40;
301 if (var->vmode & FB_VMODE_DOUBLE)
312 par->CRTC[18] = (var->yres - 1) & 0xFF;
313 par->CRTC[19] = var->xres_virtual >> 4;
315 par->CRTC[21] = (var->yres - 1) & 0xFF;
514 struct fb_var_screeninfo *var)
522 switch (var->bits_per_pixel) {
525 pitch = var->xres_virtual;
530 pitch = var->xres_virtual * 2;
534 pitch = var->xres_virtual * 3;
580 neofb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
588 if (PICOS2KHZ(var->pixclock) > par->maxClock)
593 ((var->xres > par->NeoPanelWidth) ||
594 (var->yres > par->NeoPanelHeight))) {
597 var->xres, var->yres, par->NeoPanelWidth,
606 switch (var->xres) {
608 if (var->yres == 1024)
612 if (var->yres == 768)
616 if (var->yres == (par->libretto ? 480 : 600))
620 if (var->yres == 480)
629 var->xres, var->yres);
633 var->red.msb_right = 0;
634 var->green.msb_right = 0;
635 var->blue.msb_right = 0;
636 var->transp.msb_right = 0;
638 var->transp.offset = 0;
639 var->transp.length = 0;
640 switch (var->bits_per_pixel) {
642 var->red.offset = 0;
643 var->red.length = 8;
644 var->green.offset = 0;
645 var->green.length = 8;
646 var->blue.offset = 0;
647 var->blue.length = 8;
651 var->red.offset = 11;
652 var->red.length = 5;
653 var->green.offset = 5;
654 var->green.length = 6;
655 var->blue.offset = 0;
656 var->blue.length = 5;
660 var->red.offset = 16;
661 var->red.length = 8;
662 var->green.offset = 8;
663 var->green.length = 8;
664 var->blue.offset = 0;
665 var->blue.length = 8;
670 var->transp.offset = 24;
671 var->transp.length = 8;
672 var->red.offset = 16;
673 var->red.length = 8;
674 var->green.offset = 8;
675 var->green.length = 8;
676 var->blue.offset = 0;
677 var->blue.length = 8;
682 var->bits_per_pixel);
690 if (var->xres_virtual < var->xres)
691 var->xres_virtual = var->xres;
693 memlen = var->xres_virtual * var->bits_per_pixel * var->yres_virtual >> 3;
696 var->yres_virtual = vramlen * 8 / (var->xres_virtual *
697 var->bits_per_pixel);
698 memlen = var->xres_virtual * var->bits_per_pixel *
699 var->yres_virtual / 8;
704 if (var->yres_virtual < var->yres)
705 var->yres = var->yres_virtual;
706 if (var->xoffset + var->xres > var->xres_virtual)
707 var->xoffset = var->xres_virtual - var->xres;
708 if (var->yoffset + var->yres > var->yres_virtual)
709 var->yoffset = var->yres_virtual - var->yres;
711 var->nonstd = 0;
712 var->height = -1;
713 var->width = -1;
715 if (var->bits_per_pixel >= 24 || !par->neo2200)
716 var->accel_flags &= ~FB_ACCELF_TEXT;
735 vsync_start = info->var.yres + info->var.lower_margin;
736 vtotal = vsync_start + info->var.vsync_len + info->var.upper_margin;
743 if (vgaHWInit(&info->var, par))
752 switch (info->var.bits_per_pixel) {
754 par->CRTC[0x13] = info->var.xres_virtual >> 3;
755 par->ExtCRTOffset = info->var.xres_virtual >> 11;
759 par->CRTC[0x13] = info->var.xres_virtual >> 2;
760 par->ExtCRTOffset = info->var.xres_virtual >> 10;
764 par->CRTC[0x13] = (info->var.xres_virtual * 3) >> 3;
765 par->ExtCRTOffset = (info->var.xres_virtual * 3) >> 11;
770 par->CRTC[0x13] = info->var.xres_virtual >> 1;
771 par->ExtCRTOffset = info->var.xres_virtual >> 9;
783 | (((info->var.yres - 1) & 0x400) >> 9)
812 switch (info->var.xres) {
852 (info->var.xres != par->NeoPanelWidth)) {
853 switch (info->var.xres) {
886 if (info->var.xres == par->NeoPanelWidth) {
899 info->var.xres) >> 4) - 1;
902 info->var.yres) >> 1) - 2;
909 switch (info->var.xres) {
939 neoFindMode(info->var.xres, info->var.yres,
940 info->var.bits_per_pixel);
946 neoCalcVCLK(info, par, PICOS2KHZ(info->var.pixclock));
1013 switch (info->var.bits_per_pixel) {
1153 info->var.xres_virtual * (info->var.bits_per_pixel >> 3);
1160 neo2200_accel_init(info, &info->var);
1171 static int neofb_pan_display(struct fb_var_screeninfo *var,
1181 Base = (var->yoffset * info->var.xres_virtual + var->xoffset) >> 2;
1182 Base *= (info->var.bits_per_pixel + 7) / 8;
1211 if (fb->var.bits_per_pixel <= 8) {
1218 switch (fb->var.bits_per_pixel) {
1365 dst = rect->dx + rect->dy * info->var.xres_virtual;
1377 switch (info->var.bits_per_pixel) {
1388 writel(dst * ((info->var.bits_per_pixel + 7) >> 3),
1413 src = sx * (info->var.bits_per_pixel >> 3) + sy*info->fix.line_length;
1414 dst = dx * (info->var.bits_per_pixel >> 3) + dy*info->fix.line_length;
1443 if (info->var.bits_per_pixel == 24 && image->width < 16) {
1453 } else if (image->depth == info->var.bits_per_pixel) {
1462 switch (info->var.bits_per_pixel) {
1483 writel(((image->dx & 0xffff) * (info->var.bits_per_pixel >> 3) +
2063 if (!fb_find_mode(&info->var, info, mode_option, NULL, 0,
2076 h_sync = 1953125000 / info->var.pixclock;
2078 h_sync * 512 / (info->var.xres + info->var.left_margin +
2079 info->var.right_margin + info->var.hsync_len);
2081 h_sync / (info->var.yres + info->var.upper_margin +
2082 info->var.lower_margin + info->var.vsync_len);
2086 info->fix.smem_len >> 10, info->var.xres,
2087 info->var.yres, h_sync / 1000, h_sync % 1000, v_sync);