Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit V2

2019-12-09 Thread Alex Deucher
On Sun, Dec 8, 2019 at 8:42 PM Evan Quan  wrote:
>
> This is needed for coming asic init on performing gpu reset.
>
> V2: use non-asic specific programing way
>
> Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> Signed-off-by: Evan Quan 

Reviewed-by: Alex Deucher 

> ---
>  drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 7 +++
>  1 file changed, 7 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c 
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> index f5469ad43929..7781d245f8ef 100644
> --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> @@ -1676,10 +1676,17 @@ int smu_v11_0_baco_set_state(struct smu_context *smu, 
> enum smu_baco_state state)
> }
> } else {
> ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> +   if (ret)
> +   goto out;
> +
> bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> BIF_DOORBELL_INT_CNTL,
> DOORBELL_INTERRUPT_DISABLE, 
> 0);
> WREG32_SOC15(NBIO, 0, mmBIF_DOORBELL_INT_CNTL, 
> bif_doorbell_intr_cntl);
> +
> +   /* clear vbios scratch 6 and 7 for coming asic reinit */
> +   WREG32(adev->bios_scratch_reg_offset + 6, 0);
> +   WREG32(adev->bios_scratch_reg_offset + 7, 0);
> }
> if (ret)
> goto out;
> --
> 2.24.0
>
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-08 Thread Quan, Evan
Thanks. Just sent out a V2.

> -Original Message-
> From: Alex Deucher 
> Sent: Friday, December 6, 2019 9:59 PM
> To: Quan, Evan 
> Cc: amd-gfx list ; Luo, Zhigang
> 
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
> 
> On Thu, Dec 5, 2019 at 10:36 PM Evan Quan  wrote:
> >
> > This is needed for coming asic init on performing gpu reset.
> >
> > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > Signed-off-by: Evan Quan 
> > ---
> >  drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> >  1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > index 39ec06aee809..ab809df7bc35 100644
> > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> smu_context *smu, enum smu_baco_state state)
> > }
> > } else {
> > ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > +   if (ret)
> > +   goto out;
> > +
> > +   WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > +   WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> 
> Please use:
> WREG32(adev->bios_scratch_reg_offset + 6, 0); WREG32(adev-
> >bios_scratch_reg_offset + 7, 0); So we don't have to worry about asic 
> >specific
> scratch register offsets.
> 
> > +
> > bif_doorbell_intr_cntl = 
> > REG_SET_FIELD(bif_doorbell_intr_cntl,
> > BIF_DOORBELL_INT_CNTL,
> >
> > DOORBELL_INTERRUPT_DISABLE, 0);
> > --
> > 2.24.0
> >
> > ___
> > amd-gfx mailing list
> > amd-gfx@lists.freedesktop.org
> > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist
> > s.freedesktop.org%2Fmailman%2Flistinfo%2Famd-
> gfxdata=02%7C01%7Cev
> >
> an.quan%40amd.com%7Cc8cc8c10f81a47a79fcf08d77a546f33%7C3dd8961fe4
> 884e6
> >
> 08e11a82d994e183d%7C0%7C0%7C637112375369462062sdata=cMVnI
> %2BkSAsW
> > 1rkwPe%2BpBPKHWDIWOE9Br%2FDEpZejEOZA%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Luo, Zhigang
[AMD Official Use Only - Internal Distribution Only]

Thanks, Hawking.

--Zhigang

-Original Message-
From: Zhang, Hawking  
Sent: December 6, 2019 12:35 PM
To: Luo, Zhigang ; Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; 
amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

It was used to indicate whether bios or driver to handle display mode for 
various display type. And also some field to indicate other display status like 
docking/undocking, LID  open/close, etc.

Check atombios_encoder.c for its major usage

Regards,
Hawking

-Original Message-
From: Luo, Zhigang 
Sent: 2019年12月6日 23:37
To: Zhang, Hawking ; Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; 
amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

[AMD Official Use Only - Internal Distribution Only]

Can someone tell me what's BIOS_SCRATCH_6 used for? I know BIOS_SCRATCH_7 is 
used for asic init.

Thanks,
Zhigang

-Original Message-
From: Zhang, Hawking 
Sent: December 6, 2019 9:22 AM
To: Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

Ah yes, I made a logical mistake. This should work.

Regards,
Hawking
-Original Message-
From: Alex Deucher 
Sent: 2019年12月6日 22:01
To: Zhang, Hawking 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
>
> Correct my typo
>
> This is in high risk to break gpu resume and reset just because you clear the 
> ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> atom_bios init will be skipped.
>

I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, we'll 
assume the card needs to be posted, which it probably should after BACO.  This 
may even be what makes this patch a fix.

Alex

> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Zhang, Hawking
> Sent: 2019年12月6日 16:07
> To: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> This is in high risk to break secondary gpu resume and reset just because you 
> clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And 
> the atom_bios init will be skipped.
>
> We shall understand any libgv fixes very well before "copy" it to bare-metal. 
> Libgv don't need to take care S3.
>
> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Quan, Evan
> Sent: 2019年12月6日 13:27
> To: Yuan, Xiaojie ; Luo, Zhigang 
> 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> Hi Xiaojie,
>
> This was reported by Zhigang team.  Under their special use case, scratch 
> register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> And considering old asics(vega20/10) also applied this change.
> So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> the new ASICs also.
>
> Regards,
> Evan
> > -Original Message-
> > From: Yuan, Xiaojie 
> > Sent: Friday, December 6, 2019 12:20 PM
> > To: Quan, Evan 
> > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > 
> > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > Hi Evan,
> >
> > Just out of curiosity, may I know what issue are you trying to fix?
> > I used to see vbios post failure (hangs in atombios init table) 
> > after baco exit occasionally on navi.
> >
> > BR,
> > Xiaojie
> >
> > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > >
> > > This is needed for coming asic init on performing gpu reset.
> > >
> > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > Signed-off-by: Evan Quan 
> > > ---
> > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > index 39ec06aee809..ab809df7bc35 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > smu_context *smu, enum smu_baco_state state)
> > >}
> > >} else {
> > >ret = sm

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Zhang, Hawking
It was used to indicate whether bios or driver to handle display mode for 
various display type. And also some field to indicate other display status like 
docking/undocking, LID  open/close, etc.

Check atombios_encoder.c for its major usage

Regards,
Hawking

-Original Message-
From: Luo, Zhigang  
Sent: 2019年12月6日 23:37
To: Zhang, Hawking ; Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; 
amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

[AMD Official Use Only - Internal Distribution Only]

Can someone tell me what's BIOS_SCRATCH_6 used for? I know BIOS_SCRATCH_7 is 
used for asic init.

Thanks,
Zhigang

-Original Message-
From: Zhang, Hawking 
Sent: December 6, 2019 9:22 AM
To: Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

Ah yes, I made a logical mistake. This should work.

Regards,
Hawking
-Original Message-
From: Alex Deucher 
Sent: 2019年12月6日 22:01
To: Zhang, Hawking 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
>
> Correct my typo
>
> This is in high risk to break gpu resume and reset just because you clear the 
> ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> atom_bios init will be skipped.
>

I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, we'll 
assume the card needs to be posted, which it probably should after BACO.  This 
may even be what makes this patch a fix.

Alex

> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Zhang, Hawking
> Sent: 2019年12月6日 16:07
> To: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> This is in high risk to break secondary gpu resume and reset just because you 
> clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And 
> the atom_bios init will be skipped.
>
> We shall understand any libgv fixes very well before "copy" it to bare-metal. 
> Libgv don't need to take care S3.
>
> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Quan, Evan
> Sent: 2019年12月6日 13:27
> To: Yuan, Xiaojie ; Luo, Zhigang 
> 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> Hi Xiaojie,
>
> This was reported by Zhigang team.  Under their special use case, scratch 
> register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> And considering old asics(vega20/10) also applied this change.
> So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> the new ASICs also.
>
> Regards,
> Evan
> > -Original Message-
> > From: Yuan, Xiaojie 
> > Sent: Friday, December 6, 2019 12:20 PM
> > To: Quan, Evan 
> > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > 
> > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > Hi Evan,
> >
> > Just out of curiosity, may I know what issue are you trying to fix?
> > I used to see vbios post failure (hangs in atombios init table) 
> > after baco exit occasionally on navi.
> >
> > BR,
> > Xiaojie
> >
> > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > >
> > > This is needed for coming asic init on performing gpu reset.
> > >
> > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > Signed-off-by: Evan Quan 
> > > ---
> > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > index 39ec06aee809..ab809df7bc35 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > smu_context *smu, enum smu_baco_state state)
> > >}
> > >} else {
> > >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > > +if (ret)
> > > +goto out;
> > > +
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > > +
> > >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_door

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Luo, Zhigang
[AMD Official Use Only - Internal Distribution Only]

Thanks, Alex.

> > This was reported by Zhigang team.  Under their special use case, scratch 
> > register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
Yes, sriov driver use this register to detect if asic init performed or not. 

--Zhigang

-Original Message-
From: Alex Deucher  
Sent: December 6, 2019 10:42 AM
To: Luo, Zhigang 
Cc: Zhang, Hawking ; Quan, Evan ; 
Yuan, Xiaojie ; amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

On Fri, Dec 6, 2019 at 10:37 AM Luo, Zhigang  wrote:
>
> [AMD Official Use Only - Internal Distribution Only]
>
> Can someone tell me what's BIOS_SCRATCH_6 used for? I know BIOS_SCRATCH_7 is 
> used for asic init.

ATOM_S6_CRITICAL_STATE and ATOM_S6_ACC_MODE.  See the other S6 defines in 
atombios.h.  I think it's mainly for display.

Alex

>
> Thanks,
> Zhigang
>
> -Original Message-
> From: Zhang, Hawking 
> Sent: December 6, 2019 9:22 AM
> To: Alex Deucher 
> Cc: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang ; 
> amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> Ah yes, I made a logical mistake. This should work.
>
> Regards,
> Hawking
> -Original Message-
> From: Alex Deucher 
> Sent: 2019年12月6日 22:01
> To: Zhang, Hawking 
> Cc: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang ; 
> amd-gfx@lists.freedesktop.org
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
> >
> > Correct my typo
> >
> > This is in high risk to break gpu resume and reset just because you clear 
> > the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> > atom_bios init will be skipped.
> >
>
> I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, 
> we'll assume the card needs to be posted, which it probably should after 
> BACO.  This may even be what makes this patch a fix.
>
> Alex
>
> > Regards,
> > Hawking
> > -Original Message-----
> > From: amd-gfx  On Behalf Of 
> > Zhang, Hawking
> > Sent: 2019年12月6日 16:07
> > To: Quan, Evan ; Yuan, Xiaojie 
> > ; Luo, Zhigang 
> > Cc: amd-gfx@lists.freedesktop.org
> > Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > This is in high risk to break secondary gpu resume and reset just because 
> > you clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. 
> > And the atom_bios init will be skipped.
> >
> > We shall understand any libgv fixes very well before "copy" it to 
> > bare-metal. Libgv don't need to take care S3.
> >
> > Regards,
> > Hawking
> > -Original Message-
> > From: amd-gfx  On Behalf Of 
> > Quan, Evan
> > Sent: 2019年12月6日 13:27
> > To: Yuan, Xiaojie ; Luo, Zhigang 
> > 
> > Cc: amd-gfx@lists.freedesktop.org
> > Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > Hi Xiaojie,
> >
> > This was reported by Zhigang team.  Under their special use case, scratch 
> > register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> > And considering old asics(vega20/10) also applied this change.
> > So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> > the new ASICs also.
> >
> > Regards,
> > Evan
> > > -Original Message-
> > > From: Yuan, Xiaojie 
> > > Sent: Friday, December 6, 2019 12:20 PM
> > > To: Quan, Evan 
> > > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > > 
> > > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on 
> > > baco exit
> > >
> > > Hi Evan,
> > >
> > > Just out of curiosity, may I know what issue are you trying to fix?
> > > I used to see vbios post failure (hangs in atombios init table) 
> > > after baco exit occasionally on navi.
> > >
> > > BR,
> > > Xiaojie
> > >
> > > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > > >
> > > > This is needed for coming asic init on performing gpu reset.
> > > >
> > > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > > Signed-off-by: Evan Quan 
> > > > ---
> > > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > > 1 file changed, 6 insertions(+)
> > > >
> > > > diff --

Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Alex Deucher
On Fri, Dec 6, 2019 at 10:37 AM Luo, Zhigang  wrote:
>
> [AMD Official Use Only - Internal Distribution Only]
>
> Can someone tell me what's BIOS_SCRATCH_6 used for? I know BIOS_SCRATCH_7 is 
> used for asic init.

ATOM_S6_CRITICAL_STATE and ATOM_S6_ACC_MODE.  See the other S6 defines
in atombios.h.  I think it's mainly for display.

Alex

>
> Thanks,
> Zhigang
>
> -Original Message-
> From: Zhang, Hawking 
> Sent: December 6, 2019 9:22 AM
> To: Alex Deucher 
> Cc: Quan, Evan ; Yuan, Xiaojie ; 
> Luo, Zhigang ; amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
>
> Ah yes, I made a logical mistake. This should work.
>
> Regards,
> Hawking
> -Original Message-
> From: Alex Deucher 
> Sent: 2019年12月6日 22:01
> To: Zhang, Hawking 
> Cc: Quan, Evan ; Yuan, Xiaojie ; 
> Luo, Zhigang ; amd-gfx@lists.freedesktop.org
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
>
> On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
> >
> > Correct my typo
> >
> > This is in high risk to break gpu resume and reset just because you clear 
> > the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> > atom_bios init will be skipped.
> >
>
> I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, 
> we'll assume the card needs to be posted, which it probably should after 
> BACO.  This may even be what makes this patch a fix.
>
> Alex
>
> > Regards,
> > Hawking
> > -Original Message-
> > From: amd-gfx  On Behalf Of
> > Zhang, Hawking
> > Sent: 2019年12月6日 16:07
> > To: Quan, Evan ; Yuan, Xiaojie
> > ; Luo, Zhigang 
> > Cc: amd-gfx@lists.freedesktop.org
> > Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco
> > exit
> >
> > This is in high risk to break secondary gpu resume and reset just because 
> > you clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. 
> > And the atom_bios init will be skipped.
> >
> > We shall understand any libgv fixes very well before "copy" it to 
> > bare-metal. Libgv don't need to take care S3.
> >
> > Regards,
> > Hawking
> > -Original Message-
> > From: amd-gfx  On Behalf Of
> > Quan, Evan
> > Sent: 2019年12月6日 13:27
> > To: Yuan, Xiaojie ; Luo, Zhigang
> > 
> > Cc: amd-gfx@lists.freedesktop.org
> > Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco
> > exit
> >
> > Hi Xiaojie,
> >
> > This was reported by Zhigang team.  Under their special use case, scratch 
> > register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> > And considering old asics(vega20/10) also applied this change.
> > So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> > the new ASICs also.
> >
> > Regards,
> > Evan
> > > -Original Message-
> > > From: Yuan, Xiaojie 
> > > Sent: Friday, December 6, 2019 12:20 PM
> > > To: Quan, Evan 
> > > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang
> > > 
> > > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco
> > > exit
> > >
> > > Hi Evan,
> > >
> > > Just out of curiosity, may I know what issue are you trying to fix?
> > > I used to see vbios post failure (hangs in atombios init table)
> > > after baco exit occasionally on navi.
> > >
> > > BR,
> > > Xiaojie
> > >
> > > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > > >
> > > > This is needed for coming asic init on performing gpu reset.
> > > >
> > > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > > Signed-off-by: Evan Quan 
> > > > ---
> > > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > > 1 file changed, 6 insertions(+)
> > > >
> > > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > > index 39ec06aee809..ab809df7bc35 100644
> > > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > > smu_context *smu, enum smu_baco_state state)
> > > >}
> > > >} else {
> > > >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > > > +if (r

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Luo, Zhigang
[AMD Official Use Only - Internal Distribution Only]

Can someone tell me what's BIOS_SCRATCH_6 used for? I know BIOS_SCRATCH_7 is 
used for asic init.

Thanks,
Zhigang

-Original Message-
From: Zhang, Hawking  
Sent: December 6, 2019 9:22 AM
To: Alex Deucher 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

Ah yes, I made a logical mistake. This should work.

Regards,
Hawking
-Original Message-
From: Alex Deucher 
Sent: 2019年12月6日 22:01
To: Zhang, Hawking 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
>
> Correct my typo
>
> This is in high risk to break gpu resume and reset just because you clear the 
> ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> atom_bios init will be skipped.
>

I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, we'll 
assume the card needs to be posted, which it probably should after BACO.  This 
may even be what makes this patch a fix.

Alex

> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Zhang, Hawking
> Sent: 2019年12月6日 16:07
> To: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> This is in high risk to break secondary gpu resume and reset just because you 
> clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And 
> the atom_bios init will be skipped.
>
> We shall understand any libgv fixes very well before "copy" it to bare-metal. 
> Libgv don't need to take care S3.
>
> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Quan, Evan
> Sent: 2019年12月6日 13:27
> To: Yuan, Xiaojie ; Luo, Zhigang 
> 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> Hi Xiaojie,
>
> This was reported by Zhigang team.  Under their special use case, scratch 
> register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> And considering old asics(vega20/10) also applied this change.
> So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> the new ASICs also.
>
> Regards,
> Evan
> > -Original Message-
> > From: Yuan, Xiaojie 
> > Sent: Friday, December 6, 2019 12:20 PM
> > To: Quan, Evan 
> > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > 
> > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > Hi Evan,
> >
> > Just out of curiosity, may I know what issue are you trying to fix?
> > I used to see vbios post failure (hangs in atombios init table) 
> > after baco exit occasionally on navi.
> >
> > BR,
> > Xiaojie
> >
> > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > >
> > > This is needed for coming asic init on performing gpu reset.
> > >
> > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > Signed-off-by: Evan Quan 
> > > ---
> > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > index 39ec06aee809..ab809df7bc35 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > smu_context *smu, enum smu_baco_state state)
> > >}
> > >} else {
> > >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > > +if (ret)
> > > +goto out;
> > > +
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > > +
> > >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> > >BIF_DOORBELL_INT_CNTL,
> > >DOORBELL_INTERRUPT_DISABLE, 0);
> > > --
> > > 2.24.0
> > >
> > > ___
> > > amd-gfx mailing list
> > > amd-gfx@lists.freedesktop.org
> > >
> > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fli
> > st
> > s.free
> > desktop

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Zhang, Hawking
Ah yes, I made a logical mistake. This should work.

Regards,
Hawking
-Original Message-
From: Alex Deucher  
Sent: 2019年12月6日 22:01
To: Zhang, Hawking 
Cc: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang ; amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
>
> Correct my typo
>
> This is in high risk to break gpu resume and reset just because you clear the 
> ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> atom_bios init will be skipped.
>

I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is cleared, we'll 
assume the card needs to be posted, which it probably should after BACO.  This 
may even be what makes this patch a fix.

Alex

> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Zhang, Hawking
> Sent: 2019年12月6日 16:07
> To: Quan, Evan ; Yuan, Xiaojie 
> ; Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> This is in high risk to break secondary gpu resume and reset just because you 
> clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And 
> the atom_bios init will be skipped.
>
> We shall understand any libgv fixes very well before "copy" it to bare-metal. 
> Libgv don't need to take care S3.
>
> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of 
> Quan, Evan
> Sent: 2019年12月6日 13:27
> To: Yuan, Xiaojie ; Luo, Zhigang 
> 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
>
> Hi Xiaojie,
>
> This was reported by Zhigang team.  Under their special use case, scratch 
> register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> And considering old asics(vega20/10) also applied this change.
> So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> the new ASICs also.
>
> Regards,
> Evan
> > -Original Message-
> > From: Yuan, Xiaojie 
> > Sent: Friday, December 6, 2019 12:20 PM
> > To: Quan, Evan 
> > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > 
> > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> > exit
> >
> > Hi Evan,
> >
> > Just out of curiosity, may I know what issue are you trying to fix?
> > I used to see vbios post failure (hangs in atombios init table) 
> > after baco exit occasionally on navi.
> >
> > BR,
> > Xiaojie
> >
> > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > >
> > > This is needed for coming asic init on performing gpu reset.
> > >
> > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > Signed-off-by: Evan Quan 
> > > ---
> > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > index 39ec06aee809..ab809df7bc35 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > smu_context *smu, enum smu_baco_state state)
> > >}
> > >} else {
> > >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > > +if (ret)
> > > +goto out;
> > > +
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > > +
> > >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> > >BIF_DOORBELL_INT_CNTL,
> > >DOORBELL_INTERRUPT_DISABLE, 0);
> > > --
> > > 2.24.0
> > >
> > > ___
> > > amd-gfx mailing list
> > > amd-gfx@lists.freedesktop.org
> > >
> > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fli
> > st
> > s.free
> > desktop.org%2Fmailman%2Flistinfo%2Famd-
> > gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd
> > 00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637
> > 112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk
> > 4o%3Dreserved=0
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://nam11.safelinks.protection.outlook

Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Alex Deucher
On Fri, Dec 6, 2019 at 3:14 AM Zhang, Hawking  wrote:
>
> Correct my typo
>
> This is in high risk to break gpu resume and reset just because you clear the 
> ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
> atom_bios init will be skipped.
>

I think we should be ok.  If ATOM_S7_ASIC_INIT_COMPLETE_MASK is
cleared, we'll assume the card needs to be posted, which it probably
should after BACO.  This may even be what makes this patch a fix.

Alex

> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of Zhang, 
> Hawking
> Sent: 2019年12月6日 16:07
> To: Quan, Evan ; Yuan, Xiaojie ; 
> Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
>
> This is in high risk to break secondary gpu resume and reset just because you 
> clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And 
> the atom_bios init will be skipped.
>
> We shall understand any libgv fixes very well before "copy" it to bare-metal. 
> Libgv don't need to take care S3.
>
> Regards,
> Hawking
> -Original Message-
> From: amd-gfx  On Behalf Of Quan, Evan
> Sent: 2019年12月6日 13:27
> To: Yuan, Xiaojie ; Luo, Zhigang 
> Cc: amd-gfx@lists.freedesktop.org
> Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
>
> Hi Xiaojie,
>
> This was reported by Zhigang team.  Under their special use case, scratch 
> register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
> And considering old asics(vega20/10) also applied this change.
> So, I think it's reasonable(and recommend by SMU fw team) to apply this on 
> the new ASICs also.
>
> Regards,
> Evan
> > -Original Message-
> > From: Yuan, Xiaojie 
> > Sent: Friday, December 6, 2019 12:20 PM
> > To: Quan, Evan 
> > Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> > Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco
> > exit
> >
> > Hi Evan,
> >
> > Just out of curiosity, may I know what issue are you trying to fix?
> > I used to see vbios post failure (hangs in atombios init table) after
> > baco exit occasionally on navi.
> >
> > BR,
> > Xiaojie
> >
> > > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> > >
> > > This is needed for coming asic init on performing gpu reset.
> > >
> > > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > > Signed-off-by: Evan Quan 
> > > ---
> > > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > index 39ec06aee809..ab809df7bc35 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> > smu_context *smu, enum smu_baco_state state)
> > >}
> > >} else {
> > >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > > +if (ret)
> > > +goto out;
> > > +
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > > +
> > >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> > >BIF_DOORBELL_INT_CNTL,
> > >DOORBELL_INTERRUPT_DISABLE, 0);
> > > --
> > > 2.24.0
> > >
> > > ___
> > > amd-gfx mailing list
> > > amd-gfx@lists.freedesktop.org
> > >
> > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist
> > s.free
> > desktop.org%2Fmailman%2Flistinfo%2Famd-
> > gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd
> > 00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637
> > 112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk
> > 4o%3Dreserved=0
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfxdata=02%7C01%7Chawking.zhang%40amd.com%7Cb57687a1142a499ce9bb08d77a235786%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637112164527793226sdata=VnfAQDikahlBNsvaGwbFHWTcYonmo9q4tWVRuTw9wHk%3Dreserved=0
> ___
> amd-gfx mailing l

Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Alex Deucher
On Thu, Dec 5, 2019 at 10:36 PM Evan Quan  wrote:
>
> This is needed for coming asic init on performing gpu reset.
>
> Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> Signed-off-by: Evan Quan 
> ---
>  drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
>  1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c 
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> index 39ec06aee809..ab809df7bc35 100644
> --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct smu_context *smu, 
> enum smu_baco_state state)
> }
> } else {
> ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> +   if (ret)
> +   goto out;
> +
> +   WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> +   WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);

