diff options
author | Ramalingam C | 2018-02-02 23:09:08 +0100 |
---|---|---|
committer | Sean Paul | 2018-02-05 18:59:18 +0100 |
commit | 791a98dd9bcfd214d8ef51d248f377354a9ea683 (patch) | |
tree | a5ae6a5df0c86d5adda3d5a3c5f0f321d4b0b750 /drivers/gpu/drm/i915/intel_drv.h | |
parent | drm/i915: Optimize HDCP key load (diff) | |
download | kernel-qcow2-linux-791a98dd9bcfd214d8ef51d248f377354a9ea683.tar.gz kernel-qcow2-linux-791a98dd9bcfd214d8ef51d248f377354a9ea683.tar.xz kernel-qcow2-linux-791a98dd9bcfd214d8ef51d248f377354a9ea683.zip |
drm/i915: Detect panel's hdcp capability
DP HDCP1.4 spec mandates that An can be written to panel only after
detecting the panel's hdcp capability.
For DP 0th Bit of Bcaps register indicates the panel's hdcp capability
For HDMI valid BKSV indicates the panel's hdcp capability.
For HDMI it is optional to detect the panel's hdcp capability before
An Write.
v2:
Added comments explaining the need for action [Seanpaul].
Made panel's hdcp capability detection optional for hdmi [Seanpaul].
Defined a func for reading bcaps for DP [Seanpaul].
v3:
Removed the NULL initialization [Seanpaul].
Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/1517609350-10698-7-git-send-email-ramalingam.c@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_drv.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_drv.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index 9461777d65b4..c902be85e456 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h @@ -369,6 +369,10 @@ struct intel_hdcp_shim { /* Ensures the link is still protected */ bool (*check_link)(struct intel_digital_port *intel_dig_port); + + /* Detects panel's hdcp capability. This is optional for HDMI. */ + int (*hdcp_capable)(struct intel_digital_port *intel_dig_port, + bool *hdcp_capable); }; struct intel_connector { |