Lines Matching refs:info

104 static void unifb_sync(struct fb_info *info)  in unifb_sync()  argument
115 dev_warn(info->device, "Warning: UniGFX GE time out ...\n"); in unifb_sync()
118 static void unifb_prim_fillrect(struct fb_info *info, in unifb_prim_fillrect() argument
123 int m_iBpp = info->var.bits_per_pixel; in unifb_prim_fillrect()
124 int screen_width = info->var.xres; in unifb_prim_fillrect()
146 int bottom = info->var.yres - 1; in unifb_prim_fillrect()
147 int right = info->var.xres - 1; in unifb_prim_fillrect()
162 unifb_sync(info); in unifb_prim_fillrect()
164 writel(((u32 *)(info->pseudo_palette))[fg_color], UGE_FCOLOR); in unifb_prim_fillrect()
178 static void unifb_fillrect(struct fb_info *info, in unifb_fillrect() argument
184 if (info->flags & FBINFO_HWACCEL_DISABLED) { in unifb_fillrect()
185 sys_fillrect(info, region); in unifb_fillrect()
189 vxres = info->var.xres_virtual; in unifb_fillrect()
190 vyres = info->var.yres_virtual; in unifb_fillrect()
203 unifb_prim_fillrect(info, &modded); in unifb_fillrect()
206 static void unifb_prim_copyarea(struct fb_info *info, in unifb_prim_copyarea() argument
211 int m_iBpp = info->var.bits_per_pixel; in unifb_prim_copyarea()
212 int screen_width = info->var.xres; in unifb_prim_copyarea()
236 int bottom = info->var.yres; in unifb_prim_copyarea()
237 int right = info->var.xres; in unifb_prim_copyarea()
269 unifb_sync(info); in unifb_prim_copyarea()
285 static void unifb_copyarea(struct fb_info *info, const struct fb_copyarea *area) in unifb_copyarea() argument
296 if (info->flags & FBINFO_HWACCEL_DISABLED) { in unifb_copyarea()
297 sys_copyarea(info, area); in unifb_copyarea()
301 vxres = info->var.xres_virtual; in unifb_copyarea()
302 vyres = info->var.yres_virtual; in unifb_copyarea()
318 unifb_prim_copyarea(info, &modded); in unifb_copyarea()
321 static void unifb_imageblit(struct fb_info *info, const struct fb_image *image) in unifb_imageblit() argument
323 sys_imageblit(info, image); in unifb_imageblit()
344 struct fb_info *info) in unifb_check_var() argument
355 var->xoffset = info->var.xoffset; in unifb_check_var()
356 var->yoffset = info->var.yoffset; in unifb_check_var()
468 static int unifb_set_par(struct fb_info *info) in unifb_set_par() argument
479 if (info->var.xres == unifb_modes[i].xres in unifb_set_par()
480 && info->var.yres == unifb_modes[i].yres in unifb_set_par()
481 && info->var.upper_margin == unifb_modes[i].upper_margin in unifb_set_par()
482 && info->var.lower_margin == unifb_modes[i].lower_margin in unifb_set_par()
483 && info->var.left_margin == unifb_modes[i].left_margin in unifb_set_par()
484 && info->var.right_margin == unifb_modes[i].right_margin in unifb_set_par()
485 && info->var.hsync_len == unifb_modes[i].hsync_len in unifb_set_par()
486 && info->var.vsync_len == unifb_modes[i].vsync_len) { in unifb_set_par()
493 clk_vga = clk_get(info->device, "VGA_CLK"); in unifb_set_par()
499 info->fix = unifb_fix; in unifb_set_par()
500 info->var = unifb_default; in unifb_set_par()
507 info->fix.line_length = get_line_length(info->var.xres_virtual, in unifb_set_par()
508 info->var.bits_per_pixel); in unifb_set_par()
510 hSyncStart = info->var.xres + info->var.right_margin; in unifb_set_par()
511 hSyncEnd = hSyncStart + info->var.hsync_len; in unifb_set_par()
512 hTotal = hSyncEnd + info->var.left_margin; in unifb_set_par()
514 vSyncStart = info->var.yres + info->var.lower_margin; in unifb_set_par()
515 vSyncEnd = vSyncStart + info->var.vsync_len; in unifb_set_par()
516 vTotal = vSyncEnd + info->var.upper_margin; in unifb_set_par()
518 switch (info->var.bits_per_pixel) { in unifb_set_par()
535 writel(info->fix.smem_start, UDE_FSA); in unifb_set_par()
536 writel(info->var.yres, UDE_LS); in unifb_set_par()
537 writel(get_line_length(info->var.xres, in unifb_set_par()
538 info->var.bits_per_pixel) >> 3, UDE_PS); in unifb_set_par()
540 writel((hTotal << 16) | (info->var.xres), UDE_HAT); in unifb_set_par()
541 writel(((hTotal - 1) << 16) | (info->var.xres - 1), UDE_HBT); in unifb_set_par()
543 writel((vTotal << 16) | (info->var.yres), UDE_VAT); in unifb_set_par()
544 writel(((vTotal - 1) << 16) | (info->var.yres - 1), UDE_VBT); in unifb_set_par()
558 u_int transp, struct fb_info *info) in unifb_setcolreg() argument
564 if (info->var.grayscale) { in unifb_setcolreg()
571 switch (info->fix.visual) { in unifb_setcolreg()
574 red = CNVT_TOHW(red, info->var.red.length); in unifb_setcolreg()
575 green = CNVT_TOHW(green, info->var.green.length); in unifb_setcolreg()
576 blue = CNVT_TOHW(blue, info->var.blue.length); in unifb_setcolreg()
577 transp = CNVT_TOHW(transp, info->var.transp.length); in unifb_setcolreg()
589 if (info->fix.visual == FB_VISUAL_TRUECOLOR) { in unifb_setcolreg()
595 v = (red << info->var.red.offset) | in unifb_setcolreg()
596 (green << info->var.green.offset) | in unifb_setcolreg()
597 (blue << info->var.blue.offset) | in unifb_setcolreg()
598 (transp << info->var.transp.offset); in unifb_setcolreg()
599 switch (info->var.bits_per_pixel) { in unifb_setcolreg()
605 ((u32 *) (info->pseudo_palette))[regno] = v; in unifb_setcolreg()
621 struct fb_info *info) in unifb_pan_display() argument
625 || var->yoffset >= info->var.yres_virtual in unifb_pan_display()
629 if (var->xoffset + info->var.xres > info->var.xres_virtual || in unifb_pan_display()
630 var->yoffset + info->var.yres > info->var.yres_virtual) in unifb_pan_display()
633 info->var.xoffset = var->xoffset; in unifb_pan_display()
634 info->var.yoffset = var->yoffset; in unifb_pan_display()
636 info->var.vmode |= FB_VMODE_YWRAP; in unifb_pan_display()
638 info->var.vmode &= ~FB_VMODE_YWRAP; in unifb_pan_display()
642 int unifb_mmap(struct fb_info *info, in unifb_mmap() argument
647 return vm_iomap_memory(vma, info->fix.smem_start, info->fix.smem_len); in unifb_mmap()
668 struct fb_info *info; in unifb_probe() local
687 info = framebuffer_alloc(sizeof(u32)*256, &dev->dev); in unifb_probe()
688 if (!info) in unifb_probe()
691 info->screen_base = (char __iomem *)videomemory; in unifb_probe()
692 info->fbops = &unifb_ops; in unifb_probe()
694 retval = fb_find_mode(&info->var, info, NULL, in unifb_probe()
698 info->var = unifb_default; in unifb_probe()
700 info->fix = unifb_fix; in unifb_probe()
701 info->pseudo_palette = info->par; in unifb_probe()
702 info->par = NULL; in unifb_probe()
703 info->flags = FBINFO_FLAG_DEFAULT; in unifb_probe()
705 info->fix.accel = FB_ACCEL_PUV3_UNIGFX; in unifb_probe()
708 retval = fb_alloc_cmap(&info->cmap, 256, 0); in unifb_probe()
712 retval = register_framebuffer(info); in unifb_probe()
715 platform_set_drvdata(dev, info); in unifb_probe()
718 fb_info(info, "Virtual frame buffer device, using %dM of video memory\n", in unifb_probe()
722 fb_dealloc_cmap(&info->cmap); in unifb_probe()
724 framebuffer_release(info); in unifb_probe()
731 struct fb_info *info = platform_get_drvdata(dev); in unifb_remove() local
733 if (info) { in unifb_remove()
734 unregister_framebuffer(info); in unifb_remove()
735 fb_dealloc_cmap(&info->cmap); in unifb_remove()
736 framebuffer_release(info); in unifb_remove()