Lines Matching refs:fbdev

74 	struct ht16k33_fbdev fbdev;  member
118 struct ht16k33_fbdev *fbdev = &priv->fbdev; in ht16k33_fb_queue() local
120 schedule_delayed_work(&fbdev->work, in ht16k33_fb_queue()
121 msecs_to_jiffies(HZ / fbdev->refresh_rate)); in ht16k33_fb_queue()
129 struct ht16k33_fbdev *fbdev = in ht16k33_fb_update() local
132 container_of(fbdev, struct ht16k33_priv, fbdev); in ht16k33_fb_update()
137 p1 = fbdev->cache; in ht16k33_fb_update()
138 p2 = fbdev->buffer; in ht16k33_fb_update()
152 p1 = fbdev->cache + HT16K33_FB_SIZE - 1; in ht16k33_fb_update()
153 p2 = fbdev->buffer + HT16K33_FB_SIZE - 1; in ht16k33_fb_update()
162 p1 = fbdev->cache + first; in ht16k33_fb_update()
163 p2 = fbdev->buffer + first; in ht16k33_fb_update()
226 struct page *pages = virt_to_page(priv->fbdev.buffer); in ht16k33_mmap()
397 struct ht16k33_fbdev *fbdev; in ht16k33_probe() local
416 fbdev = &priv->fbdev; in ht16k33_probe()
424 fbdev->buffer = (unsigned char *) get_zeroed_page(GFP_KERNEL); in ht16k33_probe()
425 if (!fbdev->buffer) in ht16k33_probe()
428 fbdev->cache = devm_kmalloc(&client->dev, HT16K33_FB_SIZE, GFP_KERNEL); in ht16k33_probe()
429 if (!fbdev->cache) { in ht16k33_probe()
434 fbdev->info = framebuffer_alloc(0, &client->dev); in ht16k33_probe()
435 if (!fbdev->info) { in ht16k33_probe()
441 &fbdev->refresh_rate); in ht16k33_probe()
446 fb_bl_default_curve(fbdev->info, 0, MIN_BRIGHTNESS, MAX_BRIGHTNESS); in ht16k33_probe()
448 INIT_DELAYED_WORK(&fbdev->work, ht16k33_fb_update); in ht16k33_probe()
449 fbdev->info->fbops = &ht16k33_fb_ops; in ht16k33_probe()
450 fbdev->info->screen_base = (char __iomem *) fbdev->buffer; in ht16k33_probe()
451 fbdev->info->screen_size = HT16K33_FB_SIZE; in ht16k33_probe()
452 fbdev->info->fix = ht16k33_fb_fix; in ht16k33_probe()
453 fbdev->info->var = ht16k33_fb_var; in ht16k33_probe()
454 fbdev->info->pseudo_palette = NULL; in ht16k33_probe()
455 fbdev->info->flags = FBINFO_FLAG_DEFAULT; in ht16k33_probe()
456 fbdev->info->par = priv; in ht16k33_probe()
458 err = register_framebuffer(fbdev->info); in ht16k33_probe()
498 unregister_framebuffer(fbdev->info); in ht16k33_probe()
500 framebuffer_release(fbdev->info); in ht16k33_probe()
502 free_page((unsigned long) fbdev->buffer); in ht16k33_probe()
510 struct ht16k33_fbdev *fbdev = &priv->fbdev; in ht16k33_remove() local
512 cancel_delayed_work_sync(&fbdev->work); in ht16k33_remove()
513 unregister_framebuffer(fbdev->info); in ht16k33_remove()
514 framebuffer_release(fbdev->info); in ht16k33_remove()
515 free_page((unsigned long) fbdev->buffer); in ht16k33_remove()