Please use:
WREG32(adev->bios_scratch_reg_offset + 6, 0);
WREG32(adev->bios_scratch_reg_offset + 7, 0);
So we don't have to worry about asic specific scratch register offsets.

> +
> bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> BIF_DOORBELL_INT_CNTL,
> DOORBELL_INTERRUPT_DISABLE, 
> 0);
> --
> 2.24.0
>
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Zhang, Hawking
Correct my typo

This is in high risk to break gpu resume and reset just because you clear the 
ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the atom_bios 
init will be skipped.

Regards,
Hawking
-Original Message-
From: amd-gfx  On Behalf Of Zhang, 
Hawking
Sent: 2019年12月6日 16:07
To: Quan, Evan ; Yuan, Xiaojie ; Luo, 
Zhigang 
Cc: amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

This is in high risk to break secondary gpu resume and reset just because you 
clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
atom_bios init will be skipped.

We shall understand any libgv fixes very well before "copy" it to bare-metal. 
Libgv don't need to take care S3.

Regards,
Hawking
-Original Message-
From: amd-gfx  On Behalf Of Quan, Evan
Sent: 2019年12月6日 13:27
To: Yuan, Xiaojie ; Luo, Zhigang 
Cc: amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

Hi Xiaojie,

This was reported by Zhigang team.  Under their special use case, scratch 
register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
And considering old asics(vega20/10) also applied this change.
So, I think it's reasonable(and recommend by SMU fw team) to apply this on the 
new ASICs also.

