[PULL] topic/drm-misc

Daniel Vetter daniel.vetter at ffwll.ch
Tue Jun 14 21:48:31 UTC 2016


Hi Dave,

More misc stuff all over:
- best_encoder cleanup from Boris.
- drm_simple_display_pipe helpers from Noralf. Looks really neat imo, and
  there's 2-3 in-flight drivers which look like they could/should use it.
  Anyway, with this we have now helpers and everything in place to write
  drivers for simple hw with fewer complexity in the driver than what
  fbdev would need. That was the last complaint I've heard from embedded
  folks after we made atomic happen. Mission accomplished!
- nonblocking commit helpers for atomic, plus a bunch of driver patches
  for that.
- Prep patch from Laurent for cleaned up pixel format functions. 
- More of Gustavo's cleanup for drm vblank functions.
- and a few oddball things in between

Plus the merge of docs-next to prep the docbook->sphinx conversion as
discussed. Jon cc'ed as fyi.

A bit much for -misc, but I also thinks that's it with bigger core stuff
for 4.8, it should all be much calmer. Only things outstanding:
- Thierry is working on a small series to make delayed fbdev setup (to
  handle armsoc init ordering fun with componentized drivers better)
  generic, and nuke the driver copypasta.
- Laurent has some pixel format cleanup, not sure when that'll be ready,
  but also small.
- fences for atomic, but looks like the userspace (hwc) is a hold-up
  because google doesn't want to release it early. oh well. Maybe a bit
  more prep work from Gustavo in that area ...

Oh and this pull contains one patch committed by Thierry, we're starting
to play around with group maintainership and what makes sense and what
not. If it does make sense, then longer-term I think we'll create a new
drm-misc.git for it.

Cheers, Daniel


The following changes since commit 3c85f20a289d044f303f473ee6ab7502303fc3b0:

  Merge tag 'omapdrm-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux into drm-next (2016-06-09 12:20:11 +1000)

are available in the git repository at:

  git://anongit.freedesktop.org/drm-intel tags/topic/drm-misc-2016-06-14

for you to fetch changes up to 0d841ac0ec213f70ab59d65129e80f229846fadf:

  drm/virtio: Don't reinvent a flipping wheel (2016-06-14 16:32:47 +0200)

----------------------------------------------------------------
Boris Brezillon (19):
      drm: mediatek: Rely on the default ->best_encoder() behavior
      drm: msm: Rely on the default ->best_encoder() behavior where appropriate
      drm: sti: Rely on the default ->best_encoder() behavior
      drm: arc: Rely on the default ->best_encoder() behavior
      drm: atmel-hlcdc: Rely on the default ->best_encoder() behavior
      drm: exynos: Rely on the default ->best_encoder() behavior
      drm: fsl-dcu: Rely on the default ->best_encoder() behavior
      drm: rcar-du: Rely on the default ->best_encoder() behavior
      drm: rockchip: Rely on the default ->best_encoder() behavior
      drm: sun4i: Rely on the default ->best_encoder() behavior
      drm: tegra: Rely on the default ->best_encoder() behavior
      drm: vc4: Rely on the default ->best_encoder() behavior
      drm: virtgpu: Rely on the default ->best_encoder() behavior
      drm: omap: Rely on the default ->best_encoder() behavior
      drm/bridge: anx78xx: Rely on the default ->best_encoder() behavior
      drm/bridge: ptn3460: Rely on the default ->best_encoder() behavior
      drm/bridge: ps8622: Rely on the default ->best_encoder() behavior
      drm/bridge: dw-hdmi: Use drm_atomic_helper_best_encoder()
      drm: i915: Rely on the default ->best_encoder() behavior where appropriate

Brian Norris (1):
      drm/rockchip: fix compile warnings for 64-bit

Daniel Vetter (19):
      drm/atomic-helper: Annotate a bunch more RETURNS: sections
      drm: Replace fb_helper->atomic with mode_config->atomic_commit
      drm/arc: Nuke event_list
      drm/fsl-du: Implement some semblance of vblank event handling
      drm/hisilicon: Implement some semblance of vblank event handling
      drm/atomic: kerneldoc for drm_atomic_crtc_needs_modeset
      drm/atomic-helper: Massage swap_state signature somewhat
      drm/arc: Actually bother with handling atomic events.
      drm/sun4i: Implement some semblance of vblank event handling
      drm/atomic: Add struct drm_crtc_commit to track async updates
      drm/atomic-helper: roll out commit synchronization
      drm/atomic-helper: nonblocking commit support
      drm/arc: Implement nonblocking commit correctly
      drm/hdlcd: Use helper support for nonblocking commits
      drm/rockchip: Disarm vop->is_enabled
      drm/rockchip: Fix crtc_state->event signalling
      drm/rockchip: convert to helper nonblocking atomic commit
      drm/rockchip: Nuke pending event handling in preclose
      drm/virtio: Don't reinvent a flipping wheel

