Lines Matching refs:ufbdev
211 struct udl_fbdev *ufbdev = info->par; in udl_fb_open() local
212 struct drm_device *dev = ufbdev->ufb.base.dev; in udl_fb_open()
219 ufbdev->fb_count++; in udl_fb_open()
240 info->node, user, info, ufbdev->fb_count); in udl_fb_open()
251 struct udl_fbdev *ufbdev = info->par; in udl_fb_release() local
253 ufbdev->fb_count--; in udl_fb_release()
256 if ((ufbdev->fb_count == 0) && (info->fbdefio)) { in udl_fb_release()
265 info->node, user, ufbdev->fb_count); in udl_fb_release()
357 struct udl_fbdev *ufbdev = in udlfb_create() local
359 struct drm_device *dev = ufbdev->helper.dev; in udlfb_create()
395 info->par = ufbdev; in udlfb_create()
397 ret = udl_framebuffer_init(dev, &ufbdev->ufb, &mode_cmd, obj); in udlfb_create()
401 fb = &ufbdev->ufb.base; in udlfb_create()
403 ufbdev->helper.fb = fb; in udlfb_create()
407 info->screen_base = ufbdev->ufb.obj->vmapping; in udlfb_create()
409 info->fix.smem_start = (unsigned long)ufbdev->ufb.obj->vmapping; in udlfb_create()
413 drm_fb_helper_fill_var(info, &ufbdev->helper, sizes->fb_width, sizes->fb_height); in udlfb_create()
417 ufbdev->ufb.obj->vmapping); in udlfb_create()
421 drm_gem_object_put_unlocked(&ufbdev->ufb.obj->base); in udlfb_create()
431 struct udl_fbdev *ufbdev) in udl_fbdev_destroy() argument
433 drm_fb_helper_unregister_fbi(&ufbdev->helper); in udl_fbdev_destroy()
434 drm_fb_helper_fini(&ufbdev->helper); in udl_fbdev_destroy()
435 if (ufbdev->ufb.obj) { in udl_fbdev_destroy()
436 drm_framebuffer_unregister_private(&ufbdev->ufb.base); in udl_fbdev_destroy()
437 drm_framebuffer_cleanup(&ufbdev->ufb.base); in udl_fbdev_destroy()
438 drm_gem_object_put_unlocked(&ufbdev->ufb.obj->base); in udl_fbdev_destroy()
446 struct udl_fbdev *ufbdev; in udl_fbdev_init() local
449 ufbdev = kzalloc(sizeof(struct udl_fbdev), GFP_KERNEL); in udl_fbdev_init()
450 if (!ufbdev) in udl_fbdev_init()
453 udl->fbdev = ufbdev; in udl_fbdev_init()
455 drm_fb_helper_prepare(dev, &ufbdev->helper, &udl_fb_helper_funcs); in udl_fbdev_init()
457 ret = drm_fb_helper_init(dev, &ufbdev->helper, 1); in udl_fbdev_init()
461 ret = drm_fb_helper_single_add_all_connectors(&ufbdev->helper); in udl_fbdev_init()
468 ret = drm_fb_helper_initial_config(&ufbdev->helper, bpp_sel); in udl_fbdev_init()
475 drm_fb_helper_fini(&ufbdev->helper); in udl_fbdev_init()
477 kfree(ufbdev); in udl_fbdev_init()
495 struct udl_fbdev *ufbdev; in udl_fbdev_unplug() local
499 ufbdev = udl->fbdev; in udl_fbdev_unplug()
500 drm_fb_helper_unlink_fbi(&ufbdev->helper); in udl_fbdev_unplug()