1. 29 3月, 2017 1 次提交
  2. 06 3月, 2017 1 次提交
  3. 15 2月, 2017 1 次提交
  4. 25 1月, 2017 1 次提交
  5. 17 1月, 2017 1 次提交
  6. 05 1月, 2017 1 次提交
  7. 30 12月, 2016 1 次提交
  8. 27 12月, 2016 1 次提交
  9. 19 12月, 2016 1 次提交
  10. 18 12月, 2016 1 次提交
  11. 28 11月, 2016 1 次提交
  12. 22 11月, 2016 1 次提交
  13. 16 11月, 2016 1 次提交
    • G
      drm/fence: add out-fences support · beaf5af4
      Gustavo Padovan 提交于
      Support DRM out-fences by creating a sync_file with a fence for each CRTC
      that sets the OUT_FENCE_PTR property.
      
      We use the out_fence pointer received in the OUT_FENCE_PTR prop to send
      the sync_file fd back to userspace.
      
      The sync_file and fd are allocated/created before commit, but the
      fd_install operation only happens after we know that commit succeed.
      
      v2: Comment by Rob Clark:
      	- Squash commit that adds DRM_MODE_ATOMIC_OUT_FENCE flag here.
      
          Comment by Daniel Vetter:
      	- Add clean up code for out_fences
      
      v3: Comments by Daniel Vetter:
      	- create DRM_MODE_ATOMIC_EVENT_MASK
      	- userspace should fill out_fences_ptr with the crtc_ids for which
      	it wants fences back.
      
      v4: Create OUT_FENCE_PTR properties and remove old approach.
      
      v5: Comments by Brian Starkey:
      	- Remove extra fence_get() in atomic_ioctl()
      	- Check ret before iterating on the crtc_state
      	- check ret before fd_install
      	- set fence_state to NULL at the beginning
      	- check fence_state->out_fence_ptr before put_user()
      	- change order of fput() and put_unused_fd() on failure
      
           - Add access_ok() check to the out_fence_ptr received
           - Rebase after fence -> dma_fence rename
           - Store out_fence_ptr in the drm_atomic_state
           - Split crtc_setup_out_fence()
           - return -1 as out_fence with TEST_ONLY flag
      
      v6: Comments by Daniel Vetter
      	- Add prepare/unprepare_crtc_signaling()
      	- move struct drm_out_fence_state to drm_atomic.c
      	- mark get_crtc_fence() as static
      
          Comments by Brian Starkey
      	- proper set fence_ptr fence_state array
      	- isolate fence_idx increment
      
          - improve error handling
      
      v7: Comments by Daniel Vetter
      	- remove prefix from internal functions
      	- make out_fence_ptr an s64 pointer
      	- degrade DRM_INFO to DRM_DEBUG_ATOMIC when put_user fail
      	- fix doc issues
      	- filter out OUT_FENCE_PTR == NULL and do not fail in this case
      	- add complete_crtc_signalling()
      	- krealloc fence_state on demand
      
          Comment by Brian Starkey
      	- remove unused crtc_state arg from get_out_fence()
      
      v8: Comment by Brian Starkey
      	- cancel events before check for !fence_state
      	- convert a few lefovers u64 types for out_fence_ptr
      	- fix memleak by assign fence_state earlier after realloc
      	- proper accout num_fences in case of error
      
      v9: Comment by Brian Starkey
      	- memset last position of fence_state after krealloc
          Comments by Sean Paul
      	- pass install_fds in complete_crtc_signaling() instead of ret
      
           - put_user(-1, fence_ptr) when decoding props
      
      v10: Comment by Brian Starkey
      	- remove unneeded num_fences increment on error path
      	- kfree fence_state after installing fences fd
      
      v11: rebase against latest drm-misc
      
      v12: rebase again against latest drm-misc
      Signed-off-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk>
      Reviewed-by: Brian Starkey <brian.starkey@arm.com> (v10)
      Reviewed-by: NSean Paul <seanpaul@chromium.org>
      Tested-by: Robert Foss <robert.foss@collabora.com> (v10)
      [danvet: Appease checkpatch.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/1479301221-13056-1-git-send-email-gustavo@padovan.org
      beaf5af4
  14. 09 11月, 2016 1 次提交
  15. 08 11月, 2016 1 次提交
  16. 17 10月, 2016 2 次提交
  17. 22 9月, 2016 1 次提交
    • D
      drm: Extract drm_plane.[hc] · 43968d7b
      Daniel Vetter 提交于
      Just pure code movement, cleanup and polish will happen in later
      patches.
      
      v2: Don't forget all the ioctl! To extract those cleanly I decided to
      put check_src_coords into drm_framebuffer.c (and give it a
      drm_framebuffer_ prefix), since that just checks framebuffer
      constraints.
      
      v3: rebase over PAGE_FLIP_TARGET.
      Reviewed-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      
      [seanpaul]
      This patch as posted on the list was rebased on:
      
      commit 6f00975c
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Sat Aug 20 12:22:11 2016 +0200
      
          drm: Reject page_flip for !DRIVER_MODESET
      
      so as a result of moving the page_flip ioctl, this fix has
      been rolled into this patch.
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      43968d7b
  18. 10 6月, 2016 1 次提交
  19. 09 6月, 2016 1 次提交
  20. 02 6月, 2016 5 次提交
  21. 02 5月, 2016 1 次提交
  22. 06 1月, 2016 1 次提交
  23. 25 11月, 2015 1 次提交
  24. 17 11月, 2015 1 次提交
  25. 27 7月, 2015 1 次提交
  26. 19 6月, 2015 1 次提交
  27. 26 5月, 2015 3 次提交
  28. 21 5月, 2015 1 次提交
  29. 18 5月, 2015 1 次提交
  30. 13 5月, 2015 1 次提交
  31. 12 4月, 2015 1 次提交
  32. 05 1月, 2015 2 次提交
    • D
      drm/atomic: Hide drm.ko internal interfaces · a97df1cc
      Daniel Vetter 提交于
      This is just a bit fallout from patch polishing and moving the
      get_prop logic fully into the core:
      - Drop EXPORT_SYMBOL and make the helpers static.
      - Drop kerneldoc since not used by drivers.
      - Move the cross-file function declarations only used by drm.ko
        internally to an internal header.
      
      v2: keep the gist of the comments, requested by Rob.
      
      Cc: Rob Clark <robdclark@gmail.com>
      Reviewed-by: NRob Clark <robdclark@gmail.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      a97df1cc
    • R
      drm: add atomic properties · 88a48e29
      Rob Clark 提交于
      Once a driver is using atomic helpers for modeset, the next step is to
      switch over to atomic properties.  To do this, make sure that any
      modeset objects have their ->atomic_{get,set}_property() vfuncs suitably
      populated if they have custom properties (you did already remember to
      plug in atomic-helper func for the legacy ->set_property() vfuncs,
      right?), and then set DRIVER_ATOMIC bit in driver_features flag.
      
      A new cap is introduced, DRM_CLIENT_CAP_ATOMIC, for the purposes of
      shielding legacy userspace from atomic properties.  Mostly for the
      benefit of legacy DDX drivers that do silly things like getting/setting
      each property at startup (since some of the new atomic properties will
      be able to trigger modeset).
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      [danvet: Squash in fixup patch to check for DRM_MODE_PROP_ATOMIC
      instaed of the CAP define when filtering properties. Reported by
      Tvrtko Uruslin, acked by Rob.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      88a48e29