drm/imx: Remove unused field imx_drm_device.pipes
diff mbox series

Message ID 69a927983d003e7ebfbd19cbc940c5e2a13b9473.1531828221.git.leonard.crestez@nxp.com
State Accepted
Headers show
Series
  • drm/imx: Remove unused field imx_drm_device.pipes
Related show

Commit Message

Leonard Crestez July 17, 2018, 12:11 p.m. UTC
This has been unused since commit 44b460cfe554 ("drm: imx: remove struct
imx_drm_crtc and imx_drm_crtc_helper_funcs")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
---
 drivers/gpu/drm/imx/imx-drm-core.c | 1 -
 1 file changed, 1 deletion(-)

Looking at the imx_drm_device struct it is only used to save the
drm_atomic_helper_suspend state. It seems like this could be replaced
with drm_mode_config_helper_suspend/resume and the entire struct
removed.

The only difference between imx_drm_suspend/resume and
drm_mode_config_helper_suspend/resume is that the latter also suspends
the fb_helper. This would be an improvement, right?

Comments

Philipp Zabel July 17, 2018, 1:21 p.m. UTC | #1
On Tue, 2018-07-17 at 15:11 +0300, Leonard Crestez wrote:
> This has been unused since commit 44b460cfe554 ("drm: imx: remove struct
> imx_drm_crtc and imx_drm_crtc_helper_funcs")
> 
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>

Applied to imx-drm/next, thank you.

> ---
>  drivers/gpu/drm/imx/imx-drm-core.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> Looking at the imx_drm_device struct it is only used to save the
> drm_atomic_helper_suspend state. It seems like this could be replaced
> with drm_mode_config_helper_suspend/resume and the entire struct
> removed.
> 
> The only difference between imx_drm_suspend/resume and
> drm_mode_config_helper_suspend/resume is that the latter also suspends
> the fb_helper. This would be an improvement, right?

This looks about right to me. We currently don't call the
fbdev suspend/resume notifiers at all. The correct call
would be drm_fbdev_cma_set_suspend_unlocked instead of
drm_fb_helper_set_suspend_unlocked, though.

Since drm_fb_cma_fbdev_init registers its fb_helper with the
drm_device via drm_fb_helper_init, both (currently) do exactly
the same thing.

regards
Philipp
Leonard Crestez July 17, 2018, 2:34 p.m. UTC | #2
On Tue, 2018-07-17 at 15:21 +0200, Philipp Zabel wrote:
> On Tue, 2018-07-17 at 15:11 +0300, Leonard Crestez wrote:
> > This has been unused since commit 44b460cfe554 ("drm: imx: remove struct
> > imx_drm_crtc and imx_drm_crtc_helper_funcs")
> > 
> > Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
> 
> Applied to imx-drm/next, thank you.
> 
> > ---
> >  drivers/gpu/drm/imx/imx-drm-core.c | 1 -
> >  1 file changed, 1 deletion(-)
> > 
> > Looking at the imx_drm_device struct it is only used to save the
> > drm_atomic_helper_suspend state. It seems like this could be replaced
> > with drm_mode_config_helper_suspend/resume and the entire struct
> > removed.
> > 
> > The only difference between imx_drm_suspend/resume and
> > drm_mode_config_helper_suspend/resume is that the latter also suspends
> > the fb_helper. This would be an improvement, right?
> 
> This looks about right to me. We currently don't call the
> fbdev suspend/resume notifiers at all. The correct call
> would be drm_fbdev_cma_set_suspend_unlocked instead of
> drm_fb_helper_set_suspend_unlocked, though.
> 
> Since drm_fb_cma_fbdev_init registers its fb_helper with the
> drm_device via drm_fb_helper_init, both (currently) do exactly
> the same thing.

Is drm_fbdev_cma_set_suspend expected to ever do anything extra on top
of drm_fb_helper_set_suspend? Since it only handles memory management
my answer would be "no".

Grepping for drm_fbdev_cma_set_suspend I only find two users: rcar-du
and hdlcd. The suspend/resume code in both of those drivers looks
entirely equivalent to drm_mode_config_helper_suspend/resume.

So maybe drm_fbdev_cma_set_suspend itself should be dropped in favor of
drm_mode_config_helper_suspend everywhere.

Patch
diff mbox series

diff --git a/drivers/gpu/drm/imx/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c
index 1d053bbefc02..7744e10f15b0 100644
--- a/drivers/gpu/drm/imx/imx-drm-core.c
+++ b/drivers/gpu/drm/imx/imx-drm-core.c
@@ -35,11 +35,10 @@ 
 
 #define MAX_CRTC	4
 
 struct imx_drm_device {
 	struct drm_device			*drm;
-	unsigned int				pipes;
 	struct drm_atomic_state			*state;
 };
 
 #if IS_ENABLED(CONFIG_DRM_FBDEV_EMULATION)
 static int legacyfb_depth = 16;