diff mbox series

[1/7] drm/i915/psr: Update PSR2 SU corruption workaround comment

Message ID 20190403233539.31828-1-jose.souza@intel.com (mailing list archive)
State New, archived
Headers show
Series [1/7] drm/i915/psr: Update PSR2 SU corruption workaround comment | expand

Commit Message

Souza, Jose April 3, 2019, 11:35 p.m. UTC
Turn out it is not a DMC bug it is actually a HW one, so this
workaround will be needed for current gens, lets update the comment
and remove the FIXME.

BSpec: 7723
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
---
 drivers/gpu/drm/i915/intel_psr.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Rodrigo Vivi April 4, 2019, 12:22 a.m. UTC | #1
On Wed, Apr 03, 2019 at 04:35:33PM -0700, José Roberto de Souza wrote:
> Turn out it is not a DMC bug it is actually a HW one, so this
> workaround will be needed for current gens, lets update the comment
> and remove the FIXME.

Do we have a Wa #number for this? p[art of workaround page
or just part of programming sequence?

> 
> BSpec: 7723
> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_psr.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c
> index ec874d802d48..c80bb3003a7d 100644
> --- a/drivers/gpu/drm/i915/intel_psr.c
> +++ b/drivers/gpu/drm/i915/intel_psr.c
> @@ -531,10 +531,8 @@ static void hsw_activate_psr2(struct intel_dp *intel_dp)
>  		val |= EDP_PSR2_TP2_TIME_2500us;
>  
>  	/*
> -	 * FIXME: There is probably a issue in DMC firmwares(icl_dmc_ver1_07.bin
> -	 * and kbl_dmc_ver1_04.bin at least) that causes PSR2 SU to fail after
> -	 * exiting DC6 if EDP_PSR_TP1_TP3_SEL is kept in PSR_CTL, so for now
> -	 * lets workaround the issue by cleaning PSR_CTL before enable PSR2.
> +	 * PSR2 HW is incorrectly using EDP_PSR_TP1_TP3_SEL and BSpec is
> +	 * recommending keep this bit unset while PSR2 is enabled.
>  	 */
>  	I915_WRITE(EDP_PSR_CTL, 0);
>  
> -- 
> 2.21.0
>
Runyan, Arthur J April 4, 2019, 12:39 a.m. UTC | #2
I update the Bspec as general programming.  SRD_CTL TP2 TP3 Select - "This bit impacts PSR2. Clear it before enabling PSR2 and do not set it while PSR2 is enabled."
I haven't seen the hardware bug report come through yet to establish the wa number.

> -----Original Message-----
> From: Vivi, Rodrigo
> Sent: Wednesday, 3 April, 2019 5:22 PM
> To: Souza, Jose <jose.souza@intel.com>; Runyan, Arthur J
> <arthur.j.runyan@intel.com>
> Cc: intel-gfx@lists.freedesktop.org; Pandiyan, Dhinakaran
> <dhinakaran.pandiyan@intel.com>
> Subject: Re: [PATCH 1/7] drm/i915/psr: Update PSR2 SU corruption workaround
> comment
> 
> On Wed, Apr 03, 2019 at 04:35:33PM -0700, José Roberto de Souza wrote:
> > Turn out it is not a DMC bug it is actually a HW one, so this
> > workaround will be needed for current gens, lets update the comment
> > and remove the FIXME.
> 
> Do we have a Wa #number for this? p[art of workaround page
> or just part of programming sequence?
> 
> >
> > BSpec: 7723
> > Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> > ---
> >  drivers/gpu/drm/i915/intel_psr.c | 6 ++----
> >  1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_psr.c
> b/drivers/gpu/drm/i915/intel_psr.c
> > index ec874d802d48..c80bb3003a7d 100644
> > --- a/drivers/gpu/drm/i915/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/intel_psr.c
> > @@ -531,10 +531,8 @@ static void hsw_activate_psr2(struct intel_dp
> *intel_dp)
> >  		val |= EDP_PSR2_TP2_TIME_2500us;
> >
> >  	/*
> > -	 * FIXME: There is probably a issue in DMC
> firmwares(icl_dmc_ver1_07.bin
> > -	 * and kbl_dmc_ver1_04.bin at least) that causes PSR2 SU to fail after
> > -	 * exiting DC6 if EDP_PSR_TP1_TP3_SEL is kept in PSR_CTL, so for now
> > -	 * lets workaround the issue by cleaning PSR_CTL before enable PSR2.
> > +	 * PSR2 HW is incorrectly using EDP_PSR_TP1_TP3_SEL and BSpec is
> > +	 * recommending keep this bit unset while PSR2 is enabled.
> >  	 */
> >  	I915_WRITE(EDP_PSR_CTL, 0);
> >
> > --
> > 2.21.0
> >
Rodrigo Vivi April 4, 2019, 12:51 a.m. UTC | #3
On Wed, Apr 03, 2019 at 05:39:40PM -0700, Runyan, Arthur J wrote:
> I update the Bspec as general programming.  SRD_CTL TP2 TP3 Select - "This bit impacts PSR2. Clear it before enabling PSR2 and do not set it while PSR2 is enabled."
> I haven't seen the hardware bug report come through yet to establish the wa number.

Thanks


Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>


> 
> > -----Original Message-----
> > From: Vivi, Rodrigo
> > Sent: Wednesday, 3 April, 2019 5:22 PM
> > To: Souza, Jose <jose.souza@intel.com>; Runyan, Arthur J
> > <arthur.j.runyan@intel.com>
> > Cc: intel-gfx@lists.freedesktop.org; Pandiyan, Dhinakaran
> > <dhinakaran.pandiyan@intel.com>
> > Subject: Re: [PATCH 1/7] drm/i915/psr: Update PSR2 SU corruption workaround
> > comment
> > 
> > On Wed, Apr 03, 2019 at 04:35:33PM -0700, José Roberto de Souza wrote:
> > > Turn out it is not a DMC bug it is actually a HW one, so this
> > > workaround will be needed for current gens, lets update the comment
> > > and remove the FIXME.
> > 
> > Do we have a Wa #number for this? p[art of workaround page
> > or just part of programming sequence?
> > 
> > >
> > > BSpec: 7723
> > > Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > > Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/intel_psr.c | 6 ++----
> > >  1 file changed, 2 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/intel_psr.c
> > b/drivers/gpu/drm/i915/intel_psr.c
> > > index ec874d802d48..c80bb3003a7d 100644
> > > --- a/drivers/gpu/drm/i915/intel_psr.c
> > > +++ b/drivers/gpu/drm/i915/intel_psr.c
> > > @@ -531,10 +531,8 @@ static void hsw_activate_psr2(struct intel_dp
> > *intel_dp)
> > >  		val |= EDP_PSR2_TP2_TIME_2500us;
> > >
> > >  	/*
> > > -	 * FIXME: There is probably a issue in DMC
> > firmwares(icl_dmc_ver1_07.bin
> > > -	 * and kbl_dmc_ver1_04.bin at least) that causes PSR2 SU to fail after
> > > -	 * exiting DC6 if EDP_PSR_TP1_TP3_SEL is kept in PSR_CTL, so for now
> > > -	 * lets workaround the issue by cleaning PSR_CTL before enable PSR2.
> > > +	 * PSR2 HW is incorrectly using EDP_PSR_TP1_TP3_SEL and BSpec is
> > > +	 * recommending keep this bit unset while PSR2 is enabled.
> > >  	 */
> > >  	I915_WRITE(EDP_PSR_CTL, 0);
> > >
> > > --
> > > 2.21.0
> > >
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c
index ec874d802d48..c80bb3003a7d 100644
--- a/drivers/gpu/drm/i915/intel_psr.c
+++ b/drivers/gpu/drm/i915/intel_psr.c
@@ -531,10 +531,8 @@  static void hsw_activate_psr2(struct intel_dp *intel_dp)
 		val |= EDP_PSR2_TP2_TIME_2500us;
 
 	/*
-	 * FIXME: There is probably a issue in DMC firmwares(icl_dmc_ver1_07.bin
-	 * and kbl_dmc_ver1_04.bin at least) that causes PSR2 SU to fail after
-	 * exiting DC6 if EDP_PSR_TP1_TP3_SEL is kept in PSR_CTL, so for now
-	 * lets workaround the issue by cleaning PSR_CTL before enable PSR2.
+	 * PSR2 HW is incorrectly using EDP_PSR_TP1_TP3_SEL and BSpec is
+	 * recommending keep this bit unset while PSR2 is enabled.
 	 */
 	I915_WRITE(EDP_PSR_CTL, 0);