From patchwork Tue Feb 26 07:35:59 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ramalingam C X-Patchwork-Id: 10829609 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 42A731805 for ; Tue, 26 Feb 2019 07:42:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3447B2AA7E for ; Tue, 26 Feb 2019 07:42:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 27EF52AAAD; Tue, 26 Feb 2019 07:42:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 25F792AA7E for ; Tue, 26 Feb 2019 07:42:05 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5B63189B99; Tue, 26 Feb 2019 07:42:03 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6019589B95; Tue, 26 Feb 2019 07:42:01 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Feb 2019 23:42:01 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,414,1544515200"; d="scan'208";a="125259403" Received: from mint-dev.iind.intel.com ([10.223.25.164]) by fmsmga007.fm.intel.com with ESMTP; 25 Feb 2019 23:41:59 -0800 From: Ramalingam C To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, daniel.vetter@ffwll.ch, uma.shankar@intel.com Date: Tue, 26 Feb 2019 13:05:59 +0530 Message-Id: <1551166569-19683-1-git-send-email-ramalingam.c@intel.com> X-Mailer: git-send-email 2.7.4 Subject: [Intel-gfx] [PATCH 00/10] HDCP2.2 Phase II X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP HDCP2.2 phase-II mojorly adds below features: Addition of three connector properties CP_Content_Type CP_SRM CP_Downstream_Info parsing for HDCP1.4 and 2.2 SRM Blobs Once HDCP1.4/2.2 authentication is completed gathering the all downstream topology for userspace Extending debugfs entry to provide the HDCP2.2 capability too. CP_Content_Type: This property is used to indicate the content type classification of a stream. Which indicate the HDCP version required for the rendering of that streams. This conten type is one of the parameter in the HDCP2.2 authentication flow, as even downstream repeaters will mandate the HDCP version requirement. Two values possible for content type of a stream: Type 0: Stream can be rendered only on HDCP encrypted link no restriction on HDCP versions. Type 1: Stream can be rendered only on HDCP2.2 encrypted link. There is a parallel effort in #wayland community to add the support for HDCP2.2 along with content type support. Patches are under review in #wayland community. CP_SRM: This blob property is used by the userspace to pass the SRM table of HDCP1.4 and 2.2. These are nothing but revocated list of receiver IDs of the HDCP sinks. KMD will use this list to identify the revocated devices in the HDCP authentication and deny the hdcp encryption to it. Work in progress to add the SRM support in the weston HDCP stack. Yet to publish the patches in the #wayland community. CP_Downstream_Info: This blob property is used by the kernel to pass the downstream topology of the HDCP encrypted port to the userspace. This is used by the userspace to implement the HDCP repeater, which KMD implementing the HDCP transmitters(downstream ports) and userspace implementing the upstream port(HDCP receiver). Discussion is on going to add the downstream_info support in the weston HDCP stack. Test-with: 1551165805-19130-2-git-send-email-ramalingam.c@intel.com Ramalingam C (10): drm: Add CP content type property drm/i915: Attach content type property drm: Add CP System Renewability Msg Property drm/i915: Add HDCP SRM Blob parsing drm/i915: Add revocation check on HDCP1.4 Ksvs drm/i915: SRM parsing and revocation check for HDCP2 drm: Add CP downstream_info property drm/i915: Populate downstream info for HDCP1.4 drm/i915: Populate downstream info for HDCP2.2 drm/i915: debugfs: HDCP2.2 capability read drivers/gpu/drm/drm_atomic_uapi.c | 23 +++ drivers/gpu/drm/drm_connector.c | 204 ++++++++++++++++++++ drivers/gpu/drm/i915/i915_debugfs.c | 13 +- drivers/gpu/drm/i915/intel_ddi.c | 23 ++- drivers/gpu/drm/i915/intel_drv.h | 11 +- drivers/gpu/drm/i915/intel_hdcp.c | 373 ++++++++++++++++++++++++++++++++++-- include/drm/drm_connector.h | 40 ++++ include/drm/drm_hdcp.h | 35 ++++ include/uapi/drm/drm_mode.h | 39 ++++ 9 files changed, 737 insertions(+), 24 deletions(-)