Regards,
Evan
> -Original Message-
> From: Yuan, Xiaojie 
> Sent: Friday, December 6, 2019 12:20 PM
> To: Quan, Evan 
> Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
> 
> Hi Evan,
> 
> Just out of curiosity, may I know what issue are you trying to fix?
> I used to see vbios post failure (hangs in atombios init table) after 
> baco exit occasionally on navi.
> 
> BR,
> Xiaojie
> 
> > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> >
> > This is needed for coming asic init on performing gpu reset.
> >
> > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > Signed-off-by: Evan Quan 
> > ---
> > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > index 39ec06aee809..ab809df7bc35 100644
> > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> smu_context *smu, enum smu_baco_state state)
> >}
> >} else {
> >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > +if (ret)
> > +goto out;
> > +
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > +
> >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> >BIF_DOORBELL_INT_CNTL,
> >DOORBELL_INTERRUPT_DISABLE, 0);
> > --
> > 2.24.0
> >
> > ___
> > amd-gfx mailing list
> > amd-gfx@lists.freedesktop.org
> >
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist
> s.free
> desktop.org%2Fmailman%2Flistinfo%2Famd-
> gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd
> 00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637
> 112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk
> 4o%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfxdata=02%7C01%7Chawking.zhang%40amd.com%7Cb57687a1142a499ce9bb08d77a235786%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637112164527793226sdata=VnfAQDikahlBNsvaGwbFHWTcYonmo9q4tWVRuTw9wHk%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfxdata=02%7C01%7Chawking.zhang%40amd.com%7Cb57687a1142a499ce9bb08d77a235786%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637112164527793226sdata=VnfAQDikahlBNsvaGwbFHWTcYonmo9q4tWVRuTw9wHk%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-06 Thread Zhang, Hawking
This is in high risk to break secondary gpu resume and reset just because you 
clear the ATOM_S7_ASIC_INIT_COMPLETE_MASK field in scratch register 7. And the 
atom_bios init will be skipped.

