Lines Matching refs:var

94 static int i810fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info);
871 static void i810_round_off(struct fb_var_screeninfo *var) in i810_round_off() argument
879 xres = var->xres; in i810_round_off()
880 yres = var->yres; in i810_round_off()
881 vxres = var->xres_virtual; in i810_round_off()
882 vyres = var->yres_virtual; in i810_round_off()
884 var->bits_per_pixel += 7; in i810_round_off()
885 var->bits_per_pixel &= ~7; in i810_round_off()
887 if (var->bits_per_pixel < 8) in i810_round_off()
888 var->bits_per_pixel = 8; in i810_round_off()
889 if (var->bits_per_pixel > 32) in i810_round_off()
890 var->bits_per_pixel = 32; in i810_round_off()
911 if (var->bits_per_pixel == 32) in i810_round_off()
912 var->accel_flags = 0; in i810_round_off()
915 var->left_margin = (var->left_margin + 4) & ~7; in i810_round_off()
916 var->right_margin = (var->right_margin + 4) & ~7; in i810_round_off()
917 var->hsync_len = (var->hsync_len + 4) & ~7; in i810_round_off()
919 if (var->vmode & FB_VMODE_INTERLACED) { in i810_round_off()
920 if (!((yres + var->upper_margin + var->vsync_len + in i810_round_off()
921 var->lower_margin) & 1)) in i810_round_off()
922 var->upper_margin++; in i810_round_off()
925 var->xres = xres; in i810_round_off()
926 var->yres = yres; in i810_round_off()
927 var->xres_virtual = vxres; in i810_round_off()
928 var->yres_virtual = vyres; in i810_round_off()
940 static void set_color_bitfields(struct fb_var_screeninfo *var) in set_color_bitfields() argument
942 switch (var->bits_per_pixel) { in set_color_bitfields()
944 var->red.offset = 0; in set_color_bitfields()
945 var->red.length = 8; in set_color_bitfields()
946 var->green.offset = 0; in set_color_bitfields()
947 var->green.length = 8; in set_color_bitfields()
948 var->blue.offset = 0; in set_color_bitfields()
949 var->blue.length = 8; in set_color_bitfields()
950 var->transp.offset = 0; in set_color_bitfields()
951 var->transp.length = 0; in set_color_bitfields()
954 var->green.length = (var->green.length == 5) ? 5 : 6; in set_color_bitfields()
955 var->red.length = 5; in set_color_bitfields()
956 var->blue.length = 5; in set_color_bitfields()
957 var->transp.length = 6 - var->green.length; in set_color_bitfields()
958 var->blue.offset = 0; in set_color_bitfields()
959 var->green.offset = 5; in set_color_bitfields()
960 var->red.offset = 5 + var->green.length; in set_color_bitfields()
961 var->transp.offset = (5 + var->red.offset) & 15; in set_color_bitfields()
965 var->red.offset = 16; in set_color_bitfields()
966 var->red.length = 8; in set_color_bitfields()
967 var->green.offset = 8; in set_color_bitfields()
968 var->green.length = 8; in set_color_bitfields()
969 var->blue.offset = 0; in set_color_bitfields()
970 var->blue.length = 8; in set_color_bitfields()
971 var->transp.length = var->bits_per_pixel - 24; in set_color_bitfields()
972 var->transp.offset = (var->transp.length) ? 24 : 0; in set_color_bitfields()
975 var->red.msb_right = 0; in set_color_bitfields()
976 var->green.msb_right = 0; in set_color_bitfields()
977 var->blue.msb_right = 0; in set_color_bitfields()
978 var->transp.msb_right = 0; in set_color_bitfields()
991 static int i810_check_params(struct fb_var_screeninfo *var, in i810_check_params() argument
996 u32 vyres = var->yres_virtual, vxres = var->xres_virtual; in i810_check_params()
1001 line_length = get_line_length(par, vxres, var->bits_per_pixel); in i810_check_params()
1006 if (vyres < var->yres) { in i810_check_params()
1007 vyres = info->var.yres; in i810_check_params()
1009 vxres /= var->bits_per_pixel >> 3; in i810_check_params()
1011 var->bits_per_pixel); in i810_check_params()
1012 vidmem = line_length * info->var.yres; in i810_check_params()
1013 if (vxres < var->xres) { in i810_check_params()
1018 var->bits_per_pixel); in i810_check_params()
1024 var->xres_virtual = vxres; in i810_check_params()
1025 var->yres_virtual = vyres; in i810_check_params()
1030 switch (var->bits_per_pixel) { in i810_check_params()
1045 if (!fb_validate_mode(var, info)) in i810_check_params()
1050 !fb_get_mode(FB_MAXTIMINGS, 0, var, info)) in i810_check_params()
1056 mode = fb_find_best_mode(var, &info->modelist); in i810_check_params()
1058 fb_videomode_to_var(var, mode); in i810_check_params()
1064 if (fb_get_mode(FB_MAXTIMINGS, 0, var, info)) { in i810_check_params()
1103 switch (info->var.bits_per_pixel) { in encode_fix()
1110 if (info->var.nonstd) in encode_fix()
1136 static void decode_var(const struct fb_var_screeninfo *var, in decode_var() argument
1141 xres = var->xres; in decode_var()
1142 yres = var->yres; in decode_var()
1143 vxres = var->xres_virtual; in decode_var()
1144 vyres = var->yres_virtual; in decode_var()
1146 switch (var->bits_per_pixel) { in decode_var()
1154 if (var->green.length == 5) in decode_var()
1175 if (var->nonstd && var->bits_per_pixel != 8) in decode_var()
1178 i810_calc_dclk(var->pixclock, &par->regs.M, in decode_var()
1180 i810fb_encode_registers(var, par, xres, yres); in decode_var()
1182 par->watermark = i810_get_watermark(var, par); in decode_var()
1183 par->pitch = get_line_length(par, vxres, var->bits_per_pixel); in decode_var()
1207 if ((info->var.green.length == 5 && regno > 31) || in i810fb_getcolreg()
1208 (info->var.green.length == 6 && regno > 63)) in i810fb_getcolreg()
1216 info->var.green.length == 5) in i810fb_getcolreg()
1220 info->var.green.length == 6) { in i810fb_getcolreg()
1293 if ((info->var.green.length == 5 && regno > 31) || in i810fb_setcolreg()
1294 (info->var.green.length == 6 && regno > 63)) in i810fb_setcolreg()
1298 if (info->var.grayscale) in i810fb_setcolreg()
1306 info->var.green.length == 5) { in i810fb_setcolreg()
1311 info->var.green.length == 6) { in i810fb_setcolreg()
1332 switch (info->var.bits_per_pixel) { in i810fb_setcolreg()
1335 if (info->var.green.length == 5) in i810fb_setcolreg()
1344 if (info->var.green.length == 5) { in i810fb_setcolreg()
1376 static int i810fb_pan_display(struct fb_var_screeninfo *var, in i810fb_pan_display() argument
1382 total = var->xoffset * par->depth + in i810fb_pan_display()
1383 var->yoffset * info->fix.line_length; in i810fb_pan_display()
1438 decode_var(&info->var, par); in i810fb_set_par()
1443 if (info->var.accel_flags && !(par->dev_flags & LOCKUP)) { in i810fb_set_par()
1455 static int i810fb_check_var(struct fb_var_screeninfo *var, in i810fb_check_var() argument
1461 var->vmode &= ~FB_VMODE_MASK; in i810fb_check_var()
1462 var->vmode |= FB_VMODE_NONINTERLACED; in i810fb_check_var()
1464 if (var->vmode & FB_VMODE_DOUBLE) { in i810fb_check_var()
1465 var->vmode &= ~FB_VMODE_MASK; in i810fb_check_var()
1466 var->vmode |= FB_VMODE_NONINTERLACED; in i810fb_check_var()
1469 i810_round_off(var); in i810fb_check_var()
1470 if ((err = i810_check_params(var, info))) in i810fb_check_var()
1473 i810fb_fill_var_timings(var); in i810fb_check_var()
1474 set_color_bitfields(var); in i810fb_check_var()
1499 tmp = (cursor->image.dx - info->var.xoffset) & 0xffff; in i810fb_cursor()
1500 tmp |= (cursor->image.dy - info->var.yoffset) << 16; in i810fb_cursor()
1787 info->var.xres = xres; in i810_init_defaults()
1789 info->var.xres = 640; in i810_init_defaults()
1792 info->var.yres = yres; in i810_init_defaults()
1794 info->var.yres = 480; in i810_init_defaults()
1797 vyres = (vram << 20)/(info->var.xres*bpp >> 3); in i810_init_defaults()
1799 info->var.yres_virtual = vyres; in i810_init_defaults()
1800 info->var.bits_per_pixel = bpp; in i810_init_defaults()
1803 info->var.nonstd = 1; in i810_init_defaults()
1806 info->var.accel_flags = 1; in i810_init_defaults()
1899 struct fb_var_screeninfo var; in i810fb_find_init_mode() local
1910 var = info->var; in i810fb_find_init_mode()
1934 if ((m = fb_find_best_mode(&var, &info->modelist))) { in i810fb_find_init_mode()
1946 fb_videomode_to_var(&var, &mode); in i810fb_find_init_mode()
1950 fb_find_mode(&var, info, mode_option, specs->modedb, in i810fb_find_init_mode()
1952 info->var.bits_per_pixel); in i810fb_find_init_mode()
1954 info->var = var; in i810fb_find_init_mode()
2055 if ((err = info->fbops->fb_check_var(&info->var, info))) { in i810fb_init_pci()
2060 fb_var_to_videomode(&mode, &info->var); in i810fb_init_pci()
2073 pixclock = 1000000000/(info->var.pixclock); in i810fb_init_pci()
2075 hfreq = pixclock/(info->var.xres + info->var.left_margin + in i810fb_init_pci()
2076 info->var.hsync_len + info->var.right_margin); in i810fb_init_pci()
2077 vfreq = hfreq/(info->var.yres + info->var.upper_margin + in i810fb_init_pci()
2078 info->var.vsync_len + info->var.lower_margin); in i810fb_init_pci()
2089 info->monspecs.vfmax, info->var.xres, in i810fb_init_pci()
2090 info->var.yres, info->var.bits_per_pixel, vfreq); in i810fb_init_pci()