Ok, here's v2 of the HDCP patchset, no longer RFC since I've tackled the TODO list I set out in the first version (Annotated below for convenience). The big changes to take note of in v2 is locking. To account for atomic async + the property's mutability, I'm using a dedicated mutex and moved property setting on the kernel side to the worker. I think this is actually a lot easier to read, and it opens the door to future improvements such as not doing the enable/disable via modeset. TODO: - DONE: Add kerneldoc for property - DONE: Fix '//' comments - DONE: Change to MIT license - DONE: Improve documentation on drm_intel_hdcp_shim - DONE: Fix async commit locking (ie: don't use connection_mutex) - DONE: Don't change connector->state in enable, defer to worker - Rebase on Ville's gmbus fixes (thanks Ville) - Looks like these haven't landed, but I've rebased on drm-intel-next - Add igt coverage for the feature. - Working on this now Thanks! Sean Sean Paul (8): drm: Fix link-status kerneldoc line lengths drm/i915: Add more control to wait_for routines drm: Add Content Protection property drm: Add some HDCP related #defines drm/i915: Add HDCP framework + base implementation drm/i915: Add function to output Aksv over GMBUS drm/i915: Implement HDCP for HDMI drm/i915: Implement HDCP for DisplayPort drivers/gpu/drm/drm_atomic.c | 8 + drivers/gpu/drm/drm_connector.c | 80 ++++- drivers/gpu/drm/drm_sysfs.c | 1 + drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/i915_drv.h | 1 + drivers/gpu/drm/i915/i915_reg.h | 85 +++++ drivers/gpu/drm/i915/intel_atomic.c | 26 +- drivers/gpu/drm/i915/intel_ddi.c | 64 ++++ drivers/gpu/drm/i915/intel_dp.c | 245 ++++++++++++- drivers/gpu/drm/i915/intel_drv.h | 98 +++++- drivers/gpu/drm/i915/intel_hdcp.c | 684 ++++++++++++++++++++++++++++++++++++ drivers/gpu/drm/i915/intel_hdmi.c | 254 +++++++++++++ drivers/gpu/drm/i915/intel_i2c.c | 54 ++- drivers/gpu/drm/i915/intel_uncore.c | 23 +- drivers/gpu/drm/i915/intel_uncore.h | 14 +- include/drm/drm_connector.h | 16 + include/drm/drm_dp_helper.h | 17 + include/drm/drm_hdcp.h | 56 +++ include/uapi/drm/drm_mode.h | 4 + 19 files changed, 1697 insertions(+), 34 deletions(-) create mode 100644 drivers/gpu/drm/i915/intel_hdcp.c create mode 100644 include/drm/drm_hdcp.h -- 2.15.0.531.g2ccb3012c9-goog _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx