Lines Matching refs:var
37 struct fb_var_screeninfo var; member
455 static int compute_gbe_timing(struct fb_var_screeninfo *var, in compute_gbe_timing() argument
480 error = var->pixclock - pixclock; in compute_gbe_timing()
505 timing->width = var->xres; in compute_gbe_timing()
506 timing->height = var->yres; in compute_gbe_timing()
512 timing->htotal = var->left_margin + var->xres + in compute_gbe_timing()
513 var->right_margin + var->hsync_len; in compute_gbe_timing()
514 timing->vtotal = var->upper_margin + var->yres + in compute_gbe_timing()
515 var->lower_margin + var->vsync_len; in compute_gbe_timing()
518 timing->hblank_start = var->xres; in compute_gbe_timing()
519 timing->vblank_start = var->yres; in compute_gbe_timing()
521 timing->hsync_start = var->xres + var->right_margin + 1; in compute_gbe_timing()
522 timing->hsync_end = timing->hsync_start + var->hsync_len; in compute_gbe_timing()
524 timing->vsync_start = var->yres + var->lower_margin + 1; in compute_gbe_timing()
525 timing->vsync_end = timing->vsync_start + var->vsync_len; in compute_gbe_timing()
650 compute_gbe_timing(&info->var, &par->timing); in gbefb_set_par()
652 bytesPerPixel = info->var.bits_per_pixel / 8; in gbefb_set_par()
653 info->fix.line_length = info->var.xres_virtual * bytesPerPixel; in gbefb_set_par()
818 struct fb_var_screeninfo *var) in gbefb_encode_fix() argument
827 switch (var->bits_per_pixel) { in gbefb_encode_fix()
838 fix->line_length = var->xres_virtual * var->bits_per_pixel / 8; in gbefb_encode_fix()
861 if (info->var.bits_per_pixel <= 8) { in gbefb_setcolreg()
874 switch (info->var.bits_per_pixel) { in gbefb_setcolreg()
881 (red << info->var.red.offset) | in gbefb_setcolreg()
882 (green << info->var.green.offset) | in gbefb_setcolreg()
883 (blue << info->var.blue.offset); in gbefb_setcolreg()
887 (red << info->var.red.offset) | in gbefb_setcolreg()
888 (green << info->var.green.offset) | in gbefb_setcolreg()
889 (blue << info->var.blue.offset); in gbefb_setcolreg()
900 static int gbefb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) in gbefb_check_var() argument
907 if (var->bits_per_pixel <= 8) in gbefb_check_var()
908 var->bits_per_pixel = 8; in gbefb_check_var()
909 else if (var->bits_per_pixel <= 16) in gbefb_check_var()
910 var->bits_per_pixel = 16; in gbefb_check_var()
911 else if (var->bits_per_pixel <= 32) in gbefb_check_var()
912 var->bits_per_pixel = 32; in gbefb_check_var()
918 if ((var->xres * var->yres * var->bits_per_pixel) & 4095) in gbefb_check_var()
921 var->grayscale = 0; /* No grayscale for now */ in gbefb_check_var()
923 ret = compute_gbe_timing(var, &timing); in gbefb_check_var()
924 var->pixclock = ret; in gbefb_check_var()
929 if (var->xres > var->xres_virtual || (!ywrap && !ypan)) in gbefb_check_var()
930 var->xres_virtual = var->xres; in gbefb_check_var()
931 if (var->yres > var->yres_virtual || (!ywrap && !ypan)) in gbefb_check_var()
932 var->yres_virtual = var->yres; in gbefb_check_var()
934 if (var->vmode & FB_VMODE_CONUPDATE) { in gbefb_check_var()
935 var->vmode |= FB_VMODE_YWRAP; in gbefb_check_var()
936 var->xoffset = info->var.xoffset; in gbefb_check_var()
937 var->yoffset = info->var.yoffset; in gbefb_check_var()
941 var->grayscale = 0; in gbefb_check_var()
944 line_length = var->xres_virtual * var->bits_per_pixel / 8; in gbefb_check_var()
945 if (line_length * var->yres_virtual > gbe_mem_size) in gbefb_check_var()
948 switch (var->bits_per_pixel) { in gbefb_check_var()
950 var->red.offset = 0; in gbefb_check_var()
951 var->red.length = 8; in gbefb_check_var()
952 var->green.offset = 0; in gbefb_check_var()
953 var->green.length = 8; in gbefb_check_var()
954 var->blue.offset = 0; in gbefb_check_var()
955 var->blue.length = 8; in gbefb_check_var()
956 var->transp.offset = 0; in gbefb_check_var()
957 var->transp.length = 0; in gbefb_check_var()
960 var->red.offset = 10; in gbefb_check_var()
961 var->red.length = 5; in gbefb_check_var()
962 var->green.offset = 5; in gbefb_check_var()
963 var->green.length = 5; in gbefb_check_var()
964 var->blue.offset = 0; in gbefb_check_var()
965 var->blue.length = 5; in gbefb_check_var()
966 var->transp.offset = 0; in gbefb_check_var()
967 var->transp.length = 0; in gbefb_check_var()
970 var->red.offset = 24; in gbefb_check_var()
971 var->red.length = 8; in gbefb_check_var()
972 var->green.offset = 16; in gbefb_check_var()
973 var->green.length = 8; in gbefb_check_var()
974 var->blue.offset = 8; in gbefb_check_var()
975 var->blue.length = 8; in gbefb_check_var()
976 var->transp.offset = 0; in gbefb_check_var()
977 var->transp.length = 8; in gbefb_check_var()
980 var->red.msb_right = 0; in gbefb_check_var()
981 var->green.msb_right = 0; in gbefb_check_var()
982 var->blue.msb_right = 0; in gbefb_check_var()
983 var->transp.msb_right = 0; in gbefb_check_var()
985 var->left_margin = timing.htotal - timing.hsync_end; in gbefb_check_var()
986 var->right_margin = timing.hsync_start - timing.width; in gbefb_check_var()
987 var->upper_margin = timing.vtotal - timing.vsync_end; in gbefb_check_var()
988 var->lower_margin = timing.vsync_start - timing.height; in gbefb_check_var()
989 var->hsync_len = timing.hsync_end - timing.hsync_start; in gbefb_check_var()
990 var->vsync_len = timing.vsync_end - timing.vsync_start; in gbefb_check_var()
1206 if (fb_find_mode(&par->var, info, mode_option, NULL, 0, in gbefb_probe()
1208 par->var = *default_var; in gbefb_probe()
1209 info->var = par->var; in gbefb_probe()
1210 gbefb_check_var(&par->var, info); in gbefb_probe()
1211 gbefb_encode_fix(&info->fix, &info->var); in gbefb_probe()