mbox series

[RFC,0/2] i915: Add debugfs for requesting HDCP version

Message ID 20200527110132.16679-1-ankit.k.nautiyal@intel.com (mailing list archive)
Headers show
Series i915: Add debugfs for requesting HDCP version | expand

Message

Nautiyal, Ankit K May 27, 2020, 11:01 a.m. UTC
Currently, for a given content-protection request, the kernel selects
the highest version of HDCP supported by the panel and the platform.

This makes the testing/debugging difficult for lower versions of HDCP.
E.g. In case both the lower and the higher HDCP versions are supported 
then the higher version of HDCP will always be selected and the
lower HDCP version cannot be tested without changing the setup.

A solution for this was proposed in an IGT patch [1] by removing
"mei_hdcp" module, but a need for a generic future-proof solution was
identified.

As suggested by the community members, this patch attempts to add a
new debugfs per connector for requesting a specific version of HDCP
for debug/testing environment.

The test can request for a specific HDCP version and set the
appropriate content-protection connector properties to test the
required version. The kernel will consider the request if the HDCP
version is sufficient for the requested content-protection.

To make the design simpler, the debugfs for requesting the HDCP
version can be only set when the content-protection is disabled.
In case, the test tries to write the debugfs while a request for
content-protectiont is ongoing, the write will be failed.
So the test needs to make sure that the content-protection is disabled
before requesting for an HDCP version via debugfs.


[1] https://patchwork.freedesktop.org/patch/358240/

Ankit Nautiyal (2):
  drm/i915: Add support for considering HDCP ver requested via debugfs
  drm/i915: Add a new debugfs to request HDCP version

 .../drm/i915/display/intel_display_debugfs.c  | 98 +++++++++++++++++++
 .../drm/i915/display/intel_display_types.h    | 10 ++
 drivers/gpu/drm/i915/display/intel_hdcp.c     |  8 +-
 3 files changed, 114 insertions(+), 2 deletions(-)