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()
1067 pixclock = max((u32)(PICOS2KHZ(var->pixclock) * 1000), fbi->monspecs.dclkmin); in au1200fb_fb_check_var()
1068 pixclock = min3(pixclock, fbi->monspecs.dclkmax, (u32)AU1200_LCD_MAX_CLK/2); in au1200fb_fb_check_var()
1129 static int au1200fb_fb_set_par(struct fb_info *fbi) in au1200fb_fb_set_par() argument
1131 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_set_par()
1133 au1200fb_update_fbinfo(fbi); in au1200fb_fb_set_par()
1143 unsigned blue, unsigned transp, struct fb_info *fbi) in au1200fb_fb_setcolreg() argument
1151 if (fbi->var.grayscale) { in au1200fb_fb_setcolreg()
1157 if (fbi->fix.visual == FB_VISUAL_TRUECOLOR) { in au1200fb_fb_setcolreg()
1162 palette = (u32*) fbi->pseudo_palette; in au1200fb_fb_setcolreg()
1164 red >>= (16 - fbi->var.red.length); in au1200fb_fb_setcolreg()
1165 green >>= (16 - fbi->var.green.length); in au1200fb_fb_setcolreg()
1166 blue >>= (16 - fbi->var.blue.length); in au1200fb_fb_setcolreg()
1168 value = (red << fbi->var.red.offset) | in au1200fb_fb_setcolreg()
1169 (green << fbi->var.green.offset)| in au1200fb_fb_setcolreg()
1170 (blue << fbi->var.blue.offset); in au1200fb_fb_setcolreg()
1198 static int au1200fb_fb_blank(int blank_mode, struct fb_info *fbi) in au1200fb_fb_blank() argument
1200 struct au1200fb_device *fbdev = fbi->par; in au1200fb_fb_blank()
1519 struct fb_info *fbi = fbdev->fb_info; in au1200fb_init_fbinfo() local
1522 fbi->fbops = &au1200fb_fb_ops; in au1200fb_init_fbinfo()
1530 memcpy(&fbi->monspecs, &panel->monspecs, sizeof(struct fb_monspecs)); in au1200fb_init_fbinfo()
1535 if (!fb_find_mode(&fbi->var, in au1200fb_init_fbinfo()
1536 fbi, in au1200fb_init_fbinfo()
1538 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1539 fbi->monspecs.modedb_len, in au1200fb_init_fbinfo()
1540 fbi->monspecs.modedb, in au1200fb_init_fbinfo()
1547 fbi->pseudo_palette = kcalloc(16, sizeof(u32), GFP_KERNEL); in au1200fb_init_fbinfo()
1548 if (!fbi->pseudo_palette) in au1200fb_init_fbinfo()
1551 ret = fb_alloc_cmap(&fbi->cmap, AU1200_LCD_NBR_PALETTE_ENTRIES, 0); in au1200fb_init_fbinfo()
1558 strncpy(fbi->fix.id, "AU1200", sizeof(fbi->fix.id)); in au1200fb_init_fbinfo()
1559 fbi->fix.smem_start = fbdev->fb_phys; in au1200fb_init_fbinfo()
1560 fbi->fix.smem_len = fbdev->fb_len; in au1200fb_init_fbinfo()
1561 fbi->fix.type = FB_TYPE_PACKED_PIXELS; in au1200fb_init_fbinfo()
1562 fbi->fix.xpanstep = 0; in au1200fb_init_fbinfo()
1563 fbi->fix.ypanstep = 0; in au1200fb_init_fbinfo()
1564 fbi->fix.mmio_start = 0; in au1200fb_init_fbinfo()
1565 fbi->fix.mmio_len = 0; in au1200fb_init_fbinfo()
1566 fbi->fix.accel = FB_ACCEL_NONE; in au1200fb_init_fbinfo()
1568 fbi->screen_base = (char __iomem *) fbdev->fb_mem; in au1200fb_init_fbinfo()
1570 au1200fb_update_fbinfo(fbi); in au1200fb_init_fbinfo()
1648 struct fb_info *fbi = NULL; in au1200fb_drv_probe() local
1675 fbi = framebuffer_alloc(sizeof(struct au1200fb_device), in au1200fb_drv_probe()
1677 if (!fbi) { in au1200fb_drv_probe()
1682 _au1200fb_infos[plane] = fbi; in au1200fb_drv_probe()
1683 fbdev = fbi->par; in au1200fb_drv_probe()
1684 fbdev->fb_info = fbi; in au1200fb_drv_probe()
1712 ret = register_framebuffer(fbi); in au1200fb_drv_probe()
1718 au1200fb_fb_set_par(fbi); in au1200fb_drv_probe()
1722 if (fb_prepare_logo(fbi, FB_ROTATE_UR)) { in au1200fb_drv_probe()
1724 fb_set_cmap(&fbi->cmap, fbi); in au1200fb_drv_probe()
1725 fb_show_logo(fbi, FB_ROTATE_UR); in au1200fb_drv_probe()
1749 fbi = _au1200fb_infos[plane]; in au1200fb_drv_probe()
1750 if (!fbi) in au1200fb_drv_probe()
1754 unregister_framebuffer(fbi); in au1200fb_drv_probe()
1755 if (fbi->cmap.len != 0) in au1200fb_drv_probe()
1756 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_probe()
1757 kfree(fbi->pseudo_palette); in au1200fb_drv_probe()
1759 framebuffer_release(fbi); in au1200fb_drv_probe()
1768 struct fb_info *fbi; in au1200fb_drv_remove() local
1775 fbi = _au1200fb_infos[plane]; in au1200fb_drv_remove()
1778 unregister_framebuffer(fbi); in au1200fb_drv_remove()
1779 if (fbi->cmap.len != 0) in au1200fb_drv_remove()
1780 fb_dealloc_cmap(&fbi->cmap); in au1200fb_drv_remove()
1781 kfree(fbi->pseudo_palette); in au1200fb_drv_remove()
1783 framebuffer_release(fbi); in au1200fb_drv_remove()
1807 struct fb_info *fbi; in au1200fb_drv_resume() local
1814 fbi = _au1200fb_infos[i]; in au1200fb_drv_resume()
1815 au1200fb_fb_set_par(fbi); in au1200fb_drv_resume()