drm/fb-helper: Add .last_close and .output_poll_changed helpers
This adds helpers for the drm_driver->last_close and the drm_mode_config_funcs->output_poll_changed callbacks. Signed-off-by: Noralf Trønnes <noralf@tronnes.org> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20171030153951.56269-4-noralf@tronnes.org
This commit is contained in:
parent
29ad20b22c
commit
304a4f6acc
|
@ -2633,6 +2633,34 @@ int drm_fb_helper_hotplug_event(struct drm_fb_helper *fb_helper)
|
|||
}
|
||||
EXPORT_SYMBOL(drm_fb_helper_hotplug_event);
|
||||
|
||||
/**
|
||||
* drm_fb_helper_lastclose - DRM driver lastclose helper for fbdev emulation
|
||||
* @dev: DRM device
|
||||
*
|
||||
* This function can be used as the &drm_driver->lastclose callback for drivers
|
||||
* that only need to call drm_fb_helper_restore_fbdev_mode_unlocked().
|
||||
*/
|
||||
void drm_fb_helper_lastclose(struct drm_device *dev)
|
||||
{
|
||||
drm_fb_helper_restore_fbdev_mode_unlocked(dev->fb_helper);
|
||||
}
|
||||
EXPORT_SYMBOL(drm_fb_helper_lastclose);
|
||||
|
||||
/**
|
||||
* drm_fb_helper_output_poll_changed - DRM mode config \.output_poll_changed
|
||||
* helper for fbdev emulation
|
||||
* @dev: DRM device
|
||||
*
|
||||
* This function can be used as the
|
||||
* &drm_mode_config_funcs.output_poll_changed callback for drivers that only
|
||||
* need to call drm_fb_helper_hotplug_event().
|
||||
*/
|
||||
void drm_fb_helper_output_poll_changed(struct drm_device *dev)
|
||||
{
|
||||
drm_fb_helper_hotplug_event(dev->fb_helper);
|
||||
}
|
||||
EXPORT_SYMBOL(drm_fb_helper_output_poll_changed);
|
||||
|
||||
/* The Kconfig DRM_KMS_HELPER selects FRAMEBUFFER_CONSOLE (if !EXPERT)
|
||||
* but the module doesn't depend on any fb console symbols. At least
|
||||
* attempt to load fbcon to avoid leaving the system without a usable console.
|
||||
|
|
|
@ -310,6 +310,9 @@ drm_pick_cmdline_mode(struct drm_fb_helper_connector *fb_helper_conn);
|
|||
int drm_fb_helper_add_one_connector(struct drm_fb_helper *fb_helper, struct drm_connector *connector);
|
||||
int drm_fb_helper_remove_one_connector(struct drm_fb_helper *fb_helper,
|
||||
struct drm_connector *connector);
|
||||
|
||||
void drm_fb_helper_lastclose(struct drm_device *dev);
|
||||
void drm_fb_helper_output_poll_changed(struct drm_device *dev);
|
||||
#else
|
||||
static inline void drm_fb_helper_prepare(struct drm_device *dev,
|
||||
struct drm_fb_helper *helper,
|
||||
|
@ -507,6 +510,14 @@ drm_fb_helper_remove_one_connector(struct drm_fb_helper *fb_helper,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline void drm_fb_helper_lastclose(struct drm_device *dev)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void drm_fb_helper_output_poll_changed(struct drm_device *dev)
|
||||
{
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
static inline int
|
||||
|
|
Loading…
Reference in New Issue