Lines Matching refs:var

249 static int imxfb_activate_var(struct fb_var_screeninfo *var,
300 if (info->var.grayscale) in imxfb_setcolreg()
313 val = chan_to_field(red, &info->var.red); in imxfb_setcolreg()
314 val |= chan_to_field(green, &info->var.green); in imxfb_setcolreg()
315 val |= chan_to_field(blue, &info->var.blue); in imxfb_setcolreg()
352 static int imxfb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) in imxfb_check_var() argument
361 if (var->xres < MIN_XRES) in imxfb_check_var()
362 var->xres = MIN_XRES; in imxfb_check_var()
363 if (var->yres < MIN_YRES) in imxfb_check_var()
364 var->yres = MIN_YRES; in imxfb_check_var()
370 var->xres = imxfb_mode->mode.xres; in imxfb_check_var()
371 var->yres = imxfb_mode->mode.yres; in imxfb_check_var()
372 var->bits_per_pixel = imxfb_mode->bpp; in imxfb_check_var()
373 var->pixclock = imxfb_mode->mode.pixclock; in imxfb_check_var()
374 var->hsync_len = imxfb_mode->mode.hsync_len; in imxfb_check_var()
375 var->left_margin = imxfb_mode->mode.left_margin; in imxfb_check_var()
376 var->right_margin = imxfb_mode->mode.right_margin; in imxfb_check_var()
377 var->vsync_len = imxfb_mode->mode.vsync_len; in imxfb_check_var()
378 var->upper_margin = imxfb_mode->mode.upper_margin; in imxfb_check_var()
379 var->lower_margin = imxfb_mode->mode.lower_margin; in imxfb_check_var()
380 var->sync = imxfb_mode->mode.sync; in imxfb_check_var()
381 var->xres_virtual = max(var->xres_virtual, var->xres); in imxfb_check_var()
382 var->yres_virtual = max(var->yres_virtual, var->yres); in imxfb_check_var()
384 pr_debug("var->bits_per_pixel=%d\n", var->bits_per_pixel); in imxfb_check_var()
388 tmp = var->pixclock * (unsigned long long)lcd_clk; in imxfb_check_var()
403 switch (var->bits_per_pixel) { in imxfb_check_var()
440 var->red = rgb->red; in imxfb_check_var()
441 var->green = rgb->green; in imxfb_check_var()
442 var->blue = rgb->blue; in imxfb_check_var()
443 var->transp = rgb->transp; in imxfb_check_var()
446 var->red.length, var->green.length, var->blue.length, in imxfb_check_var()
447 var->transp.length); in imxfb_check_var()
450 var->red.offset, var->green.offset, var->blue.offset, in imxfb_check_var()
451 var->transp.offset); in imxfb_check_var()
463 struct fb_var_screeninfo *var = &info->var; in imxfb_set_par() local
465 if (var->bits_per_pixel == 16 || var->bits_per_pixel == 32) in imxfb_set_par()
478 info->fix.line_length = var->xres_virtual * var->bits_per_pixel / 8; in imxfb_set_par()
479 fbi->palette_size = var->bits_per_pixel == 8 ? 256 : 16; in imxfb_set_par()
481 imxfb_activate_var(var, info); in imxfb_set_par()
586 static int imxfb_activate_var(struct fb_var_screeninfo *var, struct fb_info *info) in imxfb_activate_var() argument
592 var->xres, var->hsync_len, in imxfb_activate_var()
593 var->left_margin, var->right_margin); in imxfb_activate_var()
595 var->yres, var->vsync_len, in imxfb_activate_var()
596 var->upper_margin, var->lower_margin); in imxfb_activate_var()
599 if (var->xres < 16 || var->xres > 1024) in imxfb_activate_var()
601 info->fix.id, var->xres); in imxfb_activate_var()
602 if (var->hsync_len < 1 || var->hsync_len > 64) in imxfb_activate_var()
604 info->fix.id, var->hsync_len); in imxfb_activate_var()
605 if (var->left_margin > 255) in imxfb_activate_var()
607 info->fix.id, var->left_margin); in imxfb_activate_var()
608 if (var->right_margin > 255) in imxfb_activate_var()
610 info->fix.id, var->right_margin); in imxfb_activate_var()
611 if (var->yres < 1 || var->yres > ymax_mask) in imxfb_activate_var()
613 info->fix.id, var->yres); in imxfb_activate_var()
614 if (var->vsync_len > 100) in imxfb_activate_var()
616 info->fix.id, var->vsync_len); in imxfb_activate_var()
617 if (var->upper_margin > 63) in imxfb_activate_var()
619 info->fix.id, var->upper_margin); in imxfb_activate_var()
620 if (var->lower_margin > 255) in imxfb_activate_var()
622 info->fix.id, var->lower_margin); in imxfb_activate_var()
626 writel(VPW_VPW(var->xres * var->bits_per_pixel / 8 / 4), in imxfb_activate_var()
629 writel(HCR_H_WIDTH(var->hsync_len - 1) | in imxfb_activate_var()
630 HCR_H_WAIT_1(var->right_margin - 1) | in imxfb_activate_var()
631 HCR_H_WAIT_2(var->left_margin - 3), in imxfb_activate_var()
634 writel(VCR_V_WIDTH(var->vsync_len) | in imxfb_activate_var()
635 VCR_V_WAIT_1(var->lower_margin) | in imxfb_activate_var()
636 VCR_V_WAIT_2(var->upper_margin), in imxfb_activate_var()
639 writel(SIZE_XMAX(var->xres) | (var->yres & ymax_mask), in imxfb_activate_var()
683 info->var.nonstd = 0; in imxfb_init_fbinfo()
684 info->var.activate = FB_ACTIVATE_NOW; in imxfb_init_fbinfo()
685 info->var.height = -1; in imxfb_init_fbinfo()
686 info->var.width = -1; in imxfb_init_fbinfo()
687 info->var.accel_flags = 0; in imxfb_init_fbinfo()
688 info->var.vmode = FB_VMODE_NONINTERLACED; in imxfb_init_fbinfo()
699 info->var.grayscale = of_property_read_bool(np, in imxfb_init_fbinfo()
1017 imxfb_check_var(&info->var, info); in imxfb_probe()