Lines Matching refs:fbdev_cma
238 struct drm_fbdev_cma *fbdev_cma = to_fbdev_cma(helper); in drm_fbdev_cma_create() local
272 fbdev_cma->fb = drm_fb_cma_alloc(dev, &mode_cmd, &obj, 1); in drm_fbdev_cma_create()
273 if (IS_ERR(fbdev_cma->fb)) { in drm_fbdev_cma_create()
275 ret = PTR_ERR(fbdev_cma->fb); in drm_fbdev_cma_create()
279 fb = &fbdev_cma->fb->fb; in drm_fbdev_cma_create()
324 struct drm_fbdev_cma *fbdev_cma; in drm_fbdev_cma_init() local
328 fbdev_cma = kzalloc(sizeof(*fbdev_cma), GFP_KERNEL); in drm_fbdev_cma_init()
329 if (!fbdev_cma) { in drm_fbdev_cma_init()
334 helper = &fbdev_cma->fb_helper; in drm_fbdev_cma_init()
360 return fbdev_cma; in drm_fbdev_cma_init()
365 kfree(fbdev_cma); in drm_fbdev_cma_init()
375 void drm_fbdev_cma_fini(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_fini() argument
377 drm_fb_helper_unregister_fbi(&fbdev_cma->fb_helper); in drm_fbdev_cma_fini()
378 drm_fb_helper_release_fbi(&fbdev_cma->fb_helper); in drm_fbdev_cma_fini()
380 if (fbdev_cma->fb) { in drm_fbdev_cma_fini()
381 drm_framebuffer_unregister_private(&fbdev_cma->fb->fb); in drm_fbdev_cma_fini()
382 drm_fb_cma_destroy(&fbdev_cma->fb->fb); in drm_fbdev_cma_fini()
385 drm_fb_helper_fini(&fbdev_cma->fb_helper); in drm_fbdev_cma_fini()
386 kfree(fbdev_cma); in drm_fbdev_cma_fini()
396 void drm_fbdev_cma_restore_mode(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_restore_mode() argument
398 if (fbdev_cma) in drm_fbdev_cma_restore_mode()
399 drm_fb_helper_restore_fbdev_mode_unlocked(&fbdev_cma->fb_helper); in drm_fbdev_cma_restore_mode()
410 void drm_fbdev_cma_hotplug_event(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_hotplug_event() argument
412 if (fbdev_cma) in drm_fbdev_cma_hotplug_event()
413 drm_fb_helper_hotplug_event(&fbdev_cma->fb_helper); in drm_fbdev_cma_hotplug_event()