Lines Matching defs:var

36 	struct fb_var_screeninfo var;
454 static int compute_gbe_timing(struct fb_var_screeninfo *var,
479 error = var->pixclock - pixclock;
504 timing->width = var->xres;
505 timing->height = var->yres;
511 timing->htotal = var->left_margin + var->xres +
512 var->right_margin + var->hsync_len;
513 timing->vtotal = var->upper_margin + var->yres +
514 var->lower_margin + var->vsync_len;
517 timing->hblank_start = var->xres;
518 timing->vblank_start = var->yres;
520 timing->hsync_start = var->xres + var->right_margin + 1;
521 timing->hsync_end = timing->hsync_start + var->hsync_len;
523 timing->vsync_start = var->yres + var->lower_margin + 1;
524 timing->vsync_end = timing->vsync_start + var->vsync_len;
649 compute_gbe_timing(&info->var, &par->timing);
651 bytesPerPixel = info->var.bits_per_pixel / 8;
652 info->fix.line_length = info->var.xres_virtual * bytesPerPixel;
817 struct fb_var_screeninfo *var)
826 switch (var->bits_per_pixel) {
837 fix->line_length = var->xres_virtual * var->bits_per_pixel / 8;
845 * entries in the var structure). Return != 0 for invalid regno.
860 if (info->var.bits_per_pixel <= 8) {
873 switch (info->var.bits_per_pixel) {
880 (red << info->var.red.offset) |
881 (green << info->var.green.offset) |
882 (blue << info->var.blue.offset);
886 (red << info->var.red.offset) |
887 (green << info->var.green.offset) |
888 (blue << info->var.blue.offset);
897 * Check video mode validity, eventually modify var to best match.
899 static int gbefb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
906 if (var->bits_per_pixel <= 8)
907 var->bits_per_pixel = 8;
908 else if (var->bits_per_pixel <= 16)
909 var->bits_per_pixel = 16;
910 else if (var->bits_per_pixel <= 32)
911 var->bits_per_pixel = 32;
917 if ((var->xres * var->yres * var->bits_per_pixel) & 4095)
920 var->grayscale = 0; /* No grayscale for now */
922 ret = compute_gbe_timing(var, &timing);
923 var->pixclock = ret;
928 if (var->xres > var->xres_virtual || (!ywrap && !ypan))
929 var->xres_virtual = var->xres;
930 if (var->yres > var->yres_virtual || (!ywrap && !ypan))
931 var->yres_virtual = var->yres;
933 if (var->vmode & FB_VMODE_CONUPDATE) {
934 var->vmode |= FB_VMODE_YWRAP;
935 var->xoffset = info->var.xoffset;
936 var->yoffset = info->var.yoffset;
940 var->grayscale = 0;
943 line_length = var->xres_virtual * var->bits_per_pixel / 8;
944 if (line_length * var->yres_virtual > gbe_mem_size)
947 switch (var->bits_per_pixel) {
949 var->red.offset = 0;
950 var->red.length = 8;
951 var->green.offset = 0;
952 var->green.length = 8;
953 var->blue.offset = 0;
954 var->blue.length = 8;
955 var->transp.offset = 0;
956 var->transp.length = 0;
959 var->red.offset = 10;
960 var->red.length = 5;
961 var->green.offset = 5;
962 var->green.length = 5;
963 var->blue.offset = 0;
964 var->blue.length = 5;
965 var->transp.offset = 0;
966 var->transp.length = 0;
969 var->red.offset = 24;
970 var->red.length = 8;
971 var->green.offset = 16;
972 var->green.length = 8;
973 var->blue.offset = 8;
974 var->blue.length = 8;
975 var->transp.offset = 0;
976 var->transp.length = 8;
979 var->red.msb_right = 0;
980 var->green.msb_right = 0;
981 var->blue.msb_right = 0;
982 var->transp.msb_right = 0;
984 var->left_margin = timing.htotal - timing.hsync_end;
985 var->right_margin = timing.hsync_start - timing.width;
986 var->upper_margin = timing.vtotal - timing.vsync_end;
987 var->lower_margin = timing.vsync_start - timing.height;
988 var->hsync_len = timing.hsync_end - timing.hsync_start;
989 var->vsync_len = timing.vsync_end - timing.vsync_start;
1205 if (fb_find_mode(&par->var, info, mode_option, NULL, 0,
1207 par->var = *default_var;
1208 info->var = par->var;
1209 gbefb_check_var(&par->var, info);
1210 gbefb_encode_fix(&info->fix, &info->var);