diff options
| author | Thomas Zimmermann <tzimmermann@suse.de> | 2024-12-12 18:08:46 +0100 |
|---|---|---|
| committer | Maarten Lankhorst <dev@lankhorst.se> | 2025-03-05 21:48:49 +0100 |
| commit | 2ef5754c9649151ce438c9b30ec720840762d2a2 (patch) | |
| tree | 66302e460b71c0b96b9004b2270444a63bd6245b /include/drm | |
| parent | drm/i915/display: Remove fbdev suspend and hotplug tracking (diff) | |
| download | linux-2ef5754c9649151ce438c9b30ec720840762d2a2.tar.gz linux-2ef5754c9649151ce438c9b30ec720840762d2a2.zip | |
drm/i915/display: fbdev: Move custom restore code to new callback
i915's fbdev contains code for restoring the client's framebuffer. It
is specific to i195 and cannot be ported to the common fbdev client.
Introduce the callback struct drm_fb_helper.fb_restore and implement
it for i915. The fbdev helpers invoke the callback after restoring the
fbdev client.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241212170913.185939-6-tzimmermann@suse.de
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
Diffstat (limited to 'include/drm')
| -rw-r--r-- | include/drm/drm_fb_helper.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/drm/drm_fb_helper.h b/include/drm/drm_fb_helper.h index 8426b9921a03..a7d7a3b945ea 100644 --- a/include/drm/drm_fb_helper.h +++ b/include/drm/drm_fb_helper.h @@ -99,6 +99,19 @@ struct drm_fb_helper_funcs { * 0 on success, or an error code otherwise. */ int (*fb_dirty)(struct drm_fb_helper *helper, struct drm_clip_rect *clip); + + /** + * @fb_restore: + * + * Driver callback to restore internal fbdev state. If set, fbdev + * emulation will invoke this callback after restoring the display + * mode. + * + * Only for i915. Do not use in new code. + * + * TODO: Fix i915 to not require this callback. + */ + void (*fb_restore)(struct drm_fb_helper *helper); }; /** |
