diff options
author | Noralf Trønnes <noralf@tronnes.org> | 2017-11-06 20:18:08 +0100 |
---|---|---|
committer | Noralf Trønnes <noralf@tronnes.org> | 2017-11-30 18:18:08 +0100 |
commit | ca038cfb5cfa8d48b427b916efe97e711f5a18c7 (patch) | |
tree | a87d729c077cdfc1c8b426266ea43091616726f4 /include/drm | |
parent | b66d0f348624101203dbec22e45c74e1c895b881 (diff) | |
download | talos-op-linux-ca038cfb5cfa8d48b427b916efe97e711f5a18c7.tar.gz talos-op-linux-ca038cfb5cfa8d48b427b916efe97e711f5a18c7.zip |
drm/modeset-helper: Add simple modeset suspend/resume helpers
Add drm_mode_config_helper_suspend/resume() which takes care of
atomic modeset suspend/resume for simple use cases.
The suspend state is stored in struct drm_mode_config.
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20171106191812.38927-3-noralf@tronnes.org
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drm_mode_config.h | 9 | ||||
-rw-r--r-- | include/drm/drm_modeset_helper.h | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/include/drm/drm_mode_config.h b/include/drm/drm_mode_config.h index cf73c5eaab98..eb3b8dba3e2c 100644 --- a/include/drm/drm_mode_config.h +++ b/include/drm/drm_mode_config.h @@ -753,6 +753,15 @@ struct drm_mode_config { /* cursor size */ uint32_t cursor_width, cursor_height; + /** + * @suspend_state: + * + * Atomic state when suspended. + * Set by drm_mode_config_helper_suspend() and cleared by + * drm_mode_config_helper_resume(). + */ + struct drm_atomic_state *suspend_state; + const struct drm_mode_config_helper_funcs *helper_private; }; diff --git a/include/drm/drm_modeset_helper.h b/include/drm/drm_modeset_helper.h index cb0ec92e11e6..efa337f03129 100644 --- a/include/drm/drm_modeset_helper.h +++ b/include/drm/drm_modeset_helper.h @@ -34,4 +34,7 @@ void drm_helper_mode_fill_fb_struct(struct drm_device *dev, int drm_crtc_init(struct drm_device *dev, struct drm_crtc *crtc, const struct drm_crtc_funcs *funcs); +int drm_mode_config_helper_suspend(struct drm_device *dev); +int drm_mode_config_helper_resume(struct drm_device *dev); + #endif |