We shall understand any libgv fixes very well before "copy" it to bare-metal. 
Libgv don't need to take care S3.

Regards,
Hawking
-Original Message-
From: amd-gfx  On Behalf Of Quan, Evan
Sent: 2019年12月6日 13:27
To: Yuan, Xiaojie ; Luo, Zhigang 
Cc: amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

Hi Xiaojie,

This was reported by Zhigang team.  Under their special use case, scratch 
register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
And considering old asics(vega20/10) also applied this change.
So, I think it's reasonable(and recommend by SMU fw team) to apply this on the 
new ASICs also.

Regards,
Evan
> -Original Message-
> From: Yuan, Xiaojie 
> Sent: Friday, December 6, 2019 12:20 PM
> To: Quan, Evan 
> Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco 
> exit
> 
> Hi Evan,
> 
> Just out of curiosity, may I know what issue are you trying to fix?
> I used to see vbios post failure (hangs in atombios init table) after 
> baco exit occasionally on navi.
> 
> BR,
> Xiaojie
> 
> > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> >
> > This is needed for coming asic init on performing gpu reset.
> >
> > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > Signed-off-by: Evan Quan 
> > ---
> > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > index 39ec06aee809..ab809df7bc35 100644
> > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> smu_context *smu, enum smu_baco_state state)
> >}
> >} else {
> >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > +if (ret)
> > +goto out;
> > +
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > +
> >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> >BIF_DOORBELL_INT_CNTL,
> >DOORBELL_INTERRUPT_DISABLE, 0);
> > --
> > 2.24.0
> >
> > ___
> > amd-gfx mailing list
> > amd-gfx@lists.freedesktop.org
> >
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist
> s.free
> desktop.org%2Fmailman%2Flistinfo%2Famd-
> gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd
> 00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637
> 112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk
> 4o%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfxdata=02%7C01%7Chawking.zhang%40amd.com%7C5b9b008a08674b9adf4608d77a0cf73f%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637112068506058460sdata=MAu4Lqac9Ta0HWGKUpnr6BDrqHNwlfljaDTiUIuooro%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

