Lines Matching refs:fbdev_cma
250 struct drm_fbdev_cma *fbdev_cma = to_fbdev_cma(helper); in drm_fbdev_cma_create() local
285 fbdev_cma->fb = drm_fb_cma_alloc(dev, &mode_cmd, &obj, 1); in drm_fbdev_cma_create()
286 if (IS_ERR(fbdev_cma->fb)) { in drm_fbdev_cma_create()
288 ret = PTR_ERR(fbdev_cma->fb); in drm_fbdev_cma_create()
292 fb = &fbdev_cma->fb->fb; in drm_fbdev_cma_create()
347 struct drm_fbdev_cma *fbdev_cma; in drm_fbdev_cma_init() local
351 fbdev_cma = kzalloc(sizeof(*fbdev_cma), GFP_KERNEL); in drm_fbdev_cma_init()
352 if (!fbdev_cma) { in drm_fbdev_cma_init()
357 helper = &fbdev_cma->fb_helper; in drm_fbdev_cma_init()
383 return fbdev_cma; in drm_fbdev_cma_init()
388 kfree(fbdev_cma); in drm_fbdev_cma_init()
398 void drm_fbdev_cma_fini(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_fini() argument
400 if (fbdev_cma->fb_helper.fbdev) { in drm_fbdev_cma_fini()
404 info = fbdev_cma->fb_helper.fbdev; in drm_fbdev_cma_fini()
415 if (fbdev_cma->fb) { in drm_fbdev_cma_fini()
416 drm_framebuffer_unregister_private(&fbdev_cma->fb->fb); in drm_fbdev_cma_fini()
417 drm_fb_cma_destroy(&fbdev_cma->fb->fb); in drm_fbdev_cma_fini()
420 drm_fb_helper_fini(&fbdev_cma->fb_helper); in drm_fbdev_cma_fini()
421 kfree(fbdev_cma); in drm_fbdev_cma_fini()
431 void drm_fbdev_cma_restore_mode(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_restore_mode() argument
433 if (fbdev_cma) in drm_fbdev_cma_restore_mode()
434 drm_fb_helper_restore_fbdev_mode_unlocked(&fbdev_cma->fb_helper); in drm_fbdev_cma_restore_mode()
445 void drm_fbdev_cma_hotplug_event(struct drm_fbdev_cma *fbdev_cma) in drm_fbdev_cma_hotplug_event() argument
447 if (fbdev_cma) in drm_fbdev_cma_hotplug_event()
448 drm_fb_helper_hotplug_event(&fbdev_cma->fb_helper); in drm_fbdev_cma_hotplug_event()