From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752166AbdLAS6u (ORCPT ); Fri, 1 Dec 2017 13:58:50 -0500 Received: from mail-io0-f193.google.com ([209.85.223.193]:34182 "EHLO mail-io0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751208AbdLAS6t (ORCPT ); Fri, 1 Dec 2017 13:58:49 -0500 X-Google-Smtp-Source: AGs4zMYCQitjuOYCcA7YA2a2nFXYDytBEP7PBfZFa3QE9uVJaLoq/kzZm1AIBewYSyly5t2W+8kHKw== MIME-Version: 1.0 In-Reply-To: <51e9e5db-0f29-5ece-eca7-7c2826b39135@xs4all.nl> References: <20171201172032.47357-1-seanpaul@chromium.org> <51e9e5db-0f29-5ece-eca7-7c2826b39135@xs4all.nl> From: Sean Paul Date: Fri, 1 Dec 2017 13:58:26 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2 0/8] drm/i915: Implement HDCP To: Hans Verkuil Cc: dri-devel , Intel Graphics Development , Daniel Vetter , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Dec 1, 2017 at 1:47 PM, Hans Verkuil wrote: > Hi Sean, > > On 12/01/2017 06:20 PM, Sean Paul wrote: >> 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 > > Looking at this patch series it seems that there is no drm support to get the > BKSV from the i915, right? If you want to use the i915 (or any HDMI/DP output) > in a repeater scenario then userspace has to be able to obtain that information > so it can be added to the BKSV of the HDMI receiver. > Hi Hans, Repeater support is implemented in intel_hdcp_auth_downstream() > For the record, the V4L2 subsystem used by HDMI receivers doesn't support HDCP > yet, although patches exist. > > I can understand that you are not (yet) adding repeater support, but it should > be documented somewhere in the patch series that this is not there yet and > that a standard DRM API would be needed to obtain the BKSV from the transmitter. > > Second question: has this been tested with a MST hub? > No, MST is not supported at the moment (there's a TODO in the code) Sean > Regards, > > Hans > >> >> 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 >> >