linux/drivers/gpu/drm/imx
Gabriel Krisman Bertazi e4563f6ba7 drm: Rely on mode_config data for fb_helper initialization
Instead of receiving the num_crts as a parameter, we can read it
directly from the mode_config structure.  I audited the drivers that
invoke this helper and I believe all of them initialize the mode_config
struct accordingly, prior to calling the fb_helper.

I used the following coccinelle hack to make this transformation, except
for the function headers and comment updates.  The first and second
rules are split because I couldn't find a way to remove the unused
temporary variables at the same time I removed the parameter.

// <smpl>
@r@
expression A,B,D,E;
identifier C;
@@
(
- drm_fb_helper_init(A,B,C,D)
+ drm_fb_helper_init(A,B,D)
|
- drm_fbdev_cma_init_with_funcs(A,B,C,D,E)
+ drm_fbdev_cma_init_with_funcs(A,B,D,E)
|
- drm_fbdev_cma_init(A,B,C,D)
+ drm_fbdev_cma_init(A,B,D)
)

@@
expression A,B,C,D,E;
@@
(
- drm_fb_helper_init(A,B,C,D)
+ drm_fb_helper_init(A,B,D)
|
- drm_fbdev_cma_init_with_funcs(A,B,C,D,E)
+ drm_fbdev_cma_init_with_funcs(A,B,D,E)
|
- drm_fbdev_cma_init(A,B,C,D)
+ drm_fbdev_cma_init(A,B,D)
)

@@
identifier r.C;
type T;
expression V;
@@
- T C;
<...
when != C
- C = V;
...>
// </smpl>

Changes since v1:
 - Rebased on top of the tip of drm-misc-next.
 - Remove mention to sti since a proper fix got merged.

Suggested-by: Daniel Vetter <daniel.vetter@intel.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.co.uk>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20170202162640.27261-1-krisman@collabora.co.uk
2017-02-02 19:12:00 +01:00
..
Kconfig drm/imx: make fbdev support really optional 2016-07-18 09:11:36 +02:00
Makefile drm: imx: imx-hdmi: move imx-hdmi to bridge/dw_hdmi 2015-01-07 18:31:56 +01:00
dw_hdmi-imx.c drm: bridge: dw-hdmi: Move IRQ and IO resource allocation to common code 2017-01-18 09:29:32 +05:30
imx-drm-core.c drm: Rely on mode_config data for fb_helper initialization 2017-02-02 19:12:00 +01:00
imx-drm.h drm/imx: Remove imx_drm_handle_vblank() 2016-08-08 11:44:20 +02:00
imx-ldb.c drm: bridge: Detach bridge from encoder at encoder cleanup time 2016-12-18 16:32:49 +05:30
imx-tve.c drm/imx: imx-tve: Remove unused variable 2017-01-05 09:44:20 +01:00
ipuv3-crtc.c drm/imx: disable planes before DC 2016-11-09 10:35:50 +01:00
ipuv3-plane.c drm: Replace 'format->format' comparisons to just 'format' comparisons 2016-12-15 14:55:34 +02:00
ipuv3-plane.h drm/imx: atomic phase 3 step 1: Use atomic configuration 2016-07-12 18:24:03 +02:00
parallel-display.c drm: bridge: Detach bridge from encoder at encoder cleanup time 2016-12-18 16:32:49 +05:30