drm/i915: Implement HDCP for DisplayPort
authorSean Paul <seanpaul@chromium.org>
Mon, 8 Jan 2018 19:55:43 +0000 (14:55 -0500)
committerSean Paul <seanpaul@chromium.org>
Mon, 8 Jan 2018 19:58:44 +0000 (14:58 -0500)
commit20f24d776d1be6ecf353f21a158e7b716143e523
treefcfb6175a596528b10f721d7085d42cf5d43141e
parent2320175feb74a11d3b287eead09bb5c0953cf27f
drm/i915: Implement HDCP for DisplayPort

This patch adds HDCP support for DisplayPort connectors by implementing
the intel_hdcp_shim.

Most of this is straightforward read/write from/to DPCD registers. One
thing worth pointing out is the Aksv output bit. It wasn't easily
separable like it's HDMI counterpart, so it's crammed in with the rest
of it.

Changes in v2:
- Moved intel_hdcp_check_link out of intel_dp_check_link and only call
  it on short pulse. Since intel_hdcp_check_link does its own locking,
  this ensures we don't deadlock when intel_dp_check_link is called
  holding connection_mutex.
- Rebased on drm-intel-next
Changes in v3:
- Initialize new worker
Changes in v4:
- Use intel_hdcp_init (Daniel)
- Check for reauth requests in check_link (Ram)
Changes in v5:
- None
Changes in v6:
- Fix build warnings when printing ssize_t

Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Ramalingam C <ramalingam.c@intel.com>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20180108195545.218615-10-seanpaul@chromium.org
drivers/gpu/drm/i915/intel_dp.c