Hi, This is a respin of the previous serie called "Support fast framebuffer panning for i.MX6" made by Stefan 6 monthes ago. The imx6 bits have been removed, and the comments that were made at that time fixed (hopefully).
Let me know what you think, Maxime Changes from v3: - Dropped the overallocation patch that has been applied - Change authorship of the second patch as suggested by Stefan, the original author - Only consider the first CRTC and ignore the ioctl argument Changes from v2: - Renamed the CONFIG_DRM_CMA_FBDEV_BUFFER_NUM to CONFIG_DRM_FBDEV_OVERALLOC, and changed it for a percentage - Moved the overallocation code into the core fbdev helpers to not rely on CMA anymore - Changed the locks taken by drm_fb_helper_ioctl to the mode_config mutex intead of calling drm_modeset_lock_all - Don't test against drm_crtc's enabled anymore, but rely on the error code of drm_crtc_vblank_get instead - Defined drm_fb_helper_ioctl when DRM_FBDEV_EMULATION is not set in order to fix a compilation error - Don't wait for all CRTC's vblank but only the one given in the ioctl argument Changes from v1: - Added drm_fb_helper_ioctl to DRM_FB_HELPER_DEFAULT_OPS - Expanded a bit the kerneldoc for drm_fb_helper_ioctl - Added some locking to drm_fb_helper_ioctl - Checked that the framebuffer is indeed attached before allowing ioctl - Added a module parameter to specify the number of framebuffers to allocate Initial cover letter: Support fast framebuffer panning for i.MX6 im currently working on supporting double/tripple buffering for the framebuffer emulation on the i.MX6. While working on it I noticed that the mainline kernel does not support some features in the generic drm framebuffer emulation for framebuffer panning and vsync synchronisation. They are needed for simple framebuffer applications and some OpenGL libraries using double buffering with FBIOPUT_VSCREENINFO, FBIO_WAITFORVSYNC and FBIOPAN_DISPLAY. Maxime Ripard (1): drm/fb-helper: implement ioctl FBIO_WAITFORVSYNC drivers/gpu/drm/drm_fb_helper.c | 68 ++++++++++++++++++++++++++++++++++- include/drm/drm_fb_helper.h | 12 +++++- 2 files changed, 79 insertions(+), 1 deletion(-) base-commit: 075ffb50cc16ab055b5d47b30163401bb356ab51 -- git-series 0.8.11