On Sat, Feb 03, 2018 at 01:41:30AM +0530, Ramalingam C wrote: > If a HDCP repeater is detected with zero downstream devices, > HDCP spec approves either of below actions: > > 1. Dont continue on second stage authentication. Disable encryption. > 2. Continue with second stage authentication excluding the KSV list and > on success, continue encryption. > > Since disable encryption is agreed, repeater is not expected to have its > own display. So there is no consumption of the display content in such > setup. > > Hence, incase of repeater with zero device count, this patch fails the > HDCP authentication and stops the HDCP encryption. > > v2: > Rephrased commit msg and added comments in code [Seanpaul] > > Signed-off-by: Ramalingam C <ramalingam.c@xxxxxxxxx> Reviewed-by: Sean Paul <seanpaul@xxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_hdcp.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_hdcp.c b/drivers/gpu/drm/i915/intel_hdcp.c > index de9a925c122d..0a1ef82c77a2 100644 > --- a/drivers/gpu/drm/i915/intel_hdcp.c > +++ b/drivers/gpu/drm/i915/intel_hdcp.c > @@ -166,10 +166,16 @@ int intel_hdcp_auth_downstream(struct intel_digital_port *intel_dig_port, > return -EPERM; > } > > - /* If there are no downstream devices, we're all done. */ > + /* > + * When repeater reports 0 device count, HDCP1.4 spec allows disabling > + * the HDCP encryption. That implies that repeater can't have its own > + * display. As there is no consumption of encrypted content in the > + * repeater with 0 downstream devices, we are failing the > + * authentication. > + */ > num_downstream = DRM_HDCP_NUM_DOWNSTREAM(bstatus[0]); > if (num_downstream == 0) > - return 0; > + return -EINVAL; > > ksv_fifo = kzalloc(num_downstream * DRM_HDCP_KSV_LEN, GFP_KERNEL); > if (!ksv_fifo) > -- > 2.7.4 > -- Sean Paul, Software Engineer, Google / Chromium OS _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx