This series adds the content type capability for HDCP through a drm connetor proeprty "HDCP Content Type". By default this property will be "Type 0". And this property is exposed by the drivers which has the HDCP2.2 capability to enable the userspace to configure for "Type 1". HDCP 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. And also this series adds a uevent for a change in the property state change of a connector. This helps the userspace to monitor the uevent for a property state change than the trivial polling. Userspace consumer for above "HDCP Content Type" property and uevent is almost at the last phase of review at #wayland community. So Patches 7, 8, 9, 10 and 11 can be merged only when patches in #wayland community receives the ACK. HDCP SRM is implemented through request_firmware() interface. Hence userspace is expected to write the signature validated latest available SRM table into /lib/firmware/ as "display_hdcp_srm.bin". On every HDCP authentication kernel will read the SRM from above mentioned file and do the revocation check. And also this series gathers all HDCP related DRM code into drm_hdcp.c Thanks Daniel Vetter for all the reviews. v7: few suggestions in SRM handling at drm is addressed [Daniel] A prep patch is added. fix at content_type attachment is added. Series can be cloned from github https://github.com/ramalingampc2008/drm-tip.git hdcp2_2_p2_v7 Test-with: <20190502131625.27551-2-ramalingam.c@xxxxxxxxx> Ramalingam C (11): drm: move content protection property to mode_config drm/i915: debugfs: HDCP2.2 capability read drm: generic fn converting be24 to cpu and vice versa drm: revocation check at drm subsystem drm/i915: SRM revocation check for HDCP1.4 and 2.2 drm/hdcp: gathering hdcp related code into drm_hdcp.c drm: Add Content protection type property drm/i915: Attach content type property drm: uevent for connector status change drm/hdcp: update content protection property with uevent drm/i915: update the hdcp state with uevent Documentation/gpu/drm-kms-helpers.rst | 6 + drivers/gpu/drm/Makefile | 2 +- drivers/gpu/drm/drm_atomic_uapi.c | 8 +- drivers/gpu/drm/drm_connector.c | 61 ++-- drivers/gpu/drm/drm_hdcp.c | 446 ++++++++++++++++++++++++++ drivers/gpu/drm/drm_internal.h | 4 + drivers/gpu/drm/drm_sysfs.c | 37 +++ drivers/gpu/drm/i915/i915_debugfs.c | 13 +- drivers/gpu/drm/i915/intel_ddi.c | 39 ++- drivers/gpu/drm/i915/intel_hdcp.c | 105 ++++-- drivers/gpu/drm/i915/intel_hdcp.h | 3 +- drivers/misc/mei/hdcp/mei_hdcp.c | 2 +- include/drm/drm_connector.h | 15 +- include/drm/drm_hdcp.h | 33 +- include/drm/drm_mode_config.h | 12 + include/drm/drm_sysfs.h | 5 +- include/uapi/drm/drm_mode.h | 4 + 17 files changed, 698 insertions(+), 97 deletions(-) create mode 100644 drivers/gpu/drm/drm_hdcp.c -- 2.19.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel