Lines Matching refs:fbi

1001 static void au1200fb_update_fbinfo(struct fb_info *fbi)  in au1200fb_update_fbinfo()  argument
1007 if (fbi->var.bits_per_pixel <= 8) { in au1200fb_update_fbinfo()
1009 fbi->fix.visual = FB_VISUAL_PSEUDOCOLOR; in au1200fb_update_fbinfo()
1010 fbi->fix.line_length = fbi->var.xres_virtual / in au1200fb_update_fbinfo()
1011 (8/fbi->var.bits_per_pixel); in au1200fb_update_fbinfo()
1014 fbi->fix.visual = FB_VISUAL_TRUECOLOR; in au1200fb_update_fbinfo()
1015 fbi->fix.line_length = fbi->var.xres_virtual * (fbi->var.bits_per_pixel / 8); in au1200fb_update_fbinfo()
1019 fbi->fix.visual = FB_VISUAL_MONO10; in au1200fb_update_fbinfo()
1020 fbi->fix.line_length = fbi->var.xres_virtual / 8; in au1200fb_update_fbinfo()
1023 fbi->screen_size = fbi->fix.line_length * fbi->var.yres_virtual; in au1200fb_update_fbinfo()
1024 print_dbg("line length: %d\n", fbi->fix.line_length); in au1200fb_update_fbinfo()
1025 print_dbg("bits_per_pixel: %d\n", fbi->var.bits_per_pixel); in au1200fb_update_fbinfo()
1036 struct fb_info *fbi) in au1200fb_fb_check_var() argument
1038 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_check_var()
1066 pixclock = max((u32)(PICOS2KHZ(var->pixclock) * 1000), fbi->monspecs.dclkmin); in au1200fb_fb_check_var()
1067 pixclock = min3(pixclock, fbi->monspecs.dclkmax, (u32)AU1200_LCD_MAX_CLK/2); in au1200fb_fb_check_var()
1128 static int au1200fb_fb_set_par(struct fb_info *fbi) in au1200fb_fb_set_par() argument
1130 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_set_par()
1132 au1200fb_update_fbinfo(fbi); in au1200fb_fb_set_par()
1142 unsigned blue, unsigned transp, struct fb_info *fbi) in au1200fb_fb_setcolreg() argument
1150 if (fbi->var.grayscale) { in au1200fb_fb_setcolreg()
1156 if (fbi->fix.visual == FB_VISUAL_TRUECOLOR) { in au1200fb_fb_setcolreg()
1161 palette = (u32*) fbi->pseudo_palette; in au1200fb_fb_setcolreg()
1163 red >>= (16 - fbi->var.red.length); in au1200fb_fb_setcolreg()
1164 green >>= (16 - fbi->var.green.length); in au1200fb_fb_setcolreg()
1165 blue >>= (16 - fbi->var.blue.length); in au1200fb_fb_setcolreg()
1167 value = (red << fbi->var.red.offset) | in au1200fb_fb_setcolreg()
1168 (green << fbi->var.green.offset)| in au1200fb_fb_setcolreg()
1169 (blue << fbi->var.blue.offset); in au1200fb_fb_setcolreg()
1197 static int au1200fb_fb_blank(int blank_mode, struct fb_info *fbi) in au1200fb_fb_blank() argument
1199 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_blank()
1520 struct fb_info *fbi = fbdev->fb_info; in au1200fb_init_fbinfo() local
1523 fbi->fbops = &au1200fb_fb_ops; in au1200fb_init_fbinfo()
1531 memcpy(&fbi->monspecs, &panel->monspecs, sizeof(struct fb_monspecs)); in au1200fb_init_fbinfo()
1536 if (!fb_find_mode(&fbi->var, in au1200fb_init_fbinfo()
1537 fbi, in au1200fb_init_fbinfo()
1539 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1540 fbi->monspecs.modedb_len, in au1200fb_init_fbinfo()
1541 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1548 fbi->pseudo_palette = kcalloc(16, sizeof(u32), GFP_KERNEL); in au1200fb_init_fbinfo()
1549 if (!fbi->pseudo_palette) in au1200fb_init_fbinfo()
1552 ret = fb_alloc_cmap(&fbi->cmap, AU1200_LCD_NBR_PALETTE_ENTRIES, 0); in au1200fb_init_fbinfo()
1559 strncpy(fbi->fix.id, "AU1200", sizeof(fbi->fix.id)); in au1200fb_init_fbinfo()
1560 fbi->fix.smem_start = fbdev->fb_phys; in au1200fb_init_fbinfo()
1561 fbi->fix.smem_len = fbdev->fb_len; in au1200fb_init_fbinfo()
1562 fbi->fix.type = FB_TYPE_PACKED_PIXELS; in au1200fb_init_fbinfo()
1563 fbi->fix.xpanstep = 0; in au1200fb_init_fbinfo()
1564 fbi->fix.ypanstep = 0; in au1200fb_init_fbinfo()
1565 fbi->fix.mmio_start = 0; in au1200fb_init_fbinfo()
1566 fbi->fix.mmio_len = 0; in au1200fb_init_fbinfo()
1567 fbi->fix.accel = FB_ACCEL_NONE; in au1200fb_init_fbinfo()
1569 fbi->screen_base = (char __iomem *) fbdev->fb_mem; in au1200fb_init_fbinfo()
1571 au1200fb_update_fbinfo(fbi); in au1200fb_init_fbinfo()
1649 struct fb_info *fbi = NULL; in au1200fb_drv_probe() local
1677 fbi = framebuffer_alloc(sizeof(struct au1200fb_device), in au1200fb_drv_probe()
1679 if (!fbi) { in au1200fb_drv_probe()
1684 _au1200fb_infos[plane] = fbi; in au1200fb_drv_probe()
1685 fbdev = fbi->par; in au1200fb_drv_probe()
1686 fbdev->fb_info = fbi; in au1200fb_drv_probe()
1724 ret = register_framebuffer(fbi); in au1200fb_drv_probe()
1730 au1200fb_fb_set_par(fbi); in au1200fb_drv_probe()
1734 if (fb_prepare_logo(fbi, FB_ROTATE_UR)) { in au1200fb_drv_probe()
1736 fb_set_cmap(&fbi->cmap, fbi); in au1200fb_drv_probe()
1737 fb_show_logo(fbi, FB_ROTATE_UR); in au1200fb_drv_probe()
1761 fbi = _au1200fb_infos[plane]; in au1200fb_drv_probe()
1762 if (!fbi) in au1200fb_drv_probe()
1766 unregister_framebuffer(fbi); in au1200fb_drv_probe()
1767 if (fbi->cmap.len != 0) in au1200fb_drv_probe()
1768 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_probe()
1769 kfree(fbi->pseudo_palette); in au1200fb_drv_probe()
1771 framebuffer_release(fbi); in au1200fb_drv_probe()
1780 struct fb_info *fbi; in au1200fb_drv_remove() local
1787 fbi = _au1200fb_infos[plane]; in au1200fb_drv_remove()
1790 unregister_framebuffer(fbi); in au1200fb_drv_remove()
1791 if (fbi->cmap.len != 0) in au1200fb_drv_remove()
1792 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_remove()
1793 kfree(fbi->pseudo_palette); in au1200fb_drv_remove()
1795 framebuffer_release(fbi); in au1200fb_drv_remove()
1819 struct fb_info *fbi; in au1200fb_drv_resume() local
1826 fbi = _au1200fb_infos[i]; in au1200fb_drv_resume()
1827 au1200fb_fb_set_par(fbi); in au1200fb_drv_resume()