Lines Matching refs:var

43 	ustart += fb->fb.var.yoffset * fb->fb.fix.line_length;
44 lstart = ustart + fb->fb.var.yres * fb->fb.fix.line_length / 2;
123 clcdfb_set_bitfields(struct clcd_fb *fb, struct fb_var_screeninfo *var)
142 memset(&var->transp, 0, sizeof(var->transp));
144 var->red.msb_right = 0;
145 var->green.msb_right = 0;
146 var->blue.msb_right = 0;
148 switch (var->bits_per_pixel) {
160 var->red.length = var->bits_per_pixel;
161 var->red.offset = 0;
162 var->green.length = var->bits_per_pixel;
163 var->green.offset = 0;
164 var->blue.length = var->bits_per_pixel;
165 var->blue.offset = 0;
179 if (var->green.length == 4 && caps & CLCD_CAP_444)
181 if (var->green.length == 5 && caps & CLCD_CAP_5551)
183 else if (var->green.length == 6 && caps & CLCD_CAP_565)
191 var->green.length = 6;
194 var->green.length = 5;
197 var->green.length = 4;
202 if (var->green.length >= 5) {
203 var->red.length = 5;
204 var->blue.length = 5;
206 var->red.length = 4;
207 var->blue.length = 4;
218 var->red.length = 8;
219 var->green.length = 8;
220 var->blue.length = 8;
232 if (ret == 0 && var->bits_per_pixel >= 16) {
235 bgr = caps & CLCD_CAP_BGR && var->blue.offset == 0;
236 rgb = caps & CLCD_CAP_RGB && var->red.offset == 0;
247 var->blue.offset = 0;
248 var->green.offset = var->blue.offset + var->blue.length;
249 var->red.offset = var->green.offset + var->green.length;
251 var->red.offset = 0;
252 var->green.offset = var->red.offset + var->red.length;
253 var->blue.offset = var->green.offset + var->green.length;
260 static int clcdfb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
266 ret = fb->board->check(fb, var);
269 var->xres_virtual * var->bits_per_pixel / 8 *
270 var->yres_virtual > fb->fb.fix.smem_len)
274 ret = clcdfb_set_bitfields(fb, var);
284 fb->fb.fix.line_length = fb->fb.var.xres_virtual *
285 fb->fb.var.bits_per_pixel / 8;
287 if (fb->fb.var.bits_per_pixel <= 8)
341 fb->cmap[regno] = convert_bitfield(transp, &fb->fb.var.transp) |
342 convert_bitfield(blue, &fb->fb.var.blue) |
343 convert_bitfield(green, &fb->fb.var.green) |
344 convert_bitfield(red, &fb->fb.var.red);
474 fb->fb.var.xres = fb->panel->mode.xres;
475 fb->fb.var.yres = fb->panel->mode.yres;
476 fb->fb.var.xres_virtual = fb->panel->mode.xres;
477 fb->fb.var.yres_virtual = fb->panel->mode.yres;
478 fb->fb.var.bits_per_pixel = fb->panel->bpp;
479 fb->fb.var.grayscale = fb->panel->grayscale;
480 fb->fb.var.pixclock = fb->panel->mode.pixclock;
481 fb->fb.var.left_margin = fb->panel->mode.left_margin;
482 fb->fb.var.right_margin = fb->panel->mode.right_margin;
483 fb->fb.var.upper_margin = fb->panel->mode.upper_margin;
484 fb->fb.var.lower_margin = fb->panel->mode.lower_margin;
485 fb->fb.var.hsync_len = fb->panel->mode.hsync_len;
486 fb->fb.var.vsync_len = fb->panel->mode.vsync_len;
487 fb->fb.var.sync = fb->panel->mode.sync;
488 fb->fb.var.vmode = fb->panel->mode.vmode;
489 fb->fb.var.activate = FB_ACTIVATE_NOW;
490 fb->fb.var.nonstd = 0;
491 fb->fb.var.height = fb->panel->height;
492 fb->fb.var.width = fb->panel->width;
493 fb->fb.var.accel_flags = 0;
505 clcdfb_set_bitfields(fb, &fb->fb.var);
519 fb_set_var(&fb->fb, &fb->fb.var);