[PATCH 3/6] drm/arm/mali: Use drm_mode_config_helper_suspend/resume()
Liviu Dudau
liviu.dudau at arm.com
Mon Nov 6 12:17:35 UTC 2017
On Thu, Nov 02, 2017 at 09:09:06PM +0100, Noralf Trønnes wrote:
> These helpers take care of output polling, fbdev and atomic state.
Hmm, not much useful info here, tbh. Maybe something like:
"Replace driver's code with the generic helpers that do the same thing" ?
>
> Cc: Liviu Dudau <liviu.dudau at arm.com>
> Cc: Brian Starkey <brian.starkey at arm.com>
> Signed-off-by: Noralf Trønnes <noralf at tronnes.org>
Otherwise, looks good to me. Thanks!
Reviewed-by: Liviu Dudau <liviu.dudau at arm.com>
> ---
> drivers/gpu/drm/arm/malidp_drv.c | 24 +++---------------------
> drivers/gpu/drm/arm/malidp_drv.h | 1 -
> 2 files changed, 3 insertions(+), 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/arm/malidp_drv.c b/drivers/gpu/drm/arm/malidp_drv.c
> index b8944666a18f..75f0bce33941 100644
> --- a/drivers/gpu/drm/arm/malidp_drv.c
> +++ b/drivers/gpu/drm/arm/malidp_drv.c
> @@ -27,6 +27,7 @@
> #include <drm/drm_fb_cma_helper.h>
> #include <drm/drm_gem_cma_helper.h>
> #include <drm/drm_gem_framebuffer_helper.h>
> +#include <drm/drm_modeset_helper.h>
> #include <drm/drm_of.h>
>
> #include "malidp_drv.h"
> @@ -749,34 +750,15 @@ static int malidp_platform_remove(struct platform_device *pdev)
> static int __maybe_unused malidp_pm_suspend(struct device *dev)
> {
> struct drm_device *drm = dev_get_drvdata(dev);
> - struct malidp_drm *malidp = drm->dev_private;
>
> - drm_kms_helper_poll_disable(drm);
> - console_lock();
> - drm_fbdev_cma_set_suspend(malidp->fbdev, 1);
> - console_unlock();
> - malidp->pm_state = drm_atomic_helper_suspend(drm);
> - if (IS_ERR(malidp->pm_state)) {
> - console_lock();
> - drm_fbdev_cma_set_suspend(malidp->fbdev, 0);
> - console_unlock();
> - drm_kms_helper_poll_enable(drm);
> - return PTR_ERR(malidp->pm_state);
> - }
> -
> - return 0;
> + return drm_mode_config_helper_suspend(drm);
> }
>
> static int __maybe_unused malidp_pm_resume(struct device *dev)
> {
> struct drm_device *drm = dev_get_drvdata(dev);
> - struct malidp_drm *malidp = drm->dev_private;
>
> - drm_atomic_helper_resume(drm, malidp->pm_state);
> - console_lock();
> - drm_fbdev_cma_set_suspend(malidp->fbdev, 0);
> - console_unlock();
> - drm_kms_helper_poll_enable(drm);
> + drm_mode_config_helper_resume(drm);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/arm/malidp_drv.h b/drivers/gpu/drm/arm/malidp_drv.h
> index 2e2033140efc..70ed6aeccf05 100644
> --- a/drivers/gpu/drm/arm/malidp_drv.h
> +++ b/drivers/gpu/drm/arm/malidp_drv.h
> @@ -24,7 +24,6 @@ struct malidp_drm {
> struct drm_crtc crtc;
> wait_queue_head_t wq;
> atomic_t config_valid;
> - struct drm_atomic_state *pm_state;
> u32 core_id;
> };
>
> --
> 2.14.2
>
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯
More information about the dri-devel
mailing list