Lines Matching refs:var
148 static void vgaHWInit(struct fb_var_screeninfo *var, in vgaHWInit() argument
204 reg->CRTC[0x13] = var->xres_virtual >> 4; in vgaHWInit()
849 static void savage_update_var(struct fb_var_screeninfo *var, in savage_update_var() argument
852 var->xres = var->xres_virtual = modedb->xres; in savage_update_var()
853 var->yres = modedb->yres; in savage_update_var()
854 if (var->yres_virtual < var->yres) in savage_update_var()
855 var->yres_virtual = var->yres; in savage_update_var()
856 var->xoffset = var->yoffset = 0; in savage_update_var()
857 var->pixclock = modedb->pixclock; in savage_update_var()
858 var->left_margin = modedb->left_margin; in savage_update_var()
859 var->right_margin = modedb->right_margin; in savage_update_var()
860 var->upper_margin = modedb->upper_margin; in savage_update_var()
861 var->lower_margin = modedb->lower_margin; in savage_update_var()
862 var->hsync_len = modedb->hsync_len; in savage_update_var()
863 var->vsync_len = modedb->vsync_len; in savage_update_var()
864 var->sync = modedb->sync; in savage_update_var()
865 var->vmode = modedb->vmode; in savage_update_var()
868 static int savagefb_check_var(struct fb_var_screeninfo *var, in savagefb_check_var() argument
876 var->transp.offset = 0; in savagefb_check_var()
877 var->transp.length = 0; in savagefb_check_var()
878 switch (var->bits_per_pixel) { in savagefb_check_var()
880 var->red.offset = var->green.offset = in savagefb_check_var()
881 var->blue.offset = 0; in savagefb_check_var()
882 var->red.length = var->green.length = in savagefb_check_var()
883 var->blue.length = var->bits_per_pixel; in savagefb_check_var()
886 var->red.offset = 11; in savagefb_check_var()
887 var->red.length = 5; in savagefb_check_var()
888 var->green.offset = 5; in savagefb_check_var()
889 var->green.length = 6; in savagefb_check_var()
890 var->blue.offset = 0; in savagefb_check_var()
891 var->blue.length = 5; in savagefb_check_var()
894 var->transp.offset = 24; in savagefb_check_var()
895 var->transp.length = 8; in savagefb_check_var()
896 var->red.offset = 16; in savagefb_check_var()
897 var->red.length = 8; in savagefb_check_var()
898 var->green.offset = 8; in savagefb_check_var()
899 var->green.length = 8; in savagefb_check_var()
900 var->blue.offset = 0; in savagefb_check_var()
901 var->blue.length = 8; in savagefb_check_var()
909 !info->monspecs.dclkmax || !fb_validate_mode(var, info)) in savagefb_check_var()
914 if (!fb_get_mode(FB_MAXTIMINGS, 0, var, info)) in savagefb_check_var()
921 mode = fb_find_best_mode(var, &info->modelist); in savagefb_check_var()
923 savage_update_var(var, mode); in savagefb_check_var()
933 (var->xres > par->SavagePanelWidth || in savagefb_check_var()
934 var->yres > par->SavagePanelHeight)) { in savagefb_check_var()
936 "(%dx%d)\n", var->xres, var->yres, in savagefb_check_var()
942 if (var->yres_virtual < var->yres) in savagefb_check_var()
943 var->yres_virtual = var->yres; in savagefb_check_var()
944 if (var->xres_virtual < var->xres) in savagefb_check_var()
945 var->xres_virtual = var->xres; in savagefb_check_var()
949 memlen = var->xres_virtual * var->bits_per_pixel * in savagefb_check_var()
950 var->yres_virtual / 8; in savagefb_check_var()
952 var->yres_virtual = vramlen * 8 / in savagefb_check_var()
953 (var->xres_virtual * var->bits_per_pixel); in savagefb_check_var()
954 memlen = var->xres_virtual * var->bits_per_pixel * in savagefb_check_var()
955 var->yres_virtual / 8; in savagefb_check_var()
960 if (var->yres_virtual < var->yres) in savagefb_check_var()
961 var->yres = var->yres_virtual; in savagefb_check_var()
962 if (var->xres_virtual < var->xres) in savagefb_check_var()
963 var->xres = var->xres_virtual; in savagefb_check_var()
964 if (var->xoffset + var->xres > var->xres_virtual) in savagefb_check_var()
965 var->xoffset = var->xres_virtual - var->xres; in savagefb_check_var()
966 if (var->yoffset + var->yres > var->yres_virtual) in savagefb_check_var()
967 var->yoffset = var->yres_virtual - var->yres; in savagefb_check_var()
973 static int savagefb_decode_var(struct fb_var_screeninfo *var, in savagefb_decode_var() argument
981 unsigned int pixclock = var->pixclock; in savagefb_decode_var()
990 timings.dblscan = var->vmode & FB_VMODE_DOUBLE; in savagefb_decode_var()
991 timings.interlaced = var->vmode & FB_VMODE_INTERLACED; in savagefb_decode_var()
992 timings.HDisplay = var->xres; in savagefb_decode_var()
993 timings.HSyncStart = timings.HDisplay + var->right_margin; in savagefb_decode_var()
994 timings.HSyncEnd = timings.HSyncStart + var->hsync_len; in savagefb_decode_var()
995 timings.HTotal = timings.HSyncEnd + var->left_margin; in savagefb_decode_var()
996 timings.VDisplay = var->yres; in savagefb_decode_var()
997 timings.VSyncStart = timings.VDisplay + var->lower_margin; in savagefb_decode_var()
998 timings.VSyncEnd = timings.VSyncStart + var->vsync_len; in savagefb_decode_var()
999 timings.VTotal = timings.VSyncEnd + var->upper_margin; in savagefb_decode_var()
1000 timings.sync = var->sync; in savagefb_decode_var()
1003 par->depth = var->bits_per_pixel; in savagefb_decode_var()
1004 par->vwidth = var->xres_virtual; in savagefb_decode_var()
1006 if (var->bits_per_pixel == 16 && par->chip == S3_SAVAGE3D) { in savagefb_decode_var()
1017 vgaHWInit(var, par, &timings, reg); in savagefb_decode_var()
1024 switch(var->bits_per_pixel) { in savagefb_decode_var()
1102 if (var->bits_per_pixel < 24) in savagefb_decode_var()
1143 width = (var->xres_virtual * ((var->bits_per_pixel+7) / 8)) >> 3; in savagefb_decode_var()
1151 if (var->bits_per_pixel <= 8) in savagefb_decode_var()
1153 else if (var->bits_per_pixel <= 16) in savagefb_decode_var()
1158 if (var->xres_virtual <= 640) in savagefb_decode_var()
1160 else if (var->xres_virtual == 800) in savagefb_decode_var()
1162 else if (var->xres_virtual == 1024) in savagefb_decode_var()
1164 else if (var->xres_virtual == 1152) in savagefb_decode_var()
1166 else if (var->xres_virtual == 1280) in savagefb_decode_var()
1168 else if (var->xres_virtual == 1600) in savagefb_decode_var()
1221 switch (info->var.bits_per_pixel) { in savagefb_setcolreg()
1491 info->fix.line_length = info->var.xres_virtual * in savagefb_set_fix()
1492 info->var.bits_per_pixel / 8; in savagefb_set_fix()
1494 if (info->var.bits_per_pixel == 8) { in savagefb_set_fix()
1507 struct fb_var_screeninfo *var = &info->var; in savagefb_set_par() local
1511 err = savagefb_decode_var(var, par, &par->state); in savagefb_set_par()
1516 if (var->bits_per_pixel > 24) in savagefb_set_par()
1518 else if (var->bits_per_pixel >= 24) in savagefb_set_par()
1520 else if ((var->bits_per_pixel > 8) && (var->bits_per_pixel < 24)) in savagefb_set_par()
1522 else if (var->bits_per_pixel <= 8) in savagefb_set_par()
1542 static int savagefb_pan_display(struct fb_var_screeninfo *var, in savagefb_pan_display() argument
1548 base = (var->yoffset * info->fix.line_length in savagefb_pan_display()
1549 + (var->xoffset & ~1) * ((info->var.bits_per_pixel+7) / 8)) >> 2; in savagefb_pan_display()
2143 info->var.nonstd = 0; in savage_init_fb_info()
2144 info->var.activate = FB_ACTIVATE_NOW; in savage_init_fb_info()
2145 info->var.width = -1; in savage_init_fb_info()
2146 info->var.height = -1; in savage_init_fb_info()
2147 info->var.accel_flags = 0; in savage_init_fb_info()
2233 info->var = savagefb_var800x600x8; in savagefb_probe()
2246 else if (fb_find_mode(&info->var, info, NULL, NULL, 0, in savagefb_probe()
2248 info->var = savagefb_var800x600x8; in savagefb_probe()
2252 fb_find_mode(&info->var, info, mode_option, in savagefb_probe()
2259 savage_update_var(&info->var, mode); in savagefb_probe()
2263 lpitch = info->var.xres_virtual*((info->var.bits_per_pixel + 7) >> 3); in savagefb_probe()
2264 info->var.yres_virtual = info->fix.smem_len/lpitch; in savagefb_probe()
2266 if (info->var.yres_virtual < info->var.yres) { in savagefb_probe()
2276 if (info->var.yres_virtual > 0x1000) in savagefb_probe()
2277 info->var.yres_virtual = 0x1000; in savagefb_probe()
2279 if (info->var.xres_virtual > 0x1000) in savagefb_probe()
2280 info->var.xres_virtual = 0x1000; in savagefb_probe()
2282 savagefb_check_var(&info->var, info); in savagefb_probe()
2291 h_sync = 1953125000 / info->var.pixclock; in savagefb_probe()
2292 h_sync = h_sync * 512 / (info->var.xres + info->var.left_margin + in savagefb_probe()
2293 info->var.right_margin + in savagefb_probe()
2294 info->var.hsync_len); in savagefb_probe()
2295 v_sync = h_sync / (info->var.yres + info->var.upper_margin + in savagefb_probe()
2296 info->var.lower_margin + info->var.vsync_len); in savagefb_probe()
2301 info->var.xres, info->var.yres, in savagefb_probe()