RE: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-05 Thread Quan, Evan
Hi Xiaojie,

This was reported by Zhigang team.  Under their special use case, scratch 
register 7 has be to 0 to perform asic init(@Luo, Zhigang right?).
And considering old asics(vega20/10) also applied this change.
So, I think it's reasonable(and recommend by SMU fw team) to apply this on the 
new ASICs also.

Regards,
Evan
> -Original Message-
> From: Yuan, Xiaojie 
> Sent: Friday, December 6, 2019 12:20 PM
> To: Quan, Evan 
> Cc: amd-gfx@lists.freedesktop.org; Luo, Zhigang 
> Subject: Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit
> 
> Hi Evan,
> 
> Just out of curiosity, may I know what issue are you trying to fix?
> I used to see vbios post failure (hangs in atombios init table) after baco 
> exit
> occasionally on navi.
> 
> BR,
> Xiaojie
> 
> > On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> >
> > This is needed for coming asic init on performing gpu reset.
> >
> > Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> > Signed-off-by: Evan Quan 
> > ---
> > drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > index 39ec06aee809..ab809df7bc35 100644
> > --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> > @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct
> smu_context *smu, enum smu_baco_state state)
> >}
> >} else {
> >ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> > +if (ret)
> > +goto out;
> > +
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> > +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> > +
> >bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
> >BIF_DOORBELL_INT_CNTL,
> >DOORBELL_INTERRUPT_DISABLE, 0);
> > --
> > 2.24.0
> >
> > ___
> > amd-gfx mailing list
> > amd-gfx@lists.freedesktop.org
> >
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.free
> desktop.org%2Fmailman%2Flistinfo%2Famd-
> gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd
> 00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637
> 112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk
> 4o%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Re: [PATCH] drm/amd/powerplay: clear VBIOS scratchs on baco exit

2019-12-05 Thread Yuan, Xiaojie
Hi Evan,

Just out of curiosity, may I know what issue are you trying to fix?
I used to see vbios post failure (hangs in atombios init table) after baco exit 
occasionally on navi.

BR,
Xiaojie

> On Dec 6, 2019, at 11:37 AM, Evan Quan  wrote:
> 
> This is needed for coming asic init on performing gpu reset.
> 
> Change-Id: If3671a24d239e3d288665fadaa2c40c87d5da40b
> Signed-off-by: Evan Quan 
> ---
> drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 6 ++
> 1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c 
> b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> index 39ec06aee809..ab809df7bc35 100644
> --- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c
> @@ -1659,6 +1659,12 @@ int smu_v11_0_baco_set_state(struct smu_context *smu, 
> enum smu_baco_state state)
>}
>} else {
>ret = smu_send_smc_msg(smu, SMU_MSG_ExitBaco);
> +if (ret)
> +goto out;
> +
> +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_6, 0);
> +WREG32_SOC15(NBIO, 0, mmBIOS_SCRATCH_7, 0);
> +
>bif_doorbell_intr_cntl = REG_SET_FIELD(bif_doorbell_intr_cntl,
>BIF_DOORBELL_INT_CNTL,
>DOORBELL_INTERRUPT_DISABLE, 0);
> -- 
> 2.24.0
> 
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfxdata=02%7C01%7CXiaojie.Yuan%40amd.com%7C682c142ef30748bbd00508d779fd6f82%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637112002208927733sdata=bajaaj3Cw2IxW5nRucg3FXUjcyIi50kCSPQ7eknqk4o%3Dreserved=0
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx