1. 09 1月, 2018 1 次提交
    • S
      drm/i915: Add HDCP framework + base implementation · ee5e5e7a
      Sean Paul 提交于
      This patch adds the framework required to add HDCP support to intel
      connectors. It implements Aksv loading from fuse, and parts 1/2/3
      of the HDCP authentication scheme.
      
      Note that without shim implementations, this does not actually implement
      HDCP. That will come in subsequent patches.
      
      Changes in v2:
      - Don't open code wait_fors (Chris)
      - drm_hdcp.c under MIT license (Daniel)
      - Move intel_hdcp_disable() call above ddi_disable (Ram)
      - Fix // comments (I wore a cone of shame for 12 hours to atone) (Daniel)
      - Justify intel_hdcp_shim with comments (Daniel)
      - Fixed async locking issues by adding hdcp_mutex (Daniel)
      - Don't alter connector_state in enable/disable (Daniel)
      Changes in v3:
      - Added hdcp_mutex/hdcp_value to make async reasonable
      - Added hdcp_prop_work to separate link checking & property setting
      - Added new helper for atomic_check state tracking (Daniel)
      - Moved enable/disable into atomic_commit with matching helpers
      - Moved intel_hdcp_check_link out of all locks when called from dp
      - Bumped up ksv_fifo timeout (noticed failure on one of my dongles)
      Changes in v4:
      - Remove SKL_ prefix from most register names (Daniel)
      - Move enable/disable back to modeset path (Daniel)
      - s/get_random_long/get_random_u32/ (Daniel)
      - Remove mode_config.mutex lock in prop_work (Daniel)
      - Add intel_hdcp_init to handle init of conn components (Daniel)
      - Actually check return value of attach_property
      - Check Bksv is valid before trying to authenticate (Ram)
      Changes in v5:
      - checkpatch whitespace changes
      - s/DRM_MODE_CONTENT_PROTECTION_OFF/DRM_MODE_CONTENT_PROTECTION_UNDESIRED/
      - Fix ksv list wait timeout (actually wait 5s)
      - Increase the R0 timeout to 300ms (Ram)
      Changes in v6:
      - SPDX license
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NRamalingam C <ramalingm.c@intel.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20180108195545.218615-6-seanpaul@chromium.org
      ee5e5e7a
  2. 22 12月, 2017 1 次提交
  3. 21 12月, 2017 2 次提交
  4. 19 12月, 2017 1 次提交
  5. 12 12月, 2017 2 次提交
  6. 08 12月, 2017 2 次提交
  7. 05 12月, 2017 1 次提交
    • V
      drm/i915: Fix vblank timestamp/frame counter jumps on gen2 · a87e55f8
      Ville Syrjälä 提交于
      Previously I was under the impression that the scanline counter
      reads 0 when the pipe is off. Turns out that's not correct, and
      instead the scanline counter simply stops when the pipe stops, and
      it retains it's last value until the pipe starts up again, at which
      point the scanline counter jumps to vblank start.
      
      These jumps can cause the timestamp to jump backwards by one frame.
      Since we use the timestamps to guesstimage also the frame counter
      value on gen2, that would cause the frame counter to also jump
      backwards, which leads to a massice difference from the previous value.
      The end result is that flips/vblank events don't appear to complete as
      they're stuck waiting for the frame counter to catch up to that massive
      difference.
      
      Fix the problem properly by actually making sure the scanline counter
      has started to move before we assume that it's safe to enable vblank
      processing.
      
      v2: Less pointless duplication in the code (Chris)
      
      Cc: stable@vger.kernel.org
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NChris Wilson <chris@chris-wilson.co.uk>
      Fixes: b7792d8b ("drm/i915: Wait for pipe to start before sampling vblank timestamps on gen2")
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171129153732.3612-1-ville.syrjala@linux.intel.com
      (cherry picked from commit 8fedd64d)
      Signed-off-by: NJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      a87e55f8
  8. 01 12月, 2017 4 次提交
  9. 30 11月, 2017 2 次提交
  10. 28 11月, 2017 1 次提交
    • C
      drm/i915: Enable hotplug polling after registering the outputs · 448aa911
      Chris Wilson 提交于
      Previously we would enable hotplug polling on the outputs immediately
      upon construction. This would allow a very early hotplug event to
      trigger before we had finishing setting up the driver to handle it.
      Instead, move the output polling to the last step of registration, after
      we have set up all handlers, including the fbdev configuration.
      
      v2: Symmetrically turnoff the hotplug helper in unregister after the
      fbdev is first synchronised then finalized. This stops a late hotplug
      event being processed after the interrupts are disabled.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> #v1
      Link: https://patchwork.freedesktop.org/patch/msgid/20171128110147.28654-1-chris@chris-wilson.co.uk
      448aa911
  11. 23 11月, 2017 1 次提交
  12. 22 11月, 2017 9 次提交
  13. 21 11月, 2017 2 次提交
  14. 17 11月, 2017 2 次提交
  15. 16 11月, 2017 1 次提交
  16. 15 11月, 2017 1 次提交
  17. 14 11月, 2017 1 次提交
  18. 13 11月, 2017 3 次提交
  19. 11 11月, 2017 3 次提交