[Intel-gfx] [PATCH v4 2/2] drm/i915/hdcp: Fix config_stream_type() ret value

Ramalingam C ramalingam.c at intel.com
Tue Mar 3 06:25:33 UTC 2020


On 2020-03-03 at 11:22:03 +0530, Anshuman Gupta wrote:
> On 2020-03-03 at 11:13:25 +0530, Ramalingam C wrote:
> > On 2020-03-03 at 10:54:07 +0530, Anshuman Gupta wrote:
> > > DP shim's config_stream_type considered to be succeeded when
> > > return value of intel_dp_hdcp2_write_msg() equals to size of
> > > message to be written, it makes config_stream_type to return
> > > a zero success value in order to succeed the HDCP auth.
> > > 
> > > v2:
> > > - config_stream_type() returns 0 on success. [Ram]
> > > 
> > > CC: Ramalingam C <ramalingam.c at intel.com>
> > > Signed-off-by: Anshuman Gupta <anshuman.gupta at intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_dp.c | 8 +++++++-
> > >  1 file changed, 7 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> > > index 2db8d46f61a1..2259c2527457 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_dp.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> > > @@ -6448,6 +6448,7 @@ static
> > >  int intel_dp_hdcp2_config_stream_type(struct intel_digital_port *intel_dig_port,
> > >  				      bool is_repeater, u8 content_type)
> > >  {
> > > +	int ret;
> > >  	struct hdcp2_dp_errata_stream_type stream_type_msg;
> > >  
> > >  	if (is_repeater)
> > > @@ -6463,8 +6464,13 @@ int intel_dp_hdcp2_config_stream_type(struct intel_digital_port *intel_dig_port,
> > >  	stream_type_msg.msg_id = HDCP_2_2_ERRATA_DP_STREAM_TYPE;
> > >  	stream_type_msg.stream_type = content_type;
> > >  
> > > -	return intel_dp_hdcp2_write_msg(intel_dig_port, &stream_type_msg,
> > > +	ret =  intel_dp_hdcp2_write_msg(intel_dig_port, &stream_type_msg,
> > >  					sizeof(stream_type_msg));
> > > +
> > > +	if (ret == sizeof(stream_type_msg))
> > return ret < 0 ? ret : 0;
> > Above statement will be sufficient here?
> IMHO if intel_dp_hdcp2_write_msg() is being abstracted,
> it should return success only when its return value
> is equals to size to be written.
> yes, return ret == sizeof(stream_type_msg) ? 0 : ret
> would make sense to reduced line of code.
> I can change that. 
intel_dp_hdcp2_write_msg can't return >0  and != sizeof(stream_type_msg)
because that is error scenario hence return will be <0. So check for the
size of msg size is not compulsary

I am fine with this too.

-Ram
> 
> Thanks,
> Anshuman.
> > 
> > -Ram
> > > +		return 0;
> > > +	else
> > > +		return ret;
> > >  }
> > >  
> > >  static
> > > -- 
> > > 2.25.1
> > > 


More information about the Intel-gfx mailing list