Message ID | 20240812083000.337744-7-tzimmermann@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/{amdgpu,nouveau}: Remove old fbdev hooks | expand |
On Mon, Aug 12, 2024 at 10:28:27AM +0200, Thomas Zimmermann wrote: > The old callbacks lastclose and output_poll_changed are deprecated and > unused. Remove them from the documentation. > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/drm_fb_helper.c | 22 +++++++--------------- > 1 file changed, 7 insertions(+), 15 deletions(-) > > diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c > index 3f7da78849e4..fe5667477839 100644 > --- a/drivers/gpu/drm/drm_fb_helper.c > +++ b/drivers/gpu/drm/drm_fb_helper.c > @@ -89,14 +89,6 @@ static DEFINE_MUTEX(kernel_fb_helper_lock); > * interfaces. Drivers that use one of the shared memory managers, TTM, SHMEM, > * DMA, should instead use the corresponding fbdev emulation. > * > - * Existing fbdev implementations should restore the fbdev console by using > - * drm_fb_helper_lastclose() as their &drm_driver.lastclose callback. > - * They should also notify the fb helper code from updates to the output > - * configuration by using drm_fb_helper_output_poll_changed() as their > - * &drm_mode_config_funcs.output_poll_changed callback. New implementations > - * of fbdev should be build on top of struct &drm_client_funcs, which handles > - * this automatically. Setting the old callbacks should be avoided. > - * > * For suspend/resume consider using drm_mode_config_helper_suspend() and > * drm_mode_config_helper_resume() which takes care of fbdev as well. > * > @@ -260,12 +252,12 @@ __drm_fb_helper_restore_fbdev_mode_unlocked(struct drm_fb_helper *fb_helper, > * drm_fb_helper_restore_fbdev_mode_unlocked - restore fbdev configuration > * @fb_helper: driver-allocated fbdev helper, can be NULL > * > - * This should be called from driver's drm &drm_driver.lastclose callback > - * when implementing an fbcon on top of kms using this helper. This ensures that > - * the user isn't greeted with a black screen when e.g. X dies. > + * This helper should be called from fbdev emulation's &drm_client_funcs.restore > + * callback. It ensures that the user isn't greeted with a black screen when the > + * userspace compositor releases the display device. > * > - * RETURNS: > - * Zero if everything went ok, negative error code otherwise. > + * Returns: > + * 0 on success, or a negative errno code otherwise. > */ > int drm_fb_helper_restore_fbdev_mode_unlocked(struct drm_fb_helper *fb_helper) > { > @@ -2003,8 +1995,8 @@ 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(). > + * This function is obsolete. Call drm_fb_helper_restore_fbdev_mode_unlocked() > + * instead. > */ > void drm_fb_helper_lastclose(struct drm_device *dev) > { > -- > 2.46.0 >
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 3f7da78849e4..fe5667477839 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -89,14 +89,6 @@ static DEFINE_MUTEX(kernel_fb_helper_lock); * interfaces. Drivers that use one of the shared memory managers, TTM, SHMEM, * DMA, should instead use the corresponding fbdev emulation. * - * Existing fbdev implementations should restore the fbdev console by using - * drm_fb_helper_lastclose() as their &drm_driver.lastclose callback. - * They should also notify the fb helper code from updates to the output - * configuration by using drm_fb_helper_output_poll_changed() as their - * &drm_mode_config_funcs.output_poll_changed callback. New implementations - * of fbdev should be build on top of struct &drm_client_funcs, which handles - * this automatically. Setting the old callbacks should be avoided. - * * For suspend/resume consider using drm_mode_config_helper_suspend() and * drm_mode_config_helper_resume() which takes care of fbdev as well. * @@ -260,12 +252,12 @@ __drm_fb_helper_restore_fbdev_mode_unlocked(struct drm_fb_helper *fb_helper, * drm_fb_helper_restore_fbdev_mode_unlocked - restore fbdev configuration * @fb_helper: driver-allocated fbdev helper, can be NULL * - * This should be called from driver's drm &drm_driver.lastclose callback - * when implementing an fbcon on top of kms using this helper. This ensures that - * the user isn't greeted with a black screen when e.g. X dies. + * This helper should be called from fbdev emulation's &drm_client_funcs.restore + * callback. It ensures that the user isn't greeted with a black screen when the + * userspace compositor releases the display device. * - * RETURNS: - * Zero if everything went ok, negative error code otherwise. + * Returns: + * 0 on success, or a negative errno code otherwise. */ int drm_fb_helper_restore_fbdev_mode_unlocked(struct drm_fb_helper *fb_helper) { @@ -2003,8 +1995,8 @@ 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(). + * This function is obsolete. Call drm_fb_helper_restore_fbdev_mode_unlocked() + * instead. */ void drm_fb_helper_lastclose(struct drm_device *dev) {
The old callbacks lastclose and output_poll_changed are deprecated and unused. Remove them from the documentation. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- drivers/gpu/drm/drm_fb_helper.c | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-)