Lines Matching refs:var

270 static void uvesafb_setup_var(struct fb_var_screeninfo *var,  in uvesafb_setup_var()  argument
275 var->vmode = FB_VMODE_NONINTERLACED; in uvesafb_setup_var()
276 var->sync = FB_SYNC_VERT_HIGH_ACT; in uvesafb_setup_var()
278 var->xres = mode->x_res; in uvesafb_setup_var()
279 var->yres = mode->y_res; in uvesafb_setup_var()
280 var->xres_virtual = mode->x_res; in uvesafb_setup_var()
281 var->yres_virtual = (par->ypan) ? in uvesafb_setup_var()
284 var->xoffset = 0; in uvesafb_setup_var()
285 var->yoffset = 0; in uvesafb_setup_var()
286 var->bits_per_pixel = mode->bits_per_pixel; in uvesafb_setup_var()
288 if (var->bits_per_pixel == 15) in uvesafb_setup_var()
289 var->bits_per_pixel = 16; in uvesafb_setup_var()
291 if (var->bits_per_pixel > 8) { in uvesafb_setup_var()
292 var->red.offset = mode->red_off; in uvesafb_setup_var()
293 var->red.length = mode->red_len; in uvesafb_setup_var()
294 var->green.offset = mode->green_off; in uvesafb_setup_var()
295 var->green.length = mode->green_len; in uvesafb_setup_var()
296 var->blue.offset = mode->blue_off; in uvesafb_setup_var()
297 var->blue.length = mode->blue_len; in uvesafb_setup_var()
298 var->transp.offset = mode->rsvd_off; in uvesafb_setup_var()
299 var->transp.length = mode->rsvd_len; in uvesafb_setup_var()
301 var->red.offset = 0; in uvesafb_setup_var()
302 var->green.offset = 0; in uvesafb_setup_var()
303 var->blue.offset = 0; in uvesafb_setup_var()
304 var->transp.offset = 0; in uvesafb_setup_var()
306 var->red.length = 8; in uvesafb_setup_var()
307 var->green.length = 8; in uvesafb_setup_var()
308 var->blue.length = 8; in uvesafb_setup_var()
309 var->transp.length = 0; in uvesafb_setup_var()
605 fb_videomode_to_var(&info->var, mode); in uvesafb_is_valid_mode()
606 if (fb_validate_mode(&info->var, info)) in uvesafb_is_valid_mode()
732 struct fb_var_screeninfo var; in uvesafb_vbe_getmonspecs() local
737 memset(&var, 0, sizeof(var)); in uvesafb_vbe_getmonspecs()
739 var.xres = mode->x_res; in uvesafb_vbe_getmonspecs()
740 var.yres = mode->y_res; in uvesafb_vbe_getmonspecs()
742 fb_get_mode(FB_VSYNCTIMINGS | FB_IGNOREMON, 60, &var, info); in uvesafb_vbe_getmonspecs()
743 fb_var_to_videomode(&vmode, &var); in uvesafb_vbe_getmonspecs()
850 uvesafb_setup_var(&info->var, info, in uvesafb_vbe_init_mode()
853 &info->var, info); in uvesafb_vbe_init_mode()
858 info->var.pixclock = 0; in uvesafb_vbe_init_mode()
888 i = fb_find_mode(&info->var, info, mode_option, mode, i, in uvesafb_vbe_init_mode()
896 info->var.xres = 640; in uvesafb_vbe_init_mode()
897 info->var.yres = 480; in uvesafb_vbe_init_mode()
899 fb_find_best_mode(&info->var, &info->modelist); in uvesafb_vbe_init_mode()
902 fb_videomode_to_var(&info->var, mode); in uvesafb_vbe_init_mode()
905 uvesafb_setup_var(&info->var, info, in uvesafb_vbe_init_mode()
908 &info->var, info); in uvesafb_vbe_init_mode()
915 modeid = uvesafb_vbe_find_mode(par, info->var.xres, info->var.yres, in uvesafb_vbe_init_mode()
916 info->var.bits_per_pixel, UVESAFB_EXACT_RES); in uvesafb_vbe_init_mode()
921 uvesafb_setup_var(&info->var, info, &par->vbe_modes[modeid]); in uvesafb_vbe_init_mode()
930 &info->var, info); in uvesafb_vbe_init_mode()
1011 if (info->var.bits_per_pixel == 8) { in uvesafb_setcolreg()
1019 switch (info->var.bits_per_pixel) { in uvesafb_setcolreg()
1021 if (info->var.red.offset == 10) { in uvesafb_setcolreg()
1042 (red << info->var.red.offset) | in uvesafb_setcolreg()
1043 (green << info->var.green.offset) | in uvesafb_setcolreg()
1044 (blue << info->var.blue.offset); in uvesafb_setcolreg()
1057 if (info->var.bits_per_pixel == 8) { in uvesafb_setcmap()
1089 static int uvesafb_pan_display(struct fb_var_screeninfo *var, in uvesafb_pan_display() argument
1096 offset = (var->yoffset * info->fix.line_length + var->xoffset) / 4; in uvesafb_pan_display()
1232 int i, err = 0, depth = info->var.bits_per_pixel; in uvesafb_set_par()
1235 depth = info->var.red.length + info->var.green.length + in uvesafb_set_par()
1236 info->var.blue.length; in uvesafb_set_par()
1238 i = uvesafb_vbe_find_mode(par, info->var.xres, info->var.yres, depth, in uvesafb_set_par()
1253 info->var.pixclock != 0) { in uvesafb_set_par()
1261 crtc->horiz_start = info->var.xres + info->var.right_margin; in uvesafb_set_par()
1262 crtc->horiz_end = crtc->horiz_start + info->var.hsync_len; in uvesafb_set_par()
1263 crtc->horiz_total = crtc->horiz_end + info->var.left_margin; in uvesafb_set_par()
1265 crtc->vert_start = info->var.yres + info->var.lower_margin; in uvesafb_set_par()
1266 crtc->vert_end = crtc->vert_start + info->var.vsync_len; in uvesafb_set_par()
1267 crtc->vert_total = crtc->vert_end + info->var.upper_margin; in uvesafb_set_par()
1269 crtc->pixel_clock = PICOS2KHZ(info->var.pixclock) * 1000; in uvesafb_set_par()
1273 if (info->var.vmode & FB_VMODE_DOUBLE) in uvesafb_set_par()
1275 if (info->var.vmode & FB_VMODE_INTERLACED) in uvesafb_set_par()
1277 if (!(info->var.sync & FB_SYNC_HOR_HIGH_ACT)) in uvesafb_set_par()
1279 if (!(info->var.sync & FB_SYNC_VERT_HIGH_ACT)) in uvesafb_set_par()
1302 info->var.pixclock = 0; in uvesafb_set_par()
1329 info->fix.visual = (info->var.bits_per_pixel == 8) ? in uvesafb_set_par()
1340 static void uvesafb_check_limits(struct fb_var_screeninfo *var, in uvesafb_check_limits() argument
1350 if (!var->pixclock) in uvesafb_check_limits()
1354 fb_get_mode(FB_VSYNCTIMINGS | FB_IGNOREMON, 60, var, info); in uvesafb_check_limits()
1358 if (!fb_validate_mode(var, info)) in uvesafb_check_limits()
1361 mode = fb_find_best_mode(var, &info->modelist); in uvesafb_check_limits()
1363 if (mode->xres == var->xres && mode->yres == var->yres && in uvesafb_check_limits()
1365 fb_videomode_to_var(var, mode); in uvesafb_check_limits()
1370 if (info->monspecs.gtf && !fb_get_mode(FB_MAXTIMINGS, 0, var, info)) in uvesafb_check_limits()
1373 var->pixclock = 0; in uvesafb_check_limits()
1376 static int uvesafb_check_var(struct fb_var_screeninfo *var, in uvesafb_check_var() argument
1382 int depth = var->red.length + var->green.length + var->blue.length; in uvesafb_check_var()
1389 if (depth == 0 || abs(depth - var->bits_per_pixel) >= 8) in uvesafb_check_var()
1390 depth = var->bits_per_pixel; in uvesafb_check_var()
1392 match = uvesafb_vbe_find_mode(par, var->xres, var->yres, depth, in uvesafb_check_var()
1398 uvesafb_setup_var(var, info, mode); in uvesafb_check_var()
1405 if (var->yres * mode->bytes_per_scan_line > info->fix.smem_len in uvesafb_check_var()
1409 if ((var->vmode & FB_VMODE_DOUBLE) && in uvesafb_check_var()
1411 var->vmode &= ~FB_VMODE_DOUBLE; in uvesafb_check_var()
1413 if ((var->vmode & FB_VMODE_INTERLACED) && in uvesafb_check_var()
1415 var->vmode &= ~FB_VMODE_INTERLACED; in uvesafb_check_var()
1417 uvesafb_check_limits(var, info); in uvesafb_check_var()
1419 var->xres_virtual = var->xres; in uvesafb_check_var()
1420 var->yres_virtual = (par->ypan) ? in uvesafb_check_var()
1422 var->yres; in uvesafb_check_var()
1476 size_vmode = info->var.yres * mode->bytes_per_scan_line; in uvesafb_init_info()
1509 info->var.yres_virtual = info->fix.smem_len / in uvesafb_init_info()
1512 if (par->ypan && info->var.yres_virtual > info->var.yres) { in uvesafb_init_info()
1517 info->var.yres_virtual); in uvesafb_init_info()
1520 info->var.yres_virtual = info->var.yres; in uvesafb_init_info()