Re: [PATCH] drm/amdgpu: don't use BACO for reset in S3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Apr 1, 2022 at 7:53 AM Lazar, Lijo <lijo.lazar@xxxxxxx> wrote:
>
>
>
> On 3/31/2022 8:26 PM, Alex Deucher wrote:
> > Seems to cause a reboots or hangs on some systems.
> >
> > Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1924
> > Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1953
> > Fixes: daf8de0874ab5b ("drm/amdgpu: always reset the asic in suspend (v2)")
> > Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
> > ---
> >   drivers/gpu/drm/amd/pm/amdgpu_dpm.c | 3 +++
> >   1 file changed, 3 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/amd/pm/amdgpu_dpm.c b/drivers/gpu/drm/amd/pm/amdgpu_dpm.c
> > index c73fb73e9628..1ff6c42fb110 100644
> > --- a/drivers/gpu/drm/amd/pm/amdgpu_dpm.c
> > +++ b/drivers/gpu/drm/amd/pm/amdgpu_dpm.c
> > @@ -173,6 +173,9 @@ bool amdgpu_dpm_is_baco_supported(struct amdgpu_device *adev)
> >
> >       if (!pp_funcs || !pp_funcs->get_asic_baco_capability)
> >               return false;
> > +     /* don't use baco for reset in S3 */
> > +     if (adev->in_s3)
> > +             return false;
> >
>
> Suggest to add && !adev->runpm to the workaround.  For runpm supported
> devices, most likely it should work.

hmm.  I've kind of gone back and forth with this.  BACO works fine for
runtime suspend on all of the GPUs that reported problems in the bugs.
I think it's probably something timing related with the state of the
system during suspend.  Actually, thinking about it more, I think it
may be related to the fact that BACO also controls the power to other
devices on the GPU (e.g., audio or USB).  For runtime suspend, that is
handled via device dependencies, but at system suspend time, perhaps
the BACO sequence causes havoc with the other devices.

Alex

>
> Thanks,
> Lijo
>
> >       mutex_lock(&adev->pm.mutex);
> >
> >



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux