linux/Documentation/DocBook
Matt Roper ea2c67bb4a drm/i915: Move to atomic plane helpers (v9)
Switch plane handling to use the atomic plane helpers.  This means that
rather than provide our own implementations of .update_plane() and
.disable_plane(), we expose the lower-level check/prepare/commit/cleanup
entrypoints and let the DRM core implement update/disable for us using
those entrypoints.

The other main change that falls out of this patch is that our
drm_plane's will now always have a valid plane->state that contains the
relevant plane state (initial state is allocated at plane creation).
The base drm_plane_state pointed to holds the requested source/dest
coordinates, and the subclassed intel_plane_state holds the adjusted
values that our driver actually uses.

v2:
 - Renamed file from intel_atomic.c to intel_atomic_plane.c (Daniel)
 - Fix a copy/paste comment mistake (Bob)

v3:
 - Use prepare/cleanup functions that we've already factored out
 - Use newly refactored pre_commit/commit/post_commit to avoid sleeping
   during vblank evasion

v4:
 - Rebase to latest di-nightly requires adding an 'old_state' parameter
   to atomic_update;

v5:
 - Must have botched a rebase somewhere and lost some work.  Restore
   state 'dirty' flag to let begin/end code know which planes to
   run the pre_commit/post_commit hooks for.  This would have actually
   shown up as broken in the next commit rather than this one.

v6:
 - Squash kerneldoc patch into this one.
 - Previous patches have now already taken care of most of the
   infrastructure that used to be in this patch.  All we're adding here
   now is some thin wrappers.

v7:
 - Check return of intel_plane_duplicate_state() for allocation
   failures.

v8:
 - Drop unused drm_plane_state -> intel_plane_state cast.  (Ander)
 - Squash in actual transition to plane helpers.  Significant
   refactoring earlier in the patchset has made the combined
   prep+transition much easier to swallow than it was in earlier
   iterations. (Ander)

v9:
 - s/track_fbs/disabled_planes/ in the atomic crtc flags.  The only fb's
   we need to update frontbuffer tracking for are those on a plane about
   to be disabled (since the atomic helpers never call prepare_fb() when
   disabling a plane), so the new name more accurately describes what
   we're actually tracking.

Testcase: igt/kms_plane
Testcase: igt/kms_universal_plane
Testcase: igt/kms_cursor_crc
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2015-01-12 23:59:31 +01:00
..
media [media] DocBook media: update version number and document changes 2014-12-16 23:21:38 -02:00
.gitignore doc: Add "*.svg" to DocBook/.gitignore 2013-12-02 14:49:19 +01:00
80211.tmpl cfg80211: refactor cfg80211_can_use_iftype_chan() 2014-04-09 10:55:39 +02:00
Makefile crypto: doc - compile crypto API spec 2014-11-13 22:31:37 +08:00
alsa-driver-api.tmpl ALSA: doc: Fix missing "I" for kerneldoc inclusion 2014-10-30 15:42:33 +01:00
crypto-API.tmpl crypto: doc - crypto API high level spec 2014-11-13 22:31:36 +08:00
debugobjects.tmpl debugobjects: Extend to assert that an object is initialized 2011-11-23 18:49:22 +01:00
device-drivers.tmpl Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-08-05 17:46:42 -07:00
deviceiobook.tmpl docbook: change iomap source filename in deviceiobook 2012-01-23 08:44:54 -08:00
drm.tmpl drm/i915: Move to atomic plane helpers (v9) 2015-01-12 23:59:31 +01:00
filesystems.tmpl htmldocs: fix bio.c location 2014-05-20 08:17:35 -06:00
gadget.tmpl usb: patches for v3.17 merge window 2014-07-21 11:33:41 -07:00
genericirq.tmpl DocBook: fix various typos 2014-07-12 11:30:36 -07:00
kernel-api.tmpl DocBook: include !Emm/util.c in kernel-api to include, kzfree and more 2013-12-02 14:42:57 +01:00
kernel-hacking.tmpl Merge branch 'akpm' (incoming from Andrew) 2014-04-07 16:38:06 -07:00
kernel-locking.tmpl locking/Documentation: Move locking related docs into Documentation/locking/ 2014-08-13 10:32:03 +02:00
kgdb.tmpl Documentation: remove depends on CONFIG_EXPERIMENTAL 2013-01-11 11:38:03 -08:00
libata.tmpl DocBook: fix various typos 2014-07-12 11:30:36 -07:00
librs.tmpl
lsm.tmpl
media_api.tmpl DocBook: fix various typos 2014-07-12 11:30:36 -07:00
mtdnand.tmpl DocBook: fix mtdnand typos 2014-07-12 11:30:36 -07:00
networking.tmpl docbook: networking: fix file paths for uapi headers 2012-10-15 08:04:41 -07:00
rapidio.tmpl docbook: fix rapidio warning 2011-03-27 19:30:19 -07:00
regulator.tmpl DocBook: fix various typos 2014-07-12 11:30:36 -07:00
s390-drivers.tmpl
scsi.tmpl Documentation: update broken web addresses. 2010-08-04 15:21:40 +02:00
sh.tmpl sh: clkfwk: Kill off unused clk_set_rate_ex(). 2010-11-15 18:25:12 +09:00
stylesheet.xsl docbook: use IDs as filenames to support multiple books 2010-08-05 13:21:24 -07:00
tracepoint.tmpl workqueue: Add a workqueue chapter to the tracepoint docbook 2010-08-27 12:27:36 +02:00
uio-howto.tmpl uio: support memory sizes larger than 32 bits 2014-11-07 10:09:07 -08:00
usb.tmpl usb: hub: rename khubd to hub_wq in documentation and comments 2014-09-23 22:33:19 -07:00
w1.tmpl w1: format for DocBook and fixes 2014-02-07 15:40:18 -08:00
writing-an-alsa-driver.tmpl ALSA: doc: Recommend the use of snd_ctl_elem_info() 2014-10-20 18:06:04 +02:00
writing_musb_glue_layer.tmpl documentation: docbook: document process of writing an musb glue layer 2014-05-12 12:34:47 -05:00
writing_usb_driver.tmpl doc: fix misspellings with 'codespell' tool 2013-05-28 12:02:12 +02:00
z8530book.tmpl