[Intel-gfx] [PATCH v2] drm/i915/icl: Fix CRC mismatch error for DP link layer compliance

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Fri Mar 8 12:49:47 UTC 2019


Op 08-03-2019 om 12:39 schreef Saarinen, Jani:
> Ping, ok to merge? 
Could we have an icl shards run on this before merging?
>> -----Original Message-----
>> From: Intel-gfx [mailto:intel-gfx-bounces at lists.freedesktop.org] On Behalf Of
>> Kahola, Mika
>> Sent: torstai 7. maaliskuuta 2019 9.52
>> To: intel-gfx at lists.freedesktop.org; Swarup, Aditya <aditya.swarup at intel.com>
>> Subject: Re: [Intel-gfx] [PATCH v2] drm/i915/icl: Fix CRC mismatch error for DP link
>> layer compliance
>>
>> The patch looks ok to me.
>>
>> On Wed, 2019-03-06 at 18:14 -0800, Aditya Swarup wrote:
>>> Setting the pixel rounding bit to 1 in PIPE_CHICKEN register allows to
>>> passthrough FB pixels unmodified across pipe. This fixes the failures
>>> for DP link layer compliance tests 4.4.1.1, 4.4.1.2 & 4.4.1.3.
>>> (Lineage #1605353570)
>>>
>>> v2: This is also needed to fix failing IGT test case kms_cursor_crc on
>>> ICL.(Mika Kahola) Make macros consistent with i915_reg.h
>>> comments.(Jani Nikula)
>>>
>>> Cc: Clint Taylor <clinton.a.taylor at intel.com>
>>> Cc: Mika Kahola <mika.kahola at intel.com>
>>> Cc: Jani Nikula <jani.nikula at linux.intel.com>
>> Reviewed-by: Mika Kahola <mika.kahola at intel.com>
>>
>>> Signed-off-by: Aditya Swarup <aditya.swarup at intel.com>
>>> ---
>>>  drivers/gpu/drm/i915/i915_reg.h      | 13 +++++++------
>>>  drivers/gpu/drm/i915/intel_display.c |  8 +++++++-
>>>  2 files changed, 14 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_reg.h
>>> b/drivers/gpu/drm/i915/i915_reg.h index c9b868347481..cf15a9a97d74
>>> 100644
>>> --- a/drivers/gpu/drm/i915/i915_reg.h
>>> +++ b/drivers/gpu/drm/i915/i915_reg.h
>>> @@ -7659,12 +7659,13 @@ enum {
>>>  #define  GEN9_LBS_SLA_RETRY_TIMER_DECREMENT_ENABLE	(1 << 2)
>>>
>>>  /*GEN11 chicken */
>>> -#define _PIPEA_CHICKEN			0x70038
>>> -#define _PIPEB_CHICKEN			0x71038
>>> -#define _PIPEC_CHICKEN			0x72038
>>> -#define  PER_PIXEL_ALPHA_BYPASS_EN	(1 << 7)
>>> -#define PIPE_CHICKEN(pipe)		_MMIO_PIPE(pipe,
>>> _PIPEA_CHICKEN,\
>>> -						   _PIPEB_CHICKEN)
>>> +#define _PIPEA_CHICKEN				0x70038
>>> +#define _PIPEB_CHICKEN				0x71038
>>> +#define _PIPEC_CHICKEN				0x72038
>>> +#define PIPE_CHICKEN(pipe)			_MMIO_PIPE(pipe,
>>> _PIPEA_CHICKEN,\
>>> +							   _PIPEB_CHICK
>>> EN)
>>> +#define   PIXEL_ROUNDING_TRUNC_FB_PASSTHRU 	(1 << 15)
>>> +#define   PER_PIXEL_ALPHA_BYPASS_EN		(1 << 7)
>>>
>>>  /* PCH */
>>>
>>> diff --git a/drivers/gpu/drm/i915/intel_display.c
>>> b/drivers/gpu/drm/i915/intel_display.c
>>> index d852cb282060..92be3476fef1 100644
>>> --- a/drivers/gpu/drm/i915/intel_display.c
>>> +++ b/drivers/gpu/drm/i915/intel_display.c
>>> @@ -3970,7 +3970,13 @@ static void icl_set_pipe_chicken(struct
>>> intel_crtc *crtc)
>>>  	 * and rounding for per-pixel values 00 and 0xff
>>>  	 */
>>>  	tmp |= PER_PIXEL_ALPHA_BYPASS_EN;
>>> -
>>> +	/*
>>> +	 * Display WA # 1605353570: icl
>>> +	 * Set the pixel rounding bit to 1 for allowing
>>> +	 * passthrough of Frame buffer pixels unmodified
>>> +	 * across pipe
>>> +	 */
>>> +	tmp |= PIXEL_ROUNDING_TRUNC_FB_PASSTHRU;
>>>  	I915_WRITE(PIPE_CHICKEN(pipe), tmp);  }
>>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx




More information about the Intel-gfx mailing list