[PATCH 4/7] drm/fb-helper: Update DOC with new helpers

Noralf Trønnes noralf at tronnes.org
Fri Dec 15 13:17:49 UTC 2017


Den 14.12.2017 20.10, skrev Noralf Trønnes:
> Promote new helpers for dealing with fbdev emulation.
>
> Signed-off-by: Noralf Trønnes <noralf at tronnes.org>
> ---
>   drivers/gpu/drm/drm_fb_helper.c | 22 ++++++++++------------
>   1 file changed, 10 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
> index 823fc8f50d85..14aa83579e76 100644
> --- a/drivers/gpu/drm/drm_fb_helper.c
> +++ b/drivers/gpu/drm/drm_fb_helper.c
> @@ -66,19 +66,17 @@ static DEFINE_MUTEX(kernel_fb_helper_lock);
>    * helper functions used by many drivers to implement the kernel mode setting
>    * interfaces.
>    *
> - * Initialization is done as a four-step process with drm_fb_helper_prepare(),
> - * drm_fb_helper_init(), drm_fb_helper_single_add_all_connectors() and
> - * drm_fb_helper_initial_config(). Drivers with fancier requirements than the
> - * default behaviour can override the third step with their own code.
> - * Teardown is done with drm_fb_helper_fini() after the fbdev device is
> - * unregisters using drm_fb_helper_unregister_fbi().
> + * Setup fbdev emulation by calling drm_fb_helper_fbdev_setup() and tear it
> + * down by calling drm_fb_helper_fbdev_teardown().
>    *

How about this for documenting when _setup() can't be used:

  * Setup fbdev emulation by calling drm_fb_helper_fbdev_setup() and tear it
  * down by calling drm_fb_helper_fbdev_teardown().
  *
  * Drivers that need to handle connector hotplugging (e.g. dp mst) 
can't use
  * the setup helper and will need to do the whole four-step setup 
process with
  * drm_fb_helper_prepare(), drm_fb_helper_init(),
  * drm_fb_helper_single_add_all_connectors(), enable hotplugging and
  * drm_fb_helper_initial_config() to avoid a possible race window.

Noralf.

> - * At runtime drivers should restore the fbdev console by calling
> - * drm_fb_helper_restore_fbdev_mode_unlocked() from their &drm_driver.lastclose
> - * callback.  They should also notify the fb helper code from updates to the
> - * output configuration by calling drm_fb_helper_hotplug_event(). For easier
> - * integration with the output polling code in drm_crtc_helper.c the modeset
> - * code provides a &drm_mode_config_funcs.output_poll_changed callback.
> + * At runtime drivers 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.
> + *
> + * For suspend/resume consider using drm_mode_config_helper_suspend() and
> + * drm_mode_config_helper_resume() which takes care of fbdev as well.
>    *
>    * All other functions exported by the fb helper library can be used to
>    * implement the fbdev driver interface by the driver.



More information about the dri-devel mailing list