Gustavo Padovan (9):
      drm/nouveau: replace legacy vblank helpers
      drm: remove legacy drm_send_vblank_event()
      drm: remove legacy drm_arm_vblank_event()
      drm: make drm_vblank_{get,put}() static
      drm/amdgpu: use drm_crtc_vblank_{on,off}()
      drm/radeon: use drm_crtc_vblank_{on,off}()
      drm/amdgpu: use crtc directly in drm_crtc_vblank_put()
      drm/radeon: use crtc directly in drm_crtc_vblank_put()
      drm/gma500: use drm_crtc_vblank_{on,off}()

Laurent Pinchart (1):
      drm: Move format-related helpers to drm_fourcc.c

Liviu Dudau (1):
      drm: Fix comment making reference to non-existing function

Lukas Wunner (1):
      drm: Remove dev_pm_ops from drm_class

Noralf Trønnes (1):
      drm: Add helper for simple display pipeline

Rob Clark (1):
      drm/prime: fix error path deadlock fail

Sudip Mukherjee (1):
      drm: fb: cma: fix memory leak

Thierry Reding (1):
      drm/dsi: Add uevent callback

Tobias Jakobi (1):
      drm/exynos: use logical AND in exynos_drm_plane_check_size()

Tomeu Vizoso (3):
      drm/rockchip: Drop drm_driver.load/unload callbacks
      drm/rockchip: Use atomic PM helpers
      drm/rockchip: Resume DP early

Wei Yongjun (1):
      drm/i915: Fix missing unlock on error in i915_ppgtt_info()

 Documentation/DocBook/gpu.tmpl                     |  11 +
 drivers/gpu/drm/Makefile                           |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c        |   2 +-
 drivers/gpu/drm/amd/amdgpu/dce_v10_0.c             |   4 +-
 drivers/gpu/drm/amd/amdgpu/dce_v11_0.c             |   4 +-
 drivers/gpu/drm/amd/amdgpu/dce_v8_0.c              |   4 +-
 drivers/gpu/drm/arc/arcpgu.h                       |   1 -
 drivers/gpu/drm/arc/arcpgu_crtc.c                  |  16 +-
 drivers/gpu/drm/arc/arcpgu_drv.c                   |  27 +-
 drivers/gpu/drm/arc/arcpgu_hdmi.c                  |  18 -
 drivers/gpu/drm/arm/hdlcd_drv.c                    |   8 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c       |   2 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c   |  12 -
 drivers/gpu/drm/bridge/analogix-anx78xx.c          |   8 -
 drivers/gpu/drm/bridge/dw-hdmi.c                   |  11 +-
 drivers/gpu/drm/bridge/nxp-ptn3460.c               |   8 -
 drivers/gpu/drm/bridge/parade-ps8622.c             |  10 -
 drivers/gpu/drm/drm_atomic.c                       |  22 +
 drivers/gpu/drm/drm_atomic_helper.c                | 493 +++++++++++++++++++--
 drivers/gpu/drm/drm_crtc.c                         | 292 +-----------
 drivers/gpu/drm/drm_drv.c                          |   2 -
 drivers/gpu/drm/drm_fb_cma_helper.c                |   1 +
 drivers/gpu/drm/drm_fb_helper.c                    |   6 +-
 drivers/gpu/drm/drm_fops.c                         |   6 +
 drivers/gpu/drm/drm_fourcc.c                       | 320 +++++++++++++
 drivers/gpu/drm/drm_irq.c                          |  80 +---
 drivers/gpu/drm/drm_mipi_dsi.c                     |  16 +
 drivers/gpu/drm/drm_prime.c                        |  10 +-
 drivers/gpu/drm/drm_simple_kms_helper.c            | 205 +++++++++
 drivers/gpu/drm/drm_sysfs.c                        |  71 ---
 drivers/gpu/drm/exynos/exynos_drm_dpi.c            |   9 -
 drivers/gpu/drm/exynos/exynos_drm_drv.c            |   2 +-
 drivers/gpu/drm/exynos/exynos_drm_dsi.c            |   9 -
 drivers/gpu/drm/exynos/exynos_drm_plane.c          |   2 +-
 drivers/gpu/drm/exynos/exynos_drm_vidi.c           |   8 -
 drivers/gpu/drm/exynos/exynos_hdmi.c               |   8 -
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c         |  23 +-
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c          |   9 -
 drivers/gpu/drm/gma500/gma_display.c               |   2 +-
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c    |  20 +-
 drivers/gpu/drm/i915/i915_debugfs.c                |   4 +-
 drivers/gpu/drm/i915/intel_crt.c                   |   1 -
 drivers/gpu/drm/i915/intel_display.c               |  10 +-
 drivers/gpu/drm/i915/intel_dp.c                    |   1 -
 drivers/gpu/drm/i915/intel_drv.h                   |   1 -
 drivers/gpu/drm/i915/intel_dsi.c                   |   1 -
 drivers/gpu/drm/i915/intel_dvo.c                   |   1 -
 drivers/gpu/drm/i915/intel_fbdev.c                 |   2 -
 drivers/gpu/drm/i915/intel_hdmi.c                  |   1 -
 drivers/gpu/drm/i915/intel_lvds.c                  |   1 -
 drivers/gpu/drm/i915/intel_sdvo.c                  |   1 -
 drivers/gpu/drm/i915/intel_tv.c                    |   1 -
 drivers/gpu/drm/mediatek/mtk_drm_drv.c             |   2 +-
 drivers/gpu/drm/mediatek/mtk_dsi.c                 |   9 -
 drivers/gpu/drm/msm/edp/edp_connector.c            |  10 -
 drivers/gpu/drm/msm/hdmi/hdmi_connector.c          |   8 -
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_lvds_connector.c |   9 -
 drivers/gpu/drm/msm/msm_atomic.c                   |   2 +-
 drivers/gpu/drm/nouveau/nouveau_display.c          |  22 +-
 drivers/gpu/drm/nouveau/nouveau_display.h          |   3 +-
 drivers/gpu/drm/omapdrm/omap_connector.c           |  10 -
 drivers/gpu/drm/omapdrm/omap_drv.c                 |   2 +-
 drivers/gpu/drm/radeon/atombios_crtc.c             |   4 +-
 drivers/gpu/drm/radeon/radeon_display.c            |   2 +-
 drivers/gpu/drm/radeon/radeon_legacy_crtc.c        |   4 +-
 drivers/gpu/drm/rcar-du/rcar_du_encoder.c          |  12 -
 drivers/gpu/drm/rcar-du/rcar_du_encoder.h          |   3 -
 drivers/gpu/drm/rcar-du/rcar_du_hdmicon.c          |   1 -
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              |   2 +-
 drivers/gpu/drm/rcar-du/rcar_du_lvdscon.c          |   1 -
 drivers/gpu/drm/rcar-du/rcar_du_vgacon.c           |   3 -
 drivers/gpu/drm/rockchip/analogix_dp-rockchip.c    |  15 +-
 drivers/gpu/drm/rockchip/dw-mipi-dsi.c             |   9 -
 drivers/gpu/drm/rockchip/inno_hdmi.c               |   9 -
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c        | 194 +++-----
 drivers/gpu/drm/rockchip/rockchip_drm_drv.h        |  12 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c         |  72 +--
 drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c      |   5 +-
 drivers/gpu/drm/rockchip/rockchip_drm_gem.c        |   2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c        |  68 +--
 drivers/gpu/drm/sti/sti_drv.c                      |   2 +-
 drivers/gpu/drm/sti/sti_dvo.c                      |  10 -
 drivers/gpu/drm/sti/sti_hda.c                      |  10 -
 drivers/gpu/drm/sti/sti_hdmi.c                     |  10 -
 drivers/gpu/drm/sun4i/sun4i_crtc.c                 |  12 +
 drivers/gpu/drm/sun4i/sun4i_rgb.c                  |  10 -
 drivers/gpu/drm/sun4i/sun4i_tv.c                   |   9 -
 drivers/gpu/drm/tegra/drm.c                        |   2 +-
 drivers/gpu/drm/tegra/drm.h                        |   2 -
 drivers/gpu/drm/tegra/dsi.c                        |   1 -
 drivers/gpu/drm/tegra/hdmi.c                       |   1 -
 drivers/gpu/drm/tegra/output.c                     |   8 -
 drivers/gpu/drm/tegra/rgb.c                        |   1 -
 drivers/gpu/drm/tegra/sor.c                        |   1 -
 drivers/gpu/drm/vc4/vc4_dpi.c                      |   9 -
 drivers/gpu/drm/vc4/vc4_hdmi.c                     |   9 -
 drivers/gpu/drm/vc4/vc4_kms.c                      |   2 +-
 drivers/gpu/drm/virtio/virtgpu_display.c           |  81 +---
 include/drm/drmP.h                                 |  10 +-
 include/drm/drm_atomic.h                           |  16 +
 include/drm/drm_atomic_helper.h                    |  14 +-
 include/drm/drm_crtc.h                             | 161 ++++++-
 include/drm/drm_fb_helper.h                        |  11 -
 include/drm/drm_fourcc.h                           |  37 ++
 include/drm/drm_mipi_dsi.h                         |   2 +
 include/drm/drm_modeset_helper_vtables.h           |  39 ++
 include/drm/drm_simple_kms_helper.h                |  94 ++++
 107 files changed, 1609 insertions(+), 1242 deletions(-)
 create mode 100644 drivers/gpu/drm/drm_fourcc.c
 create mode 100644 drivers/gpu/drm/drm_simple_kms_helper.c
 create mode 100644 include/drm/drm_fourcc.h
 create mode 100644 include/drm/drm_simple_kms_helper.h

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list