Lines Matching refs:fbi

1002 static void au1200fb_update_fbinfo(struct fb_info *fbi)  in au1200fb_update_fbinfo()  argument
1008 if (fbi->var.bits_per_pixel <= 8) { in au1200fb_update_fbinfo()
1010 fbi->fix.visual = FB_VISUAL_PSEUDOCOLOR; in au1200fb_update_fbinfo()
1011 fbi->fix.line_length = fbi->var.xres_virtual / in au1200fb_update_fbinfo()
1012 (8/fbi->var.bits_per_pixel); in au1200fb_update_fbinfo()
1015 fbi->fix.visual = FB_VISUAL_TRUECOLOR; in au1200fb_update_fbinfo()
1016 fbi->fix.line_length = fbi->var.xres_virtual * (fbi->var.bits_per_pixel / 8); in au1200fb_update_fbinfo()
1020 fbi->fix.visual = FB_VISUAL_MONO10; in au1200fb_update_fbinfo()
1021 fbi->fix.line_length = fbi->var.xres_virtual / 8; in au1200fb_update_fbinfo()
1024 fbi->screen_size = fbi->fix.line_length * fbi->var.yres_virtual; in au1200fb_update_fbinfo()
1025 print_dbg("line length: %d\n", fbi->fix.line_length); in au1200fb_update_fbinfo()
1026 print_dbg("bits_per_pixel: %d\n", fbi->var.bits_per_pixel); in au1200fb_update_fbinfo()
1037 struct fb_info *fbi) in au1200fb_fb_check_var() argument
1039 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_check_var()
1070 pixclock = max((u32)(PICOS2KHZ(var->pixclock) * 1000), fbi->monspecs.dclkmin); in au1200fb_fb_check_var()
1071 pixclock = min3(pixclock, fbi->monspecs.dclkmax, (u32)AU1200_LCD_MAX_CLK/2); in au1200fb_fb_check_var()
1132 static int au1200fb_fb_set_par(struct fb_info *fbi) in au1200fb_fb_set_par() argument
1134 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_set_par()
1136 au1200fb_update_fbinfo(fbi); in au1200fb_fb_set_par()
1146 unsigned blue, unsigned transp, struct fb_info *fbi) in au1200fb_fb_setcolreg() argument
1154 if (fbi->var.grayscale) { in au1200fb_fb_setcolreg()
1160 if (fbi->fix.visual == FB_VISUAL_TRUECOLOR) { in au1200fb_fb_setcolreg()
1165 palette = (u32*) fbi->pseudo_palette; in au1200fb_fb_setcolreg()
1167 red >>= (16 - fbi->var.red.length); in au1200fb_fb_setcolreg()
1168 green >>= (16 - fbi->var.green.length); in au1200fb_fb_setcolreg()
1169 blue >>= (16 - fbi->var.blue.length); in au1200fb_fb_setcolreg()
1171 value = (red << fbi->var.red.offset) | in au1200fb_fb_setcolreg()
1172 (green << fbi->var.green.offset)| in au1200fb_fb_setcolreg()
1173 (blue << fbi->var.blue.offset); in au1200fb_fb_setcolreg()
1201 static int au1200fb_fb_blank(int blank_mode, struct fb_info *fbi) in au1200fb_fb_blank() argument
1203 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_blank()
1522 struct fb_info *fbi = fbdev->fb_info; in au1200fb_init_fbinfo() local
1525 fbi->fbops = &au1200fb_fb_ops; in au1200fb_init_fbinfo()
1533 memcpy(&fbi->monspecs, &panel->monspecs, sizeof(struct fb_monspecs)); in au1200fb_init_fbinfo()
1538 if (!fb_find_mode(&fbi->var, in au1200fb_init_fbinfo()
1539 fbi, in au1200fb_init_fbinfo()
1541 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1542 fbi->monspecs.modedb_len, in au1200fb_init_fbinfo()
1543 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1550 fbi->pseudo_palette = kcalloc(16, sizeof(u32), GFP_KERNEL); in au1200fb_init_fbinfo()
1551 if (!fbi->pseudo_palette) in au1200fb_init_fbinfo()
1554 ret = fb_alloc_cmap(&fbi->cmap, AU1200_LCD_NBR_PALETTE_ENTRIES, 0); in au1200fb_init_fbinfo()
1561 strncpy(fbi->fix.id, "AU1200", sizeof(fbi->fix.id)); in au1200fb_init_fbinfo()
1562 fbi->fix.smem_start = fbdev->fb_phys; in au1200fb_init_fbinfo()
1563 fbi->fix.smem_len = fbdev->fb_len; in au1200fb_init_fbinfo()
1564 fbi->fix.type = FB_TYPE_PACKED_PIXELS; in au1200fb_init_fbinfo()
1565 fbi->fix.xpanstep = 0; in au1200fb_init_fbinfo()
1566 fbi->fix.ypanstep = 0; in au1200fb_init_fbinfo()
1567 fbi->fix.mmio_start = 0; in au1200fb_init_fbinfo()
1568 fbi->fix.mmio_len = 0; in au1200fb_init_fbinfo()
1569 fbi->fix.accel = FB_ACCEL_NONE; in au1200fb_init_fbinfo()
1571 fbi->screen_buffer = fbdev->fb_mem; in au1200fb_init_fbinfo()
1573 au1200fb_update_fbinfo(fbi); in au1200fb_init_fbinfo()
1651 struct fb_info *fbi = NULL; in au1200fb_drv_probe() local
1678 fbi = framebuffer_alloc(sizeof(struct au1200fb_device), in au1200fb_drv_probe()
1680 if (!fbi) { in au1200fb_drv_probe()
1685 _au1200fb_infos[plane] = fbi; in au1200fb_drv_probe()
1686 fbdev = fbi->par; in au1200fb_drv_probe()
1687 fbdev->fb_info = fbi; in au1200fb_drv_probe()
1715 ret = register_framebuffer(fbi); in au1200fb_drv_probe()
1721 au1200fb_fb_set_par(fbi); in au1200fb_drv_probe()
1725 if (fb_prepare_logo(fbi, FB_ROTATE_UR)) { in au1200fb_drv_probe()
1727 fb_set_cmap(&fbi->cmap, fbi); in au1200fb_drv_probe()
1728 fb_show_logo(fbi, FB_ROTATE_UR); in au1200fb_drv_probe()
1755 fbi = _au1200fb_infos[plane]; in au1200fb_drv_probe()
1756 if (!fbi) in au1200fb_drv_probe()
1760 unregister_framebuffer(fbi); in au1200fb_drv_probe()
1761 if (fbi->cmap.len != 0) in au1200fb_drv_probe()
1762 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_probe()
1763 kfree(fbi->pseudo_palette); in au1200fb_drv_probe()
1765 framebuffer_release(fbi); in au1200fb_drv_probe()
1774 struct fb_info *fbi; in au1200fb_drv_remove() local
1781 fbi = _au1200fb_infos[plane]; in au1200fb_drv_remove()
1784 unregister_framebuffer(fbi); in au1200fb_drv_remove()
1785 if (fbi->cmap.len != 0) in au1200fb_drv_remove()
1786 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_remove()
1787 kfree(fbi->pseudo_palette); in au1200fb_drv_remove()
1789 framebuffer_release(fbi); in au1200fb_drv_remove()
1811 struct fb_info *fbi; in au1200fb_drv_resume() local
1818 fbi = _au1200fb_infos[i]; in au1200fb_drv_resume()
1819 au1200fb_fb_set_par(fbi); in au1200fb_drv_resume()