This adds helpers for drivers that don't subclass drm_framebuffer and are backed by drm_gem_object(s). drm_fb_cma_helper is converted to use the helpers. In this second version I've pushed the new functions out to the cma drivers, so I could clean up the cma library. This patchset is part of a process to add a shmem gem library like the cma library. The common parts between the two goes into core or helpers. Noralf. Noralf Trønnes (22): drm: Add GEM backed framebuffer library drm/fb-cma-helper: Use drm_gem_framebuffer_helper drm/tinydrm: Use drm_gem_framebuffer_helper drm/arc: Use drm_gem_fb_create() drm/arm/hdlcd: Use drm_gem_fb_create() drm/arm/mali: Use drm_gem_fb_create() drm/atmel-hlcdc: Use drm_gem_fb_create() drm/fsl-dcu: Use drm_gem_fb_create() drm/hisilicon/kirin: Use drm_gem_fb_create() drm/imx: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb() drm/meson: Use drm_gem_fb_create() drm/mxsfb: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb() drm/pl111: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb() drm/rcar-du: Use drm_gem_fb_create() drm/shmobile: Use drm_gem_fb_create() drm/sti: Use drm_gem_fb_create() drm/stm: Use drm_gem_fb_create() drm/sun4i: Use drm_gem_fb_create() drm/tilcdc: Use drm_gem_fb_create() drm/vc4: Use drm_gem_fb_create() drm/zte: Use drm_gem_fb_create() drm/fb-cma-helper: Remove unused functions Documentation/gpu/drm-kms-helpers.rst | 9 + drivers/gpu/drm/Makefile | 2 +- drivers/gpu/drm/arc/arcpgu_drv.c | 3 +- drivers/gpu/drm/arm/hdlcd_drv.c | 3 +- drivers/gpu/drm/arm/malidp_drv.c | 3 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 2 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h | 1 + drivers/gpu/drm/drm_fb_cma_helper.c | 239 +++------------------- drivers/gpu/drm/drm_gem_framebuffer_helper.c | 252 ++++++++++++++++++++++++ drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c | 3 +- drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 3 +- drivers/gpu/drm/imx/imx-drm-core.c | 3 +- drivers/gpu/drm/imx/ipuv3-plane.c | 3 +- drivers/gpu/drm/meson/meson_drv.c | 3 +- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 5 +- drivers/gpu/drm/pl111/pl111_display.c | 3 +- drivers/gpu/drm/pl111/pl111_drv.c | 3 +- drivers/gpu/drm/rcar-du/rcar_du_kms.c | 3 +- drivers/gpu/drm/shmobile/shmob_drm_kms.c | 3 +- drivers/gpu/drm/sti/sti_drv.c | 3 +- drivers/gpu/drm/stm/drv.c | 3 +- drivers/gpu/drm/sun4i/sun4i_framebuffer.c | 3 +- drivers/gpu/drm/tilcdc/tilcdc_drv.c | 3 +- drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 3 +- drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c | 5 +- drivers/gpu/drm/tinydrm/mipi-dbi.c | 5 +- drivers/gpu/drm/tinydrm/repaper.c | 5 +- drivers/gpu/drm/vc4/vc4_kms.c | 3 +- drivers/gpu/drm/zte/zx_drm_drv.c | 3 +- include/drm/drm_fb_cma_helper.h | 13 -- include/drm/drm_framebuffer.h | 4 + include/drm/drm_gem_framebuffer_helper.h | 35 ++++ 32 files changed, 381 insertions(+), 253 deletions(-) create mode 100644 drivers/gpu/drm/drm_gem_framebuffer_helper.c create mode 100644 include/drm/drm_gem_framebuffer_helper.h -- 2.7.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel