1. 25 1月, 2020 1 次提交
  2. 02 10月, 2019 1 次提交
  3. 31 7月, 2019 1 次提交
  4. 21 6月, 2019 3 次提交
    • D
      drm/prime: Align gem_prime_export with obj_funcs.export · e4fa8457
      Daniel Vetter 提交于
      The idea is that gem_prime_export is deprecated in favor of
      obj_funcs.export. That's much easier to do if both have matching
      function signatures.
      Reviewed-by: NEric Anholt <eric@anholt.net>
      Reviewed-by: NEmil Velikov <emil.velikov@collabora.com>
      Acked-by: NChristian König <christian.koenig@amd.com>
      Acked-by: NThierry Reding <treding@nvidia.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Maxime Ripard <maxime.ripard@bootlin.com>
      Cc: Sean Paul <sean@poorly.run>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Zhenyu Wang <zhenyuw@linux.intel.com>
      Cc: Zhi Wang <zhi.a.wang@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Alex Deucher <alexander.deucher@amd.com>
      Cc: "Christian König" <christian.koenig@amd.com>
      Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com>
      Cc: Thierry Reding <thierry.reding@gmail.com>
      Cc: Jonathan Hunter <jonathanh@nvidia.com>
      Cc: Dave Airlie <airlied@redhat.com>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: "Michel Dänzer" <michel.daenzer@amd.com>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Huang Rui <ray.huang@amd.com>
      Cc: Felix Kuehling <Felix.Kuehling@amd.com>
      Cc: Hawking Zhang <Hawking.Zhang@amd.com>
      Cc: Feifei Xu <Feifei.Xu@amd.com>
      Cc: Jim Qu <Jim.Qu@amd.com>
      Cc: Evan Quan <evan.quan@amd.com>
      Cc: Matthew Auld <matthew.auld@intel.com>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Thomas Zimmermann <tdz@users.sourceforge.net>
      Cc: Kate Stewart <kstewart@linuxfoundation.org>
      Cc: Sumit Semwal <sumit.semwal@linaro.org>
      Cc: Jilayne Lovejoy <opensource@jilayne.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Mikulas Patocka <mpatocka@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Junwei Zhang <Jerry.Zhang@amd.com>
      Cc: intel-gvt-dev@lists.freedesktop.org
      Cc: intel-gfx@lists.freedesktop.org
      Cc: amd-gfx@lists.freedesktop.org
      Cc: linux-tegra@vger.kernel.org
      Link: https://patchwork.freedesktop.org/patch/msgid/20190614203615.12639-10-daniel.vetter@ffwll.ch
      e4fa8457
    • D
      drm/prime: Actually remove DRIVER_PRIME everywhere · 0424fdaf
      Daniel Vetter 提交于
      Split out to make the functional changes stick out more.
      
      All places where DRIVER_PRIME was used have been removed in previous
      patches already.
      
      v2: amdgpu gained DRIVER_SYNCOBJ_TIMELINE.
      
      v3: amdgpu lost DRIVER_SYNCOBJ_TIMELINE.
      
      v4: Don't add a space in i915_drv.c (Sam)
      
      v5: Add note that previous patches removed all the DRIVER_PRIME users
      already (Emil).
      
      v6: Fixupe ingenic (new driver) while applying.
      
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Reviewed-by: NEmil Velikov <emil.velikov@collabora.com>
      Reviewed-by: NEric Anholt <eric@anholt.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Cc: amd-gfx@lists.freedesktop.org
      Cc: etnaviv@lists.freedesktop.org
      Cc: freedreno@lists.freedesktop.org
      Cc: intel-gfx@lists.freedesktop.org
      Cc: lima@lists.freedesktop.org
      Cc: linux-amlogic@lists.infradead.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-arm-msm@vger.kernel.org
      Cc: linux-aspeed@lists.ozlabs.org
      Cc: linux-renesas-soc@vger.kernel.org
      Cc: linux-rockchip@lists.infradead.org
      Cc: linux-samsung-soc@vger.kernel.org
      Cc: linux-stm32@st-md-mailman.stormreply.com
      Cc: linux-tegra@vger.kernel.org
      Cc: nouveau@lists.freedesktop.org
      Cc: NXP Linux Team <linux-imx@nxp.com>
      Cc: spice-devel@lists.freedesktop.org
      Cc: virtualization@lists.linux-foundation.org
      Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
      Cc: xen-devel@lists.xenproject.org
      Link: https://patchwork.freedesktop.org/patch/msgid/20190617153924.414-1-daniel.vetter@ffwll.ch
      0424fdaf
    • D
      drm/prime: Update docs · 805dc614
      Daniel Vetter 提交于
      Yes this is a bit a big patch, but since it's essentially a complete
      rewrite of all the prime docs I didn't see how to better split it up.
      
      Changes:
      - Consistently point to drm_gem_object_funcs as the preferred hooks,
        where applicable.
      
      - Document all the hooks in &drm_driver that lacked kerneldoc.
      
      - Completely new overview section, which now also includes the cleaned
        up lifetime/reference counting subchapter. I also mentioned the weak
        references in there due to the lookup caches.
      
      - Completely rewritten helper intro section, highlight the
        import/export related functionality.
      
      - Polish for all the functions and more cross references.
      
      I also sprinkled a bunch of todos all over.
      
      Most important: 0 code changes in here. The cleanup motivated by
      reading and improving all this will follow later on.
      
      v2: Actually update the prime helper docs. Plus add a few FIXMEs that
      I won't address right away in subsequent cleanup patches.
      
      v3:
      - Split out the function moving. This patch is now exclusively
        documentation changes.
      - Typos and nits (Sam).
      
      v4: Polish suggestions from Noralf.
      Acked-by: NGerd Hoffmann <kraxel@redhat.com>
      Acked-by: NEmil Velikov <emil.velikov@collabora.com>
      Acked-by: NNoralf Trønnes <noralf@tronnes.org>
      Cc: Thomas Zimmermann <tzimmermann@suse.de>
      Cc: Gerd Hoffmann <kraxel@redhat.com>
      Cc: Noralf Trønnes <noralf@tronnes.org>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: Emil Velikov <emil.l.velikov@gmail.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190620124615.24434-1-daniel.vetter@ffwll.ch
      805dc614
  5. 02 5月, 2019 1 次提交
  6. 25 3月, 2019 1 次提交
  7. 04 3月, 2019 1 次提交
  8. 14 2月, 2019 1 次提交
  9. 29 1月, 2019 3 次提交
  10. 27 11月, 2018 1 次提交
  11. 25 11月, 2018 1 次提交
  12. 20 11月, 2018 1 次提交
  13. 18 9月, 2018 1 次提交
  14. 13 9月, 2018 1 次提交
  15. 06 9月, 2018 1 次提交
  16. 14 7月, 2018 1 次提交
  17. 29 3月, 2018 1 次提交
  18. 23 2月, 2018 1 次提交
  19. 11 11月, 2017 1 次提交
  20. 21 10月, 2017 1 次提交
  21. 13 10月, 2017 1 次提交
    • A
      drm: vblank: use ktime_t instead of timeval · 67680d3c
      Arnd Bergmann 提交于
      The drm vblank handling uses 'timeval' to store timestamps in either
      monotonic or wall-clock time base. In either case, it reads the current
      time as a ktime_t in get_drm_timestamp() and converts it from there.
      
      This is a bit suspicious, as users of 'timeval' often suffer from
      the time_t overflow in y2038. I have gone through this code and
      found that it is unlikely to cause problems here:
      
      - The user space ABI does not use time_t or timeval, but uses
        'u32' and 'long' as the types. This means at least that rebuilding
        user programs against a new libc with 64-bit time_t does not
        change the ABI.
      
      - As of commit c61eef72 ("drm: add support for monotonic vblank
        timestamps") in linux-3.8, the monotonic timestamp is the default
        and can only get reverted to wall-clock through a module-parameter.
      
      - With the default monotonic timestamps, there is no problem at all.
      
      - The drm_wait_vblank_ioctl() interface is alway safe on 64-bit
        architectures, on 32-bit it might overflow the 'long' timestamps
        in 2038 with wall-clock timestamps.
      
      - The event handling uses 'u32' seconds, which overflow in 2106
        on both 32-bit and 64-bit machines, when wall-clock timestamps
        are used.
      
      - The effect of overflowing either of the two is only temporary
        (during the overflow, and is likely to keep working again
        afterwards. It is likely the same problem as observing a
        'settimeofday()' call, which was the reason for moving to the
        monotonic timestamps in the first place.
      
      Overall, this seems good enough, so my patch removes the use of
      'timeval' from the vblank handling altogether and uses ktime_t
      consistently, except for the part where we copy the data to user
      space structures in the existing format.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Reviewed-by: NSean Paul <seanpaul@chromium.org>
      Reviewed-by: NKeith Packard <keithp@keithp.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      67680d3c
  22. 26 9月, 2017 1 次提交
  23. 11 8月, 2017 1 次提交
  24. 31 7月, 2017 1 次提交
    • S
      drm: Add a few missing descriptions in drm_driver docs · d1b6c62f
      Sean Paul 提交于
      Fixes the following warnings when building docs:
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'debugfs_init'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'gem_open_object'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'gem_close_object'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'prime_handle_to_fd'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'prime_fd_to_handle'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'gem_prime_export'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'gem_prime_import'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'gem_vm_ops'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'major'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'minor'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'patchlevel'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'name'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'desc'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'date'
      ../include/drm/drm_drv.h:553: warning: No description found for parameter 'driver_features'
      
      There are still a couple more warnings for prime helpers that are
      documented elsewhere.
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170720174746.29100-5-seanpaul@chromium.org
      d1b6c62f
  25. 20 6月, 2017 2 次提交
  26. 14 6月, 2017 1 次提交
    • D
      drm: introduce sync objects (v4) · e9083420
      Dave Airlie 提交于
      Sync objects are new toplevel drm object, that contain a
      pointer to a fence. This fence can be updated via command
      submission ioctls via drivers.
      
      There is also a generic wait obj API modelled on the vulkan
      wait API (with code modelled on some amdgpu code).
      
      These objects can be converted to an opaque fd that can be
      passes between processes.
      
      v2: rename reference/unreference to put/get (Chris)
      fix leaked reference (David Zhou)
      drop mutex in favour of cmpxchg (Chris)
      v3: cleanups from danvet, rebase on drm_fops rename
      check fd_flags is 0 in ioctls.
      v4: export find/free, change replace fence to take a
      syncobj. In order to support lookup first, replace
      later semantics which seem in the end to be cleaner.
      Reviewed-by: NSean Paul <seanpaul@chromium.org>
      Reviewed-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      e9083420
  27. 01 6月, 2017 1 次提交
  28. 10 5月, 2017 4 次提交
  29. 09 5月, 2017 1 次提交
  30. 24 3月, 2017 1 次提交
  31. 14 3月, 2017 1 次提交
    • D
      drm/doc: Document drm_file.[hc] · b93658f8
      Daniel Vetter 提交于
      Well, mostly drm_file.h, and clean up all related things:
      
      - I didnt' figure out the difference between preclose and postclose.
        The existing explanation in drm-internals.rst didn't convince me,
        since it's also really outdated - we clean up pending DRM events in
        the core nowadays. I put a FIXME in for the future.
      
      - Another FIXME is to have a macro for default fops.
      
      - Lots of links all around, main areas are to tie the overview in
        drm_file.c more into the callbacks in struct drm_device, and the
        other is to link render/primary node code to the right sections in
        drm-uapi.rst.
      
      - Also moved the open/close stuff to drm_drv.h from drm-internals.rst,
        seems like the better place for that information. Since that section
        was rather outdated this amounted to full-on rewrite.
      
      A big missing piece here is some overview graph, but I think better to
      wait with that one until drm_device and drm_driver are also fully
      documented.
      
      v2: Nits from Sean.
      Reviewed-by: NSean Paul <seanpaul@chromium.org>
      Reviewed-by: NLiviu Dudau <Liviu.Dudau@arm.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/20170308141257.12119-12-daniel.vetter@ffwll.ch
      b93658f8
  32. 08 3月, 2017 1 次提交