Lines Matching refs:fb_info
44 struct fb_info *fb_info; member
71 static void xenfb_init_shared_page(struct xenfb_info *, struct fb_info *);
184 static void xenfb_deferred_io(struct fb_info *fb_info, in xenfb_deferred_io() argument
187 struct xenfb_info *info = fb_info->par; in xenfb_deferred_io()
197 y1 = beg / fb_info->fix.line_length; in xenfb_deferred_io()
198 y2 = end / fb_info->fix.line_length; in xenfb_deferred_io()
199 if (y2 >= fb_info->var.yres) in xenfb_deferred_io()
200 y2 = fb_info->var.yres - 1; in xenfb_deferred_io()
206 xenfb_refresh(info, 0, miny, fb_info->var.xres, maxy - miny + 1); in xenfb_deferred_io()
216 struct fb_info *info) in xenfb_setcolreg()
245 static void xenfb_fillrect(struct fb_info *p, const struct fb_fillrect *rect) in xenfb_fillrect()
253 static void xenfb_imageblit(struct fb_info *p, const struct fb_image *image) in xenfb_imageblit()
261 static void xenfb_copyarea(struct fb_info *p, const struct fb_copyarea *area) in xenfb_copyarea()
269 static ssize_t xenfb_write(struct fb_info *p, const char __user *buf, in xenfb_write()
281 xenfb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) in xenfb_check_var()
312 static int xenfb_set_par(struct fb_info *info) in xenfb_set_par()
368 struct fb_info *fb_info; in xenfb_probe() local
425 fb_info = framebuffer_alloc(sizeof(u32) * 256, NULL); in xenfb_probe()
426 if (fb_info == NULL) in xenfb_probe()
430 fb_info->pseudo_palette = fb_info->par; in xenfb_probe()
431 fb_info->par = info; in xenfb_probe()
433 fb_info->screen_base = info->fb; in xenfb_probe()
435 fb_info->fbops = &xenfb_fb_ops; in xenfb_probe()
436 fb_info->var.xres_virtual = fb_info->var.xres = video[KPARAM_WIDTH]; in xenfb_probe()
437 fb_info->var.yres_virtual = fb_info->var.yres = video[KPARAM_HEIGHT]; in xenfb_probe()
438 fb_info->var.bits_per_pixel = XENFB_DEPTH; in xenfb_probe()
440 fb_info->var.red = (struct fb_bitfield){16, 8, 0}; in xenfb_probe()
441 fb_info->var.green = (struct fb_bitfield){8, 8, 0}; in xenfb_probe()
442 fb_info->var.blue = (struct fb_bitfield){0, 8, 0}; in xenfb_probe()
444 fb_info->var.activate = FB_ACTIVATE_NOW; in xenfb_probe()
445 fb_info->var.height = -1; in xenfb_probe()
446 fb_info->var.width = -1; in xenfb_probe()
447 fb_info->var.vmode = FB_VMODE_NONINTERLACED; in xenfb_probe()
449 fb_info->fix.visual = FB_VISUAL_TRUECOLOR; in xenfb_probe()
450 fb_info->fix.line_length = fb_info->var.xres * XENFB_DEPTH / 8; in xenfb_probe()
451 fb_info->fix.smem_start = 0; in xenfb_probe()
452 fb_info->fix.smem_len = fb_size; in xenfb_probe()
453 strcpy(fb_info->fix.id, "xen"); in xenfb_probe()
454 fb_info->fix.type = FB_TYPE_PACKED_PIXELS; in xenfb_probe()
455 fb_info->fix.accel = FB_ACCEL_NONE; in xenfb_probe()
457 fb_info->flags = FBINFO_FLAG_DEFAULT | FBINFO_VIRTFB; in xenfb_probe()
459 ret = fb_alloc_cmap(&fb_info->cmap, 256, 0); in xenfb_probe()
461 framebuffer_release(fb_info); in xenfb_probe()
466 fb_info->fbdefio = &xenfb_defio; in xenfb_probe()
467 fb_deferred_io_init(fb_info); in xenfb_probe()
469 xenfb_init_shared_page(info, fb_info); in xenfb_probe()
477 ret = register_framebuffer(fb_info); in xenfb_probe()
482 info->fb_info = fb_info; in xenfb_probe()
488 fb_deferred_io_cleanup(fb_info); in xenfb_probe()
489 fb_dealloc_cmap(&fb_info->cmap); in xenfb_probe()
490 framebuffer_release(fb_info); in xenfb_probe()
527 xenfb_init_shared_page(info, info->fb_info); in xenfb_resume()
536 if (info->fb_info) { in xenfb_remove()
537 fb_deferred_io_cleanup(info->fb_info); in xenfb_remove()
538 unregister_framebuffer(info->fb_info); in xenfb_remove()
539 fb_dealloc_cmap(&info->fb_info->cmap); in xenfb_remove()
540 framebuffer_release(info->fb_info); in xenfb_remove()
556 struct fb_info *fb_info) in xenfb_init_shared_page() argument
567 info->page->width = fb_info->var.xres; in xenfb_init_shared_page()
568 info->page->height = fb_info->var.yres; in xenfb_init_shared_page()
569 info->page->depth = fb_info->var.bits_per_pixel; in xenfb_init_shared_page()
570 info->page->line_length = fb_info->fix.line_length; in xenfb_init_shared_page()
571 info->page->mem_length = fb_info->fix.smem_len; in xenfb_init_shared_page()