Home | History | Annotate | Download | only in drm

Lines Matching defs:helper

8  * DRM framebuffer helper functions
102 * The fb helper functions are useful to provide an fbdev on top of a drm kernel
104 * helper functions used by many drivers to implement the kernel mode setting
114 * They should also notify the fb helper code from updates to the output
121 * All other functions exported by the fb helper library can be used to
126 * helper must be called first to initialize the minimum required to make
131 * encoders and connectors. To finish up the fbdev helper initialization, the
166 * @info: fbdev registered by the helper
168 int drm_fb_helper_debug_enter_fb(struct drm_fb_helper *helper)
173 list_for_each_entry(helper, &kernel_fb_helper_list, kernel_fb_list) {
174 drm_client_for_each_modeset_unlocked(mode_set, &helper->client) {
199 * @info: fbdev registered by the helper
201 int drm_fb_helper_debug_leave_fb(struct drm_fb_helper *helper)
203 struct drm_client_dev *client = &helper->client;
204 struct drm_device *dev = helper->dev;
240 * @fb_helper: driver-allocated fbdev helper, can be NULL
243 * when implementing an fbcon on top of kms using this helper. This ensures that
287 * restore fbcon display for all kms driver's using this helper, used for sysrq
293 struct drm_fb_helper *helper;
298 list_for_each_entry(helper, &kernel_fb_helper_list, kernel_fb_list) {
299 struct drm_device *dev = helper->dev;
304 mutex_lock(&helper->lock);
305 ret = drm_client_modeset_commit_force(&helper->client);
308 mutex_unlock(&helper->lock);
350 * @info: fbdev registered by the helper
387 struct drm_fb_helper *helper = container_of(work, struct drm_fb_helper,
391 fb_set_suspend(helper->fbdev, 0);
418 struct drm_fb_helper *helper = container_of(work, struct drm_fb_helper,
420 struct drm_clip_rect *clip = &helper->dirty_clip;
425 spin_lock_irqsave(&helper->dirty_lock, flags);
429 spin_unlock_irqrestore(&helper->dirty_lock, flags);
435 if (helper->buffer) {
436 vaddr = drm_client_buffer_vmap(helper->buffer);
439 drm_fb_helper_dirty_blit_real(helper, &clip_copy);
441 if (helper->fb->funcs->dirty)
442 helper->fb->funcs->dirty(helper->fb, NULL, 0, 0,
445 if (helper->buffer)
446 drm_client_buffer_vunmap(helper->buffer);
453 * @helper: driver-allocated fbdev helper structure to set up
454 * @funcs: pointer to structure of functions associate with this helper
456 * Sets up the bare minimum to make the framebuffer helper usable. This is
459 void drm_fb_helper_prepare(struct drm_device *dev, struct drm_fb_helper *helper,
462 INIT_LIST_HEAD(&helper->kernel_fb_list);
463 spin_lock_init(&helper->dirty_lock);
464 INIT_WORK(&helper->resume_work, drm_fb_helper_resume_worker);
465 INIT_WORK(&helper->dirty_work, drm_fb_helper_dirty_work);
466 helper->dirty_clip.x1 = helper->dirty_clip.y1 = ~0;
467 mutex_init(&helper->lock);
468 helper->funcs = funcs;
469 helper->dev = dev;
476 * @fb_helper: driver-allocated fbdev helper structure to initialize
479 * This allocates the structures for the fbdev helper with the given limits.
526 * @fb_helper: driver-allocated fbdev helper
528 * A helper to alloc fb_info and the members cmap and apertures. Called
574 * @fb_helper: driver-allocated fbdev helper, can be NULL
596 * @fb_helper: driver-allocated fbdev helper, can be NULL
658 struct drm_fb_helper *helper = info->par;
659 struct drm_clip_rect *clip = &helper->dirty_clip;
662 if (!drm_fbdev_use_shadow_fb(helper))
665 spin_lock_irqsave(&helper->dirty_lock, flags);
670 spin_unlock_irqrestore(&helper->dirty_lock, flags);
672 schedule_work(&helper->dirty_work);
753 * @info: fbdev registered by the helper
769 * @info: fbdev registered by the helper
785 * @info: fbdev registered by the helper
801 * @info: fbdev registered by the helper
817 * @info: fbdev registered by the helper
833 * @info: fbdev registered by the helper
855 * @fb_helper: driver-allocated fbdev helper, can be NULL
873 * @fb_helper: driver-allocated fbdev helper, can be NULL
1116 * @info: fbdev registered by the helper
1153 * @info: fbdev registered by the helper
1157 * A helper to implement the standard fbdev ioctl. Only
1298 * @info: fbdev registered by the helper
1368 * @info: fbdev registered by the helper
1454 * @info: fbdev registered by the helper
1707 * @fb_helper: fb helper instance to use as template
1710 * Sets up the variable and fixed fbdev metainformation from the given fb helper
1886 * as a helper to setup simple default values for the fbdev info structure.
1929 * @fb_helper: driver-allocated fbdev helper, can be NULL
1986 * drm_fb_helper_lastclose - DRM driver lastclose helper for fbdev emulation
2000 * helper for fbdev emulation