Re: [PATCH] drm/radeon: Always call radeon_suspend_kms() in radeon_pci_shutdown()

From: Alex Deucher
Date: Mon Jun 07 2021 - 09:43:05 EST


On Mon, Jun 7, 2021 at 8:30 AM Christian König <christian.koenig@xxxxxxx> wrote:
>
> Am 07.06.21 um 14:27 schrieb Tiezhu Yang:
> > radeon_suspend_kms() puts the hw in the suspend state (all asics),
> > it should always call radeon_suspend_kms() in radeon_pci_shutdown(),
> > this is a normal cleanup process to avoid more operations on radeon,
> > just remove #ifdef CONFIG_PPC64 and the related comments.
>
> Well NAK.
>
> Alex knows more about the details but suspending should not be part of
> the pci shotdown process at all.
>
> We just add that here to enforce a GPU reset on PPC64 boards for some
> reason.

Everything in the comment still applies.

Alex

>
> Regards,
> Christian.
>
> >
> > Co-developed-by: Jianmin Lv <lvjianmin@xxxxxxxxxxx>
> > Signed-off-by: Jianmin Lv <lvjianmin@xxxxxxxxxxx>
> > Signed-off-by: Tiezhu Yang <yangtiezhu@xxxxxxxxxxx>
> > ---
> > drivers/gpu/drm/radeon/radeon_drv.c | 9 ---------
> > 1 file changed, 9 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
> > index efeb115..0b1f43d 100644
> > --- a/drivers/gpu/drm/radeon/radeon_drv.c
> > +++ b/drivers/gpu/drm/radeon/radeon_drv.c
> > @@ -386,16 +386,7 @@ radeon_pci_shutdown(struct pci_dev *pdev)
> > if (radeon_device_is_virtual())
> > radeon_pci_remove(pdev);
> >
> > -#ifdef CONFIG_PPC64
> > - /*
> > - * Some adapters need to be suspended before a
> > - * shutdown occurs in order to prevent an error
> > - * during kexec.
> > - * Make this power specific becauase it breaks
> > - * some non-power boards.
> > - */
> > radeon_suspend_kms(pci_get_drvdata(pdev), true, true, false);
> > -#endif
> > }
> >
> > static int radeon_pmops_suspend(struct device *dev)
>