[RFC 0/2] atomicify fbdev stuff

Rob Clark robdclark at gmail.com
Wed Aug 19 15:45:15 PDT 2015

So the issues that Inki and Bjorn ran into with ww_acquire_fini() vs
legacy fbdev codepaths (like restore_fbdev_mode() and pan_display())
would be solved by using a single atomic update for these cases.  So
I hacked up a prototype.

(disclaimer, these are completely untested hacked-up-between-sessions-
at-conference patches.. but at least they compile ;-))

I think Daniel wanted something other than DRIVER_ATOMIC check, since
i915 currently supports atomic other than async.  Other option would
be a separate DRIVER_ATOMIC_ASYNC flag (which has some advantage, in
that we could start using atomic modeset, but not atomic pageflip,
on i915.. and perhaps finally start work on atomic xrandr).  Other
option would be to, for now, just introduce an fb_helper->use_atomic
flag, which driver could override, instead.

For now we should probably revert the ww_acquire_fini patch, and then
shoot for re-introducing it on top of these patches (hopefully working
by then) for 4.4.  And maybe in the process we can fix some i915 multi-
monitor VT switch fail.

Rob Clark (2):
  drm/fb-helper: atomic restore_fbdev_mode()..
  drm/fb-helper: atomic pan_display()..

 drivers/gpu/drm/drm_atomic_helper.c | 129 ++++++++++++++++++++--------------
 drivers/gpu/drm/drm_fb_helper.c     | 133 ++++++++++++++++++++++++++++++++++++
 include/drm/drm_atomic_helper.h     |   6 ++
 3 files changed, 215 insertions(+), 53 deletions(-)


More information about the dri-devel mailing list