Hi Dave, Next batch of atomic work. Most important is the propertification from Rob and the nth iteration of the actual atomic ioctl originally from Ville. Big differences compared to earlier revisions: - Core properties are now fully handled by the core, drivers can only handle driver-specific properties. - Atomic props&ioctl are opt-in per file_priv, userspace needs to explicitly ask for it (like universal plane support). - For now all hidden behind the atomic module option until this has settled a bit. - Atomic modesets are currently not possible since the exact abi for how to handle the mode property is still under discussion. Besides this some cleanup patches from me and the addition of per-object state to global state backpointers to simplify drivers. Other oustanding things not yet in here I'm aware of (besides the mode prop issue mentioned above): - dpms handling (still working on that) - Thierry's atomic helper patch to add plane_funcs->atomic_disable as an optional hook. Many drivers (tegra, exynos, i915) seem to want this. Note that there was a conflict with my drm misc branch so there's a merge in here. The diff looks sane when you merge topic/core-stuff before this branch here. There's also one bugfix from Rob in here for which I've sent you a pull request for 3.19 already, too. Cheers, Daniel The following changes since commit 4e0cd68115620bc3236ff4e58e4c073948629b41: drm: sti: fix module compilation issue (2014-12-15 17:07:57 +1000) are available in the git repository at: git://anongit.freedesktop.org/drm-intel tags/topic/atomic-core-2014-12-19 for you to fetch changes up to 885e32f9284888ceed63d17f2a9a8d3047dde27d: drm/atomic: Hide drm.ko internal interfaces (2014-12-18 23:00:34 +0100) ---------------------------------------------------------------- Ben Widawsky (1): drm/cache: Use wbinvd helpers Daniel Vetter (5): drm/atomic-helper: Export both plane and modeset check helpers drm/atomic-helper: Again check modeset *before* plane states drm/atomic: Introduce state->obj backpointers Merge branch 'topic/core-stuff' into topic/atomic-core drm/atomic: Hide drm.ko internal interfaces Laurent Pinchart (1): drm/doc: Document drm_add_modes_noedid() usage Matt Roper (1): drm/plane-helper: Test for plane disable earlier Rob Clark (15): drm: bit of spell-check / editorializing. drm/atomic: fix potential null ptr on plane enable drm: allow property validation for refcnted props drm: store property instead of id in obj attachment drm: get rid of direct property value access drm: add atomic_set_property wrappers drm: add atomic_get_property drm: tweak getconnector locking drm: refactor getproperties/getconnector drm: add atomic properties drm/atomic: atomic_check functions drm: small property creation cleanup drm/atomic: atomic plane properties drm/atomic: atomic connector properties drm: Atomic modeset ioctl Thierry Reding (13): drm/armada: Remove dummy ->load_lut() implementation drm/bochs: Remove dummy ->load_lut() implementation drm/msm: Remove dummy ->load_lut() implementation drm/sti: Remove dummy ->load_lut() implementation drm/tegra: Remove dummy ->load_lut() implementation drm: Miscellaneous checkpatch whitespace cleanups drm: Prefer kcalloc() over kzalloc() with multiply drm: Prefer kmalloc_array() over kmalloc() with multiply drm: Do not assign in if condition drm: Remove unneeded braces for single statement blocks drm: Remove useless else block drm: Prefer sizeof(type) over sizeof type drm/info: Remove unused code Documentation/DocBook/drm.tmpl | 91 +++- drivers/gpu/drm/armada/armada_crtc.c | 5 - drivers/gpu/drm/bochs/bochs_kms.c | 5 - drivers/gpu/drm/drm_atomic.c | 730 +++++++++++++++++++++++++++++- drivers/gpu/drm/drm_atomic_helper.c | 108 ++++- drivers/gpu/drm/drm_cache.c | 13 +- drivers/gpu/drm/drm_crtc.c | 428 +++++++++++------- drivers/gpu/drm/drm_crtc_helper.c | 2 + drivers/gpu/drm/drm_crtc_internal.h | 6 + drivers/gpu/drm/drm_drv.c | 4 + drivers/gpu/drm/drm_info.c | 24 - drivers/gpu/drm/drm_internal.h | 1 - drivers/gpu/drm/drm_ioctl.c | 12 + drivers/gpu/drm/drm_irq.c | 11 +- drivers/gpu/drm/drm_plane_helper.c | 18 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 5 - drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 5 - drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c | 1 + drivers/gpu/drm/msm/msm_atomic.c | 20 + drivers/gpu/drm/msm/msm_drv.c | 2 +- drivers/gpu/drm/msm/msm_drv.h | 2 + drivers/gpu/drm/sti/sti_drm_crtc.c | 6 - drivers/gpu/drm/tegra/dc.c | 5 - include/drm/drmP.h | 4 + include/drm/drm_atomic.h | 13 +- include/drm/drm_atomic_helper.h | 4 + include/drm/drm_crtc.h | 70 ++- include/uapi/drm/drm.h | 8 + include/uapi/drm/drm_mode.h | 38 +- 29 files changed, 1360 insertions(+), 281 deletions(-) -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx