1. 14 Jun, 2017 1 commit
    • Dave Airlie's avatar
      drm: introduce sync objects (v4) · e9083420
      Dave Airlie authored
      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: default avatarSean Paul <seanpaul@chromium.org>
      Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      e9083420
  2. 06 Jun, 2017 2 commits
    • Dave Airlie's avatar
      Merge tag 'exynos-drm-next-for-v4.13' of... · c9f0726f
      Dave Airlie authored
      Merge tag 'exynos-drm-next-for-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next
      
      Summary:
      - Rework vblank handling
        . This patch series adds frame counter callback and removes
          unnecessary pipe relevnt fields and simplifies event handling.
      - clean up and fix up sw-trigger relevant code
        . This patch series moves TE relevant code from Panel and HDMI
          to DECON driver to fix a race between interrupt handlers and
          DECON disable, and to fix timeout issue at wait-for-vblank.
        . It removes unnecessary flags and check code specific to Exynos driver.
      
      * tag 'exynos-drm-next-for-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos: (27 commits)
        drm/exynos/decon5433: remove useless check
        drm/exynos/decon5433: kill BIT_SUSPENDED flag
        drm/exynos/decon5433: kill BIT_WIN_UPDATED flag
        drm/exynos/decon5433: kill BIT_CLKS_ENABLED flag
        drm/exynos/decon5433: kill BIT_IRQS_ENABLED flag
        drm/exynos/decon5433: move TE handling to DECON
        dt-bindings: exynos5433-decon: add TE interrupt binding
        dt-bindings: exynos5433-decon: fix interrupts bindings
        drm/exynos/decon5433: always do sw-trigger when vblanks enabled
        drm/exynos: mixer: document YCbCr magic numbers
        drm/exynos: mixer: simplify mixer_cfg_rgb_fmt()
        drm/exynos/dsi: fix bridge_node DT parsing
        drm/exynos/hdmi: fix pipeline disable order
        drm/exynos/decon5433: simplify shadow protect code
        drm/exynos/decon5433: kill BIT_IRQS_ENABLED
        drm/exynos/decon5433: kill DECON_UPDATE workaround
        drm/exynos: kill mode_set_nofb callback
        drm/exynos: kill pipe field from drivers contexts
        drm/exynos: set plane possible_crtcs in exynos_plane_init
        drm/exynos: kill exynos_drm_private::pipe
        ...
      c9f0726f
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-2017-06-02' of git://anongit.freedesktop.org/git/drm-misc into drm-next · 55f5b0bf
      Dave Airlie authored
      Core Changes:
      - Stop proliferation of drm_vblank_cleanup by adding to the docs and deleting
        boilerplate (Daniel)
      - Roll out and use mode_valid hooks across crtc/encoder/bridge (Jose)
      - Add drm_vblank.[hc] to isolate vblank code from optional irq helpers (Daniel)
      
      Driver Changes:
      - Replace drm_for_each_connector with drm_for_each_connector_iter (Gustavo)
      - A couple misc driver fixes
      
      Cc: Gustavo Padovan <gustavo.padovan@collabora.com>
      Cc: Jose Abreu <Jose.Abreu@synopsys.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      
      * tag 'drm-misc-next-2017-06-02' of git://anongit.freedesktop.org/git/drm-misc: (34 commits)
        drm/vc4: Mark the device as active when enabling runtime PM.
        drm: remove writeq/readq function definitions
        drm/atmel-hlcdc: Use crtc->mode_valid() callback
        drm/exynos: Drop drm_vblank_cleanup
        drm/hdlcd|mali: Drop drm_vblank_cleanup
        drm/doc: Polish irq helper documentation
        drm: Extract drm_vblank.[hc]
        drm/vc4: Fix comment in vc4_drv.h
        drm/pl111: fix warnings without CONFIG_ARM_AMBA
        drm/atomic: Consitfy mode parameter to drm_atomic_set_mode_for_crtc()
        drm/arcgpu: Drop drm_vblank_cleanup
        drm/atmel: Drop drm_vblank_cleanup
        drm/imx: Drop drm_vblank_cleanup
        drm/meson: Drop drm_vblank_cleanup
        drm/stm: Drop drm_vblank_cleanup
        drm/sun4i: Drop drm_vblank_cleanup
        drm: better document how to send out the crtc disable event
        drm: Use vsnprintf extension %ph
        drm/doc: move printf helpers out of drmP.h
        drm/pl111: select DRM_PANEL
        ...
      55f5b0bf
  3. 03 Jun, 2017 1 commit
    • Dave Airlie's avatar
      Merge tag 'omapdrm-4.13-v2' of... · 562ff059
      Dave Airlie authored
      Merge tag 'omapdrm-4.13-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux into drm-next
      
      omapdrm changes for v4.13
      
      * dmabuf fence support
      * TILER rotation fixes
      * big pile of various cleanups and refactorings
      
      * tag 'omapdrm-4.13-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (64 commits)
        drm/omap: fix tiled buffer stride calculations
        drm/omap: fix YUV422 90/270 rotation with mirroring
        drm/omap: fix YUV422 rotation with TILER
        drm/omap: pass rotation to dispc
        drm/omap: DRM_MODE_REFLECT_* instead of mirror boolean
        drm/omap: use DRM_MODE_ROTATE_* instead of OMAP_DSS_ROT_*
        drm/omap: remove omap_drm_win
        drm/omap: add drm_rotation_to_tiler helper()
        drm/omap: rename color_mode to fourcc
        drm/omap: cleanup formats array
        drm/omap: remove omap_framebuffer_get_formats()
        drm/omap: use DRM_FORMAT_* instead of OMAP_DSS_COLOR_*
        drm/omap: use u32 instead of enum omap_color_mode
        drm/omap: change supported_modes to an array
        drm/omap: remove unneeded prototypes
        drm/omap: add format_is_yuv() helper
        drm/omap: cleanup offset calculation
        drm/omap: remove dma & vrfb rotation
        drm/omap: ratelimit OCP error
        drm/omap: remove CLUT
        ...
      562ff059
  4. 02 Jun, 2017 36 commits