Lines Matching refs:var
36 struct fb_var_screeninfo var; member
456 static int compute_gbe_timing(struct fb_var_screeninfo *var, in compute_gbe_timing() argument
481 error = var->pixclock - pixclock; in compute_gbe_timing()
506 timing->width = var->xres; in compute_gbe_timing()
507 timing->height = var->yres; in compute_gbe_timing()
513 timing->htotal = var->left_margin + var->xres + in compute_gbe_timing()
514 var->right_margin + var->hsync_len; in compute_gbe_timing()
515 timing->vtotal = var->upper_margin + var->yres + in compute_gbe_timing()
516 var->lower_margin + var->vsync_len; in compute_gbe_timing()
519 timing->hblank_start = var->xres; in compute_gbe_timing()
520 timing->vblank_start = var->yres; in compute_gbe_timing()
522 timing->hsync_start = var->xres + var->right_margin + 1; in compute_gbe_timing()
523 timing->hsync_end = timing->hsync_start + var->hsync_len; in compute_gbe_timing()
525 timing->vsync_start = var->yres + var->lower_margin + 1; in compute_gbe_timing()
526 timing->vsync_end = timing->vsync_start + var->vsync_len; in compute_gbe_timing()
651 compute_gbe_timing(&info->var, &par->timing); in gbefb_set_par()
653 bytesPerPixel = info->var.bits_per_pixel / 8; in gbefb_set_par()
654 info->fix.line_length = info->var.xres_virtual * bytesPerPixel; in gbefb_set_par()
819 struct fb_var_screeninfo *var) in gbefb_encode_fix() argument
828 switch (var->bits_per_pixel) { in gbefb_encode_fix()
839 fix->line_length = var->xres_virtual * var->bits_per_pixel / 8; in gbefb_encode_fix()
862 if (info->var.bits_per_pixel <= 8) { in gbefb_setcolreg()
875 switch (info->var.bits_per_pixel) { in gbefb_setcolreg()
882 (red << info->var.red.offset) | in gbefb_setcolreg()
883 (green << info->var.green.offset) | in gbefb_setcolreg()
884 (blue << info->var.blue.offset); in gbefb_setcolreg()
888 (red << info->var.red.offset) | in gbefb_setcolreg()
889 (green << info->var.green.offset) | in gbefb_setcolreg()
890 (blue << info->var.blue.offset); in gbefb_setcolreg()
901 static int gbefb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) in gbefb_check_var() argument
908 if (var->bits_per_pixel <= 8) in gbefb_check_var()
909 var->bits_per_pixel = 8; in gbefb_check_var()
910 else if (var->bits_per_pixel <= 16) in gbefb_check_var()
911 var->bits_per_pixel = 16; in gbefb_check_var()
912 else if (var->bits_per_pixel <= 32) in gbefb_check_var()
913 var->bits_per_pixel = 32; in gbefb_check_var()
919 if ((var->xres * var->yres * var->bits_per_pixel) & 4095) in gbefb_check_var()
922 var->grayscale = 0; /* No grayscale for now */ in gbefb_check_var()
924 ret = compute_gbe_timing(var, &timing); in gbefb_check_var()
925 var->pixclock = ret; in gbefb_check_var()
930 if (var->xres > var->xres_virtual || (!ywrap && !ypan)) in gbefb_check_var()
931 var->xres_virtual = var->xres; in gbefb_check_var()
932 if (var->yres > var->yres_virtual || (!ywrap && !ypan)) in gbefb_check_var()
933 var->yres_virtual = var->yres; in gbefb_check_var()
935 if (var->vmode & FB_VMODE_CONUPDATE) { in gbefb_check_var()
936 var->vmode |= FB_VMODE_YWRAP; in gbefb_check_var()
937 var->xoffset = info->var.xoffset; in gbefb_check_var()
938 var->yoffset = info->var.yoffset; in gbefb_check_var()
942 var->grayscale = 0; in gbefb_check_var()
945 line_length = var->xres_virtual * var->bits_per_pixel / 8; in gbefb_check_var()
946 if (line_length * var->yres_virtual > gbe_mem_size) in gbefb_check_var()
949 switch (var->bits_per_pixel) { in gbefb_check_var()
951 var->red.offset = 0; in gbefb_check_var()
952 var->red.length = 8; in gbefb_check_var()
953 var->green.offset = 0; in gbefb_check_var()
954 var->green.length = 8; in gbefb_check_var()
955 var->blue.offset = 0; in gbefb_check_var()
956 var->blue.length = 8; in gbefb_check_var()
957 var->transp.offset = 0; in gbefb_check_var()
958 var->transp.length = 0; in gbefb_check_var()
961 var->red.offset = 10; in gbefb_check_var()
962 var->red.length = 5; in gbefb_check_var()
963 var->green.offset = 5; in gbefb_check_var()
964 var->green.length = 5; in gbefb_check_var()
965 var->blue.offset = 0; in gbefb_check_var()
966 var->blue.length = 5; in gbefb_check_var()
967 var->transp.offset = 0; in gbefb_check_var()
968 var->transp.length = 0; in gbefb_check_var()
971 var->red.offset = 24; in gbefb_check_var()
972 var->red.length = 8; in gbefb_check_var()
973 var->green.offset = 16; in gbefb_check_var()
974 var->green.length = 8; in gbefb_check_var()
975 var->blue.offset = 8; in gbefb_check_var()
976 var->blue.length = 8; in gbefb_check_var()
977 var->transp.offset = 0; in gbefb_check_var()
978 var->transp.length = 8; in gbefb_check_var()
981 var->red.msb_right = 0; in gbefb_check_var()
982 var->green.msb_right = 0; in gbefb_check_var()
983 var->blue.msb_right = 0; in gbefb_check_var()
984 var->transp.msb_right = 0; in gbefb_check_var()
986 var->left_margin = timing.htotal - timing.hsync_end; in gbefb_check_var()
987 var->right_margin = timing.hsync_start - timing.width; in gbefb_check_var()
988 var->upper_margin = timing.vtotal - timing.vsync_end; in gbefb_check_var()
989 var->lower_margin = timing.vsync_start - timing.height; in gbefb_check_var()
990 var->hsync_len = timing.hsync_end - timing.hsync_start; in gbefb_check_var()
991 var->vsync_len = timing.vsync_end - timing.vsync_start; in gbefb_check_var()
1212 if (fb_find_mode(&par->var, info, mode_option, NULL, 0, in gbefb_probe()
1214 par->var = *default_var; in gbefb_probe()
1215 info->var = par->var; in gbefb_probe()
1216 gbefb_check_var(&par->var, info); in gbefb_probe()
1217 gbefb_encode_fix(&info->fix, &info->var); in gbefb_probe()