Lines Matching refs:var

375 static int cirrusfb_pan_display(struct fb_var_screeninfo *var,
472 static int cirrusfb_check_pixclock(struct fb_var_screeninfo *var,
478 unsigned maxclockidx = var->bits_per_pixel >> 3;
481 freq = PICOS2KHZ(var->pixclock ? : 1);
489 var->pixclock = KHZ2PICOS(maxclock);
491 while ((freq = PICOS2KHZ(var->pixclock)) > maxclock)
492 var->pixclock++;
500 if (var->bits_per_pixel == 8) {
522 var->bits_per_pixel == 16) {
529 static int cirrusfb_check_var(struct fb_var_screeninfo *var,
534 unsigned pixels = info->screen_size * 8 / var->bits_per_pixel;
537 switch (var->bits_per_pixel) {
539 var->red.offset = 0;
540 var->red.length = 1;
541 var->green = var->red;
542 var->blue = var->red;
546 var->red.offset = 0;
547 var->red.length = 8;
548 var->green = var->red;
549 var->blue = var->red;
553 var->red.offset = 11;
554 var->green.offset = 5;
555 var->blue.offset = 0;
556 var->red.length = 5;
557 var->green.length = 6;
558 var->blue.length = 5;
562 var->red.offset = 16;
563 var->green.offset = 8;
564 var->blue.offset = 0;
565 var->red.length = 8;
566 var->green.length = 8;
567 var->blue.length = 8;
572 "Unsupported bpp size: %d\n", var->bits_per_pixel);
576 if (var->xres_virtual < var->xres)
577 var->xres_virtual = var->xres;
579 if (var->yres_virtual == -1) {
580 var->yres_virtual = pixels / var->xres_virtual;
584 var->xres_virtual, var->yres_virtual);
586 if (var->yres_virtual < var->yres)
587 var->yres_virtual = var->yres;
589 if (var->xres_virtual * var->yres_virtual > pixels) {
592 var->xres_virtual, var->yres_virtual,
593 var->bits_per_pixel);
598 if (var->xoffset > var->xres_virtual - var->xres)
599 var->xoffset = var->xres_virtual - var->xres - 1;
600 if (var->yoffset > var->yres_virtual - var->yres)
601 var->yoffset = var->yres_virtual - var->yres - 1;
603 var->red.msb_right =
604 var->green.msb_right =
605 var->blue.msb_right =
606 var->transp.offset =
607 var->transp.length =
608 var->transp.msb_right = 0;
610 yres = var->yres;
611 if (var->vmode & FB_VMODE_DOUBLE)
613 else if (var->vmode & FB_VMODE_INTERLACED)
622 if (cirrusfb_check_pixclock(var, info))
626 var->accel_flags = FB_ACCELF_TEXT;
660 struct fb_var_screeninfo *var = &info->var;
672 var->xres, var->yres, var->bits_per_pixel);
674 switch (var->bits_per_pixel) {
676 info->fix.line_length = var->xres_virtual / 8;
681 info->fix.line_length = var->xres_virtual;
687 info->fix.line_length = var->xres_virtual *
688 var->bits_per_pixel >> 3;
698 hsyncstart = var->xres + var->right_margin;
699 hsyncend = hsyncstart + var->hsync_len;
700 htotal = (hsyncend + var->left_margin) / 8;
701 hdispend = var->xres / 8;
705 vdispend = var->yres;
706 vsyncstart = vdispend + var->lower_margin;
707 vsyncend = vsyncstart + var->vsync_len;
708 vtotal = vsyncend + var->upper_margin;
710 if (var->vmode & FB_VMODE_DOUBLE) {
715 } else if (var->vmode & FB_VMODE_INTERLACED) {
756 dev_dbg(info->device, "CRT2: %d\n", var->xres / 8);
757 vga_wcrt(regbase, VGA_CRTC_H_BLANK_START, var->xres / 8);
797 if (var->vmode & FB_VMODE_DOUBLE)
821 if (var->vmode & FB_VMODE_INTERLACED)
835 freq = PICOS2KHZ(var->pixclock);
836 if (var->bits_per_pixel == 24)
913 if (var->vmode & FB_VMODE_INTERLACED)
921 if (var->sync & FB_SYNC_HOR_HIGH_ACT)
923 if (var->sync & FB_SYNC_VERT_HIGH_ACT)
939 if (var->bits_per_pixel == 1) {
1016 else if (var->bits_per_pixel == 8) {
1085 else if (var->bits_per_pixel == 16) {
1144 else if (var->bits_per_pixel == 24) {
1201 var->bits_per_pixel);
1253 if (var->vmode & FB_VMODE_CLOCK_HALVE)
1286 red >>= (16 - info->var.red.length);
1287 green >>= (16 - info->var.green.length);
1288 blue >>= (16 - info->var.blue.length);
1292 v = (red << info->var.red.offset) |
1293 (green << info->var.green.offset) |
1294 (blue << info->var.blue.offset);
1300 if (info->var.bits_per_pixel == 8)
1312 static int cirrusfb_pan_display(struct fb_var_screeninfo *var,
1322 if (var->vmode & FB_VMODE_YWRAP)
1325 xoffset = var->xoffset * info->var.bits_per_pixel / 8;
1327 base = var->yoffset * info->fix.line_length + xoffset;
1329 if (info->var.bits_per_pixel == 1) {
1331 xpix = (unsigned char) (var->xoffset % 8);
1370 if (info->var.bits_per_pixel == 1)
1735 int m = info->var.bits_per_pixel;
1746 vxres = info->var.xres_virtual;
1747 vyres = info->var.yres_virtual;
1761 info->var.bits_per_pixel,
1774 int m = info->var.bits_per_pixel;
1783 vxres = info->var.xres_virtual;
1784 vyres = info->var.yres_virtual;
1801 cirrusfb_BitBLT(cinfo->regbase, info->var.bits_per_pixel,
1813 unsigned char op = (info->var.bits_per_pixel == 24) ? 0xc : 0x4;
1825 int m = info->var.bits_per_pixel;
1828 if (info->var.bits_per_pixel == 8) {
1835 if (info->var.bits_per_pixel == 24) {
1838 info->var.bits_per_pixel,
1846 info->var.bits_per_pixel,
1976 struct fb_var_screeninfo *var = &info->var;
1994 if (var->bits_per_pixel == 16)
1996 if (var->bits_per_pixel == 32)
2007 if (var->bits_per_pixel == 1)
2035 err = fb_find_mode(&info->var, info, mode_option, NULL, 0, NULL, 8);
2042 info->var.activate = FB_ACTIVATE_NOW;
2044 err = cirrusfb_check_var(&info->var, info);
2048 "choking on default var... umm, no good.\n");