1. 15 Aug, 2017 32 commits
  2. 10 Aug, 2017 1 commit
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-2017-08-08' of git://anongit.freedesktop.org/git/drm-misc into drm-next · 09ef2378
      Dave Airlie authored
      UAPI Changes:
      - vc4: Add ioctl to allow attaching a label to a bo (Eric)
      - Add new format/modifier blob plane property (Ben)
      - armada: Use __u32/__u64 instead of uint32_t/uint64_t (Mikko)
      - [kinda uapi] fb_helper: Expose display_info size via fb_info (David)
      
      Core Changes:
      - Default gem_dumb_[map_offset|destroy] as mmap/destroy implementations (Noralf)
      - Simplify atomic properties by removing the helpers and handling in core (Daniel)
      
      Driver Changes:
      - stm: Add STM32 DSI controller driver (Phillipe)
      - vc4: Add HDMI CEC support (Hans)
      - rockchip: Refactor register init & soc version handling (Mark)
      - misc: Remove .load_lut, .gamma_set, .gamma_get dead code (Peter)
      - dw-hdmi: Add HDMI CEC support (Russell)
      
      Cc: Philippe CORNU <philippe.cornu@st.com>
      Cc: Hans Verkuil <hans.verkuil@cisco.com>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: Noralf Trønnes <noralf@tronnes.org>
      Cc: Ben Widawsky <ben@bwidawsk.net>
      Cc: Mark yao <mark.yao@rock-chips.com>
      Cc: Peter Rosin <peda@axentia.se>
      Cc: Russell King <rmk+kernel@armlinux.org.uk>
      Cc: Mikko Rapeli <mikko.rapeli@iki.fi>
      Cc: David Lechner <david@lechnology.com>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      
      * tag 'drm-misc-next-2017-08-08' of git://anongit.freedesktop.org/git/drm-misc: (107 commits)
        drm: Nuke drm_atomic_legacy_backoff
        drm: Nuke drm_atomic_helper_connector_dpms
        drm: Nuke drm_atomic_helper_connector_set_property
        drm: Nuke drm_atomic_helper_plane_set_property
        drm: Nuke drm_atomic_helper_crtc_set_property
        drm: Handle properties in the core for atomic drivers
        drm: Don't update property values for atomic drivers
        drm/omap: Rework the rotation-on-crtc hack
        drm/radeon: Use the drm_driver.dumb_destroy default
        drm/i915: Use the drm_driver.dumb_destroy default
        drm/sti: Use .dumb_map_offset and .dumb_destroy defaults
        drm: bridge: synopsys/dw-hdmi: Provide default configuration function for HDMI 2.0 PHY
        drm/fb-helper: pass physical dimensions to fbdev
        uapi drm/armada_drm.h: use __u32 and __u64 instead of uint32_t and uint64_t
        drm/bridge: dw-hdmi: remove CEC engine register definitions
        drm/bridge: dw-hdmi: add cec driver
        drm/bridge: dw-hdmi: add missing cec_notifier_put
        drm: remove unused and redundant callbacks
        staging: vboxvideo: remove dead gamma lut code
        drm: dw-hdmi-i2s: add missing company name on Copyright
        ...
      09ef2378
  3. 08 Aug, 2017 7 commits
    • Daniel Vetter's avatar
    • Daniel Vetter's avatar
      drm: Nuke drm_atomic_helper_connector_dpms · 7d902c05
      Daniel Vetter authored
      It's dead code, the core handles all this directly now.
      
      The only special case is nouveau and tda988x which used one function
      for both legacy modeset code and -nv50 atomic world instead of 2
      vtables. But amounts to exactly the same.
      
      v2: Rebase over the panel/brideg refactorings in stm/ltdc.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Cc: Archit Taneja <architt@codeaurora.org>
      Cc: Andrzej Hajda <a.hajda@samsung.com>
      Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com>
      Cc: Peter Senna Tschudin <peter.senna@collabora.com>
      Cc: Martin Donnelly <martin.donnelly@ge.com>
      Cc: Martyn Welch <martyn.welch@collabora.co.uk>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Inki Dae <inki.dae@samsung.com>
      Cc: Joonyoung Shim <jy0922.shim@samsung.com>
      Cc: Seung-Woo Kim <sw0312.kim@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Stefan Agner <stefan@agner.ch>
      Cc: Alison Wang <alison.wang@freescale.com>
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: Philipp Zabel <p.zabel@pengutronix.de>
      Cc: CK Hu <ck.hu@mediatek.com>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: Neil Armstrong <narmstrong@baylibre.com>
      Cc: Carlo Caione <carlo@caione.org>
      Cc: Kevin Hilman <khilman@baylibre.com>
      Cc: Marek Vasut <marex@denx.de>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: Mark Yao <mark.yao@rock-chips.com>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
      Cc: Vincent Abriou <vincent.abriou@st.com>
      Cc: Yannick Fertre <yannick.fertre@st.com>
      Cc: Philippe Cornu <philippe.cornu@st.com>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Cc: Chen-Yu Tsai <wens@csie.org>
      Cc: Thierry Reding <thierry.reding@gmail.com>
      Cc: Jonathan Hunter <jonathanh@nvidia.com>
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Gerd Hoffmann <kraxel@redhat.com>
      Cc: Shawn Guo <shawnguo@kernel.org>
      Cc: John Stultz <john.stultz@linaro.org>
      Cc: Lars-Peter Clausen <lars@metafoo.de>
      Cc: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Cc: Jeffy Chen <jeffy.chen@rock-chips.com>
      Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com>
      Cc: Yakir Yang <kuankuan.y@gmail.com>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: Jose Abreu <Jose.Abreu@synopsys.com>
      Cc: Romain Perier <romain.perier@collabora.com>
      Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
      Cc: Xinliang Liu <z.liuxinliang@hisilicon.com>
      Cc: Alexey Brodkin <abrodkin@synopsys.com>
      Cc: Alex Deucher <alexander.deucher@amd.com>
      Cc: Rongrong Zou <zourongrong@gmail.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Hai Li <hali@codeaurora.org>
      Cc: "Noralf Trønnes" <noralf@tronnes.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-samsung-soc@vger.kernel.org
      Cc: intel-gfx@lists.freedesktop.org
      Cc: linux-mediatek@lists.infradead.org
      Cc: linux-amlogic@lists.infradead.org
      Cc: nouveau@lists.freedesktop.org
      Cc: linux-renesas-soc@vger.kernel.org
      Cc: linux-rockchip@lists.infradead.org
      Cc: linux-tegra@vger.kernel.org
      Cc: virtualization@lists.linux-foundation.org
      Cc: zain wang <wzz@rock-chips.com>
      Cc: Baoyou Xie <baoyou.xie@linaro.org>
      Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725080122.20548-8-daniel.vetter@ffwll.chAcked-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
      Reviewed-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
      Acked-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
      Acked-by: default avatarArchit Taneja <architt@codeaurora.org>
      Tested-by: Philippe Cornu <philippe.cornu@st.com> (on stm)
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Acked-by: default avatarShawn Guo <shawnguo@kernel.org>
      Acked-by: default avatarShawn Guo <shawnguo@kernel.org>
      Acked-by: default avatarNoralf Trønnes <noralf@tronnes.org>
      Acked-by: default avatarVincent Abriou <vincent.abriou@st.com>
      7d902c05
    • Daniel Vetter's avatar
      drm: Nuke drm_atomic_helper_connector_set_property · 482b0e3c
      Daniel Vetter authored
      It's dead code, the core handles all this directly now. This also
      allows us to unexport drm_atomic_helper_connector_set_property.
      
      The only special case is nouveau which used one function for both
      pre-nv50 legacy modeset code and post-nv50 atomic world instead of 2
      vtables. But amounts to exactly the same.
      
      What is rather strange here is how few drivers set this up, I suspect
      the earlier patch to handle properties in the core did end up fixing a
      pile of possible issues.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
      Cc: Vincent Abriou <vincent.abriou@st.com>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: intel-gfx@lists.freedesktop.org
      Cc: nouveau@lists.freedesktop.org
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725080122.20548-7-daniel.vetter@ffwll.chAcked-by: default avatarVincent Abriou <vincent.abriou@st.com>
      482b0e3c
    • Daniel Vetter's avatar
      drm: Nuke drm_atomic_helper_plane_set_property · e90271bc
      Daniel Vetter authored
      It's dead code, the core handles all this directly now. This also
      allows us to unexport drm_atomic_plane_set_property.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Cc: Liviu Dudau <liviu.dudau@arm.com>
      Cc: Brian Starkey <brian.starkey@arm.com>
      Cc: Mali DP Maintainers <malidp@foss.arm.com>
      Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Inki Dae <inki.dae@samsung.com>
      Cc: Joonyoung Shim <jy0922.shim@samsung.com>
      Cc: Seung-Woo Kim <sw0312.kim@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
      Cc: Vincent Abriou <vincent.abriou@st.com>
      Cc: Yannick Fertre <yannick.fertre@st.com>
      Cc: Philippe Cornu <philippe.cornu@st.com>
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
      Cc: Rongrong Zou <zourongrong@gmail.com>
      Cc: Shawn Guo <shawn.guo@linaro.org>
      Cc: Alexey Brodkin <abrodkin@synopsys.com>
      Cc: Eric Engestrom <eric@engestrom.ch>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Archit Taneja <architt@codeaurora.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-samsung-soc@vger.kernel.org
      Cc: intel-gfx@lists.freedesktop.org
      Cc: nouveau@lists.freedesktop.org
      Cc: linux-renesas-soc@vger.kernel.org
      Cc: Thomas Hellstrom <thellstrom@vmware.com>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725080122.20548-6-daniel.vetter@ffwll.chReviewed-by: default avatarArchit Taneja <architt@codeaurora.org>
      Acked-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
      Tested-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
      Acked-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      Acked-by: default avatarVincent Abriou <vincent.abriou@st.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      e90271bc
    • Daniel Vetter's avatar
      drm: Nuke drm_atomic_helper_crtc_set_property · b6715570
      Daniel Vetter authored
      It's dead code because this is now handled in the core.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Ben Skeggs <bskeggs@redhat.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
      Cc: Alexey Brodkin <abrodkin@synopsys.com>
      Cc: Shawn Guo <shawn.guo@linaro.org>
      Cc: Eric Engestrom <eric@engestrom.ch>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Philippe Cornu <philippe.cornu@st.com>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Cc: Sushmita Susheelendra <ssusheel@codeaurora.org>
      Cc: Archit Taneja <architt@codeaurora.org>
      Cc: intel-gfx@lists.freedesktop.org
      Cc: nouveau@lists.freedesktop.org
      Cc: Philipp Zabel <p.zabel@pengutronix.de>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Cc: Thomas Hellstrom <thellstrom@vmware.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725080122.20548-5-daniel.vetter@ffwll.chReviewed-by: default avatarArchit Taneja <architt@codeaurora.org>
      Acked-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
      Tested-by: default avatarPhilippe Cornu <philippe.cornu@st.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Acked-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
      b6715570
    • Daniel Vetter's avatar
      drm: Handle properties in the core for atomic drivers · 144a7999
      Daniel Vetter authored
      The reason behind the original indirection through the helper
      functions was to allow existing drivers to overwrite how they handle
      properties. For example when a vendor-specific userspace had
      expectations that didn't match atomic. That seemed likely, since
      atomic is standardizing a _lot_ more of the behaviour of a kms driver.
      
      But 20 drivers later there's no such need at all. Worse, this forces
      all drivers to hook up the default behaviour, breaking userspace if
      they forget to do that. And it forces us to export a bunch of core
      function just for those helpers.
      
      And finally, these helpers are the last places using
      drm_atomic_legacy_backoff() and the implicit acquire_ctx.
      
      This patch here just implements the new behaviour and updates the
      docs. Follow-up patches will garbage-collect all the dead code.
      
      v2: Fixup docs even better!
      
      v3: Make it actually work ...
      
      v4: Drop the uses_atomic_modeset() checks from the previous patch
      again, since they're now moved up in the callchain.
      
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: Archit Taneja <architt@codeaurora.org> (v3)
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725120204.2107-1-daniel.vetter@ffwll.ch
      144a7999
    • Daniel Vetter's avatar
      drm: Don't update property values for atomic drivers · 4a97a3da
      Daniel Vetter authored
      Atomic drivers only use the property value store for immutable (i.e.
      can't be set by userspace, but the kernel can still adjust it)
      properties. The only tricky part is the removal of the update in
      drm_atomic_helper_update_legacy_modeset_state().
      
      This was added in
      
      commit 8c10342c (tag: topic/drm-misc-2015-07-28)
      Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Date:   Mon Jul 27 13:24:29 2015 +0200
      
          drm/atomic: Update legacy DPMS state during modesets, v3.
      
      by copying it from the i915 code, where it was originally added in
      
      commit 68d34720
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Thu Sep 6 22:08:35 2012 +0200
      
          drm/i915: update dpms property in set_mode
      
      for the legacy modeset code. The reason we needed this hack was that
      i915 didn't yet set DRIVER_ATOMIC, and we checked for that instead of
      the newer-ish drm_drv_uses_atomic_modeset(), which avoids such
      troubles. With the correct feature checks this isn't needed anymore at
      all.
      
      Also make sure that drivers don't accidentally get this wrong by
      making the exported version of drm_object_property_get_value() only
      work for legacy drivers. Only gma500 uses it anyway.
      
      v2: Fixup the uses_atomic_modeset() checks (Maarten)
      
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170725120137.1903-1-daniel.vetter@ffwll.ch
      4